Maksym Prokopov personal blog
Idea is a something worth sharing

О красоте кода

11.08.2017

Reading time: 1 min.

Когда программист программирует, он начинает разбивать код на модули только потому, что имеет ограничение в своем неокортексе на количество одновременных элементов в памяти. А я ведь когда-то писал на ассемблере, и легкой прогулкой это никак нельзя было назвать, в основном из-за простыней однообразного кода, в котором было легко потеряться.

Из этого ограничения появились концепции ООП. Но с ООП тоже беда. Увеличивается количество уровней абстракции. И тогда в большом проекте удержать всю идею в голове становится невозможно. Функционального подхода к разработке это тоже касается, но в меньшей мере. В Clojure, например, гораздо более выразительно и логично можно бить код на куски.

Для этого есть:

1. Конечно, функции.

2. Неймспейсы.

— —

3. Неймспейсы (читай файлы) легко и непринужденно раскладываются по каталогам.

Таким образом добиться стройности приложения можно ставя себе такие же ограничения как и у нашего неокортекса.

- Не более 7 строк на функцию.

- Не более 7 функций в неймспейсе (модуле).

- Не более 7 модулей в каталоге.

И это сделать легче, чем кажется. В какой-то момент это становится привычкой и второй натурой.

Кстати, если вы дочитали до этого места и вам все еще интересно узнать про Clojure, 2 сентября в Rails Reactor мы делаем Clojure Workshop https://paper.dropbox.com/doc/Kyiv-Clojure-Workshop-3-2.09.17-HLAuCpI8GjWHUtI9ScRy1 приходите.

А вот чем помочь ООП даже не знаю. Господь, жги :)