Показаны сообщения с ярлыком general programming. Показать все сообщения
Показаны сообщения с ярлыком general programming. Показать все сообщения

Effective Java: General Programming (2/2)


Item 51. Конкатенация строк медленна.
Конкатенация ("+") n строк выполняется за время n2 - следствие того, что строки в Java неизменяемы (immutable); когда соединяются две строки, содержимое обеих полностью копируется в новую. Поэтому если требуется объединить большое или заранее неизвестное количество строк, рекомендуется использовать StringBuilder (есть ещё StringBuffer, но он синхронизован, поэтому медленнее).

Effective Java: General Programming (1/2)

Эта глава книги Effective Java собрала более общие советы по написанию кода на Java (и не только). Параграфов довольно много, поэтому я разбил свой сжатый пересказ на две части.

Item 45. Минимизируйте область видимости локальных переменных.
Это улучшает читабельность кода и уменьшает число потенциальных ошибок.
Прежде всего, по возможности объявлять локальную переменную надо там, где она впервые используется. Далее, почти все объявления локальных переменных должны содержать инициализацию. Исключение - когда инициализацию нужно поместить в try/catch блок, а сама переменная нужна снаружи него.
Отдельно следует отметить циклы. Цикл for предоставляет возможность объявлять переменные цикла (loop variables) доступными только для тела самого цикла, что делает его более предпочтительным, нежели циклы while.