• 11703
  • 9
  • 3
Нравится блог?
Подписывайтесь!

Императивное vs Функциональное программирование. Идеологические различия

Выложил тут давеча примерчик функционального программирования: http://hawabawa.yvision.kz/blog/182580.html и в ответ , хороший человек;-), задал вопрос: удобно ли поддерживать такие проекты?

Имхо: ДА. постараюсь объяснить почему.

Для начала давайте вспомним как пишутся программы сейчас? Императивным путем, т.е. путем инструкций или путем отдачи приказов, например:

  • создать строку с именем str;
  • записать туда текст: "Привет Мир!";
  • создать lable, для отображения текста;
  • показать пользователю текст из строки str в lable;

ну примерно так как то выглядит, верно? т.е. мы фактически расписываем все действия, за счет чего вырастает объем кода, он занимает больше памяти, его трудно поддерживать. Если что то надо изменить надо искать и менять в нескольких местах, в больших проектах от 2000 строк кода, становится сложно отслеживать изменения и предотвращать ошибки.

Это Ад каждого программиста, с другой стороны наверно легко копипастерам))) VisualStudio все-таки молодец.

Сама этимология слова Императив. Возьмем корень слова, какие еще слова из него происходят? Самое очевидное: Империя, Император т.е. в самом слове заложена философия подчинения, приказов. т.е. наша обычная человеческая Идеология.

Вселенная\Мир, устроен'а иначе. Атомы, электроны, мельчайшие частички из которых потом создаются такие огромные, большие, объемные объекты, как: Галактики, Планеты, Человек в конце концов.

Представь что у тебя есть мельчайшие пиздюлины:

1,2,3,4,5,6,7,8,9,..... ----  У человека клетки? в коде на пример cast'ы всякие из\в тип\типы

Которые могут делать только одну хуйню. Все.

Со временем их становится дохуя и ты естественным образом захочешь их укрупнить:

20,        30,        40,        50,....

||           ||          ||          ||

1,2     3,4,5,6      7,8       9,.....

а потом еще укрупнить))) :

100            200

||        //     ||      \\

20,        30,        40,        50,....

||           ||          ||          ||

1,2     3,4,5,6      7,8       9,.....

Таким образом, ты создаешь нечто большое из мельчайших(элементарных), мелких, крупных частей. Если где то ошибка, ты изменяешь в 80% мелкие части, 20% крупные. Мельчайшие настолько тупые что если и ошибаются, то это значит ты лох, не фиг на монитор смотреть, сам не доглядел, косяк. Сегодня после отбоя, зайдешь ко мне.

НО это еще не все(((, для полного волшебства, каждая функция (немного выше я их опрометчиво обозвал пиздюлинами) возвращает объект который она изначально приняла в начале. что позволяет охуительно заюзать такую технологию как IntelliSense

Магическая точка :-) вот она: .

IntelliSense - это типа подсказка, создал что-то(тчк)выпадает меню что можно с этим что-то сделать и ты не паришься, выбираешь из списка)))

+ Наследование, каждая мелкая хуйня умеет все что умеют ее мельчайшие пиздюлины. каждая крупная хуйня умеет все то что умеет ее мелкие хуйнюшки и их мельчайшие пиздюлины. Хых, ну как то так. ГЫ:-)

Таким образом, получается что заместо того что бы писать 50 строк кода ты пишешь 1 строку:-)

ОДНАко, длинная строка получается сцуко.

Создаешь что-то и потом начинаешь его тюнить, настраивать, задавать параметры, форматировать, проверять, отлавливать ошибки, ну и наконец даешь последний пинок: пиздуй работай. Все.

Сравним:

Ты собираешь все хозяйство до кучи. http, sql, string, IO, xml, Auth и прочее. Правильно его создаешь, тюнишь построчно от 2-3 до 5-10 строк на каждую херь в хозяйстве. Из проекта в проект))) что бы сделать простую блять весчь. Показать юзарю табличку из БД или авторизовать его или забрать у него и складировать файлик и много еще для чего.

Или

Ты ебешся пол года - год и хуячишь эти милипиздрические пиздюлины, рефакторишь, выкидываешь 75% из того что было написано, за не надобностью и требованиями внутренней красоты. Дальше начинается Долина Наслаждений. Ты пишешь бизнес-логику, все просто и понятно, главное коротко! В одно предложение через точку. Сказал кому, что, как, где, когда делать и магический пинок. Все работает. Куришь бамбук, ну или чо ты там куришь;-)

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

Ну и наверное пока для второго подхода необходим более высокий уровень подготовки, хотя не факт. Обычным программистам такой стиль сносит башку на время)))

П.С. перечитал, ни чего не понимаю, про что это?

HawaBawa
6 августа 2011, 21:40
879

Загрузка...

Комментарии

Оставьте свой комментарий

Спасибо за открытие блога в Yvision.kz! Чтобы убедиться в отсутствии спама, все комментарии новых пользователей проходят премодерацию. Соблюдение правил нашей блог-платформы ускорит ваш переход в категорию надежных пользователей, не нуждающихся в премодерации. Обязательно прочтите наши правила по указанной ссылке: Правила

Также можно нажать Ctrl+Enter

Популярные посты

Я был удивлён, что в Азербайджане есть Казахский район

Я был удивлён, что в Азербайджане есть Казахский район

Мне как казаху по национальности очень хотелось туда попасть. Оказалось, что климат там намного суровей и люди, говорят, суровые и воинственные. Казах – город на западе Азербайджана...
alidimash
18 янв. 2017 / 21:50
  • 27964
  • 18
10 лучших районов Алматы. Широкие улочки, частные дома, летом – красота!

10 лучших районов Алматы. Широкие улочки, частные дома, летом – красота!

Названия улиц: Садовый бульвар, Солнечный проезд. Красиво звучит не так ли? Прям, как в Москве... Уютные улочки и радующие глаз одноэтажные домики, тихо и свободно, нет динамики, движух и ажиотажа.
gelberdeuet
16 янв. 2017 / 14:45
  • 8143
  • 98
Многочасовые очереди, смерти в ЦОНах: почему вопросы об этом ставят парламентариев в тупик?

Многочасовые очереди, смерти в ЦОНах: почему вопросы об этом ставят парламентариев в тупик?

Ожидали ли депутаты Мажилиса всего этого? Как планировали этот процесс регистрации, и обсуждали ли его, прежде чем одним нажатием кнопки принять нормы с такими абсурдными временными рамками?
openqazaqstan
17 янв. 2017 / 14:32
  • 4901
  • 22
Астана глазами алматинских девушек. Как при таких погодных условиях можно выжить?

Астана глазами алматинских девушек. Как при таких погодных условиях можно выжить?

В спальных районах, и в высотных домах сквозь стены слышно завывание ветра. В особенности ночью. Такие звуки, я слышала, пожалуй, только по телевизору, в фильмах про метель.
Naomi_K
вчера / 12:36
Сильное ДТП произошло в Алматы на Тимирязева-Байзакова

Сильное ДТП произошло в Алматы на Тимирязева-Байзакова

NoComment (c) Официальный слоган EuroNews. Катастрофа на алматинской утренней трассе началась с того, что водители «Ниссана» и микровена ожидали сигнала светофора на запад по Тимирязева...
ibestreporter
17 янв. 2017 / 22:52
  • 3736
  • 5
Вейпинг безопасен? Эндрю Холл из США тоже так считал, пока что-то не пошло не так

Вейпинг безопасен? Эндрю Холл из США тоже так считал, пока что-то не пошло не так

Эндрю Холл из США считал, что вейпинг безопасен и усиленно убеждал в этом близких. Но как-то раз что-то пошло не так. Это результат взрыва хипстерского устройства - выбило 7 зубов + ожоги и раны...
Maxambet
17 янв. 2017 / 16:28
  • 3661
  • 50
Это поколение просрет страну. 20-летняя молодежь представляет из себя сказочных эльфов

Это поколение просрет страну. 20-летняя молодежь представляет из себя сказочных эльфов

Смотря в очередные пустые глаза вчерашнего студента, приходящего устраиваться на первую работу страшно становится. Потому что сравниваю с теми же китайскими студентами, которые готовы выгрызать себе мечту.
mbaitykov
18 янв. 2017 / 11:34
  • 3845
  • 99
Становится хуже, но как-то постепенно. Беднеем, но тоже как-то не разом

Становится хуже, но как-то постепенно. Беднеем, но тоже как-то не разом

Помню, когда я уезжал и Казахстана, тут было довольно прилично, даже не смотря на то, что жить было невыносимо. Но прилично так. Мусора было меньше. Дороги чистили, вони почти не было. Да и в остальном тоже норм.
shootnix
18 янв. 2017 / 12:49
  • 3269
  • 34
Любимый Тайланд. Правящий король называет Паттайю «черным пятном на репутации страны»

Любимый Тайланд. Правящий король называет Паттайю «черным пятном на репутации страны»

Тайланд мы впервые посетили в декабре 2012 года. Полученные эмоции настолько были яркими, что в конце 2015 года мы решили еще разок слетать в Тайланд. Вспоминая Тай, первое о чем я думаю - горячий...
zhainar_d
17 янв. 2017 / 11:11
  • 3089
  • 24