Я отсносительно недавно занялся программированием (изучаю js). И у меня вошло в привычку, что когда я практикуюсь, делаю какие-то маленькие веб-приложения типа To-Do, я объявляю переменные в начале кода. Но сейчас прочитал что это просто ужасная привычка. Как вы считаете, так ли это?
Noizefan, я присоединюсь
Время жизни переменной должно быть как можно меньше иначе нарушается инкапсуляция. Если вы ее объявляете где то наверху листинга а используете глубоко внизу то вы увеличиваете ее время жизни, а это плохо так как ведет к лапшекоду.
для динамических языков это вообще не играет роли: хотите объявляете, хотите нет; никакого противоречия в этом нет, дело просто привычки и собственного представления о прекрасном.
в статических языках ситуация другая.
другими словами: для жс – это вообще не принципиально.
потому что есть языки с ручным управлением памятью.
Если у вас не простыня кода, где в середине вы получаете память под гигабайтовые массивы, да еще делаете это в цикле - совершенно не критично когда будет происходить распределение и освобождение памяти.
abmanimenja, не критично. но какое это имеет отношению к вопросу?
существует такое понятие как "принцип наименьшей неожиданности", согласно этому принципу описание переменных ожидается в начале кода, а не размазанным по всему коду.
вы, конечно же, можете придерживаться иных взглядов. но это нужно объяснять собственным ответом автору вопроса, а не у меня в комментариях.
Нормальная практика - совмещать инициализацию и объявление переменных. Как минимум код читается лучше. Вам не нужно помнить о том, какой переменной вы выполняете присваивание и не перезаписывает ли оно предыдущие данные.