Я думаю, это потому, что в Java нет такой «традиции».
Видите ли, в первой книге, которую я прочитал о Swift (язык программирования Swift 2.0 от Apple Inc.), говорится, что каждая создаваемая вами переменная, которая не изменяется, должна быть объявлена как константа let
.
Поскольку Swift Programming Language 2.0 (книга) является официальным руководством по Swift, почти все следят за ним. Даже если люди не читают эту книгу, они будут читать руководства, написанные людьми, которые читали эту книгу. В результате у всех такой стиль программирования.
Напротив, первая книга, которую я прочитал о Java (Programming with Java for Dummies), не подчеркивает, что мы должны использовать final
, если значение не изменится. И в официальных документах это тоже не редкость. Так что этому правилу следуют лишь немногие программисты. В результате большинство из них пишет код, который действительно следует этому правилу.
Кроме того, вы должны написать еще 5 символов (слово «final» плюс пробел), чтобы объявить константу в Java, тогда как в Swift вы не пишете никаких дополнительных символов (var и let имеют такое же количество символов) ! Программисты ленивы, понимаете.
person
Sweeper
schedule
01.07.2016
final
требуется до Java 8 для замыканий, но кроме этого используется редко. Я и Роберт Симмонс-младший выступаем за более широкое распространение. Основная причина в том, что он отфильтровывает некоторые глупые опечатки во время компиляции. Но поскольку это не влияет на время выполнения программы, в отличие отconst
в C ++, нет достаточно веских (для многих) аргументов в пользу лишнего набора текста и шума кода. - person Boris the Spider   schedule 01.07.2016@Override
- вероятно, должен быть обязательным и / или ключевым словом, но сейчас уже слишком поздно, язык уже отсутствует). - person Thilo   schedule 01.07.2016