ленивость в джаве
Aug. 29th, 2011 09:50 pmНу типа ко мне в прошлой конторе приставали, если не сказать приябывались, чтобы я писал не в одну строчку 
а я не ценю этот момент, чтобы платили от количества строчек; ну не Маяковский.
Короче, на стаковерфлоу надыбал такой прикол:
where
Ну! Правда, мило?
Questions?
П.С.
Разъясниния.
В log4j и slf4j есть форматтер, но он берёт не больше двух параметров.
То, что я там map.size() засандалил, несущественно. Главная работа состояла бы с стрингификации map.
Тот факт, что isDebugEnabled() является методом, а не константой, важен: этот флаг зависит от конфигурации в log4j.xml.
log.debug(blablabla), a 
if (log.isDebugEnabled()) {
  log.debug(blablabla);
}
а я не ценю этот момент, чтобы платили от количества строчек; ну не Маяковский.
Короче, на стаковерфлоу надыбал такой прикол:
log.debug(format("Lookie, %d artefacts: %s", map.size(), map));
where
  public static format(final String format, final Object ... artefacts) {
    return new Object() {
      @Override public String toString() {
        return String.format(format, artefacts);
      }
    }
  }
Ну! Правда, мило?
Questions?
П.С.
Разъясниния.
В log4j и slf4j есть форматтер, но он берёт не больше двух параметров.
То, что я там map.size() засандалил, несущественно. Главная работа состояла бы с стрингификации map.
Тот факт, что isDebugEnabled() является методом, а не константой, важен: этот флаг зависит от конфигурации в log4j.xml.
![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)

