Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
«не так крут» как специализированная программа
line.trim();
Компилятор Java в байт-код практически ничего не оптимизируетЕсть определённые исключения (которые, кстати, очень мешают). Например (классический пример), при компиляции подставляются значения публичных констант, описанных в других классах. В итоге может получиться такая ситуация, что ты константу переопределил, класс, в котором она описана, перекомпилировал (а остальные не стал), а в месте использования реальное значение осталось старое.
public class A {
public static final String SOME_CONSTANT = "1";
}import A;
public class B {
public static void main(String[] args) {
System.out.println("A.SOME_CONSTANT = " + A.SOME_CONSTANT);
}
}A.SOME_CONSTANT = 1public class A {
public static final String SOME_CONSTANT = "2";
}A.SOME_CONSTANT = 1 вместоA.SOME_CONSTANT = 2sonar:sonar (мы сделали именно так). Ну и опять же — история проекта с красивыми табличками и графиками, уведомления по почте, назначение замечаний на конкретных людей (можно заводить соответствующие задачи в issue tracker-ах) и т.д.
FindBugs против CDK