@motonarola@mr_asqd@maxlapshinдрузья, прошу прощение за несовсем понятное определение, просто я не знал как это донести по другому
вот смотрите, был Паскаль, статическая типизация, где кроме объявления переменной в коде, ее необходимо прописать в инициализации модуля, чтобы компилятор понял сколько ему нужно памяти, это очень часто забывал делать. В Delphi потом добавили возможность, если переменная не объявлена в инициализации, то система предлагает сама ее подставить, нашли вроде компромис но это напрягало меня почему-то..((
вот и сейчас иногда чтобы код выглядел читабильнее, переменные объявляются в начале модуля(файла), и им присваиваю какие-то значения, и мне кажется это желание вызвано тем, чтобы не потерять переменные в коде и сделать код хоть более-менее наглядным
Вот посмотрите на синтексис HTML и CSS, по сути, это ужастный синтаксис для человеческого восприятия, поэтому разработчики SASS начали выносить переменные CSS а не оставлять их внутри. Кстати в Си тоже есть переменные в начале ((, может поэтому мы увидели Rust
Почему привел в пример Руби, потому что разработчики этого языка понимали эту проблему, и там динамическая типизация позволяет в любом месте объявлять переменную, сохраняя при этом простоту и чистоту кода. Конечно объекто-ориентированная парадигма откладывает свой след, но как говорится был найдет компромисный вариант. Еще можно сказать что какой-нибудь нехороший разработчик переопределит переменную пару раз в коде, захотелось ему так, и это может из достоинства превратиться в недостаток, есть такое ((
а вот в функциональной парадигме такого нет, код пишется так как есть, бегать далеко не нужно, это просто и гениально одновременно
вообщем глобальные переменные и переменные вне модулей выходит зло..., где-то я уже об этом слышал....
Меня очень заинтересовала мысль, что синтаксически выделение переменных - это подсознательное желание вытекающее из-за трудночитаемости кода, его некрасивости
Наш мозг ленивая вещь, и когда он ленится, то подсказывать нам самые оптимальные решения, которые и выводят нас на уровень гениальности
с
@maxlapshin адсолютно согласен,
Ruby
- это язык одного фремворка, но ведь рельсы для быстрого протопирования действительно революционное решение, в чем и заслуга конечно
Ruby