← Timeline
Avatar
Eliyahu Duvidzon

Ну раз уж идёт про кодстайл.

Очень люблю когда в языках определить неизменяемую переменную столько же слов или меньше чем обычную. Например в современном яваскрипте есть const а есть let. А в расте вроде по дефолту указатели неизменяемые пока не добавишь слово mut.

Я к чему вообще? У меня в голове любая переменная на любом уровне по дефолту неизменяемая. А если изменяемая - докажи. Если она изменяется постоянное число раз, так может это на самом деле несколько переменных? Кстати переменные цикла я очень хотел бы тоже объявлять неизменяемыми в теле цикла. Проблема, что в java все эти final-ы на локальных параметрах и переменных всех бесят и занимают много места. А как бы я в с++ бы страдал, боюсь представить. То есть у меня были времена максимализма когда я в любом пулл реквесте добавлял финалы на всё в паре классов, но сейчас я всё же пришёл к идее, что это больше идея про дисциплину, а не про синтаксис. Но круто когда язык поддерживает правильные идеи, так что см. пункт первый.

To react or comment  View in Web Client
Comments (6)
Avatar

Вот тут совершенно согласен. А с переменными цикла в JS так: если это выборка из коллекции, то const, а если счётчик, то обязательно let. И понятно, почему, но раздражает.

Avatar

да, я не стал точно говорить, потому что не помню где как. я не помню в яве переменную из фора с дветочием нельзя зафайналить?

Avatar
Avatar
Avatar
Avatar
To react or comment  View in Web Client