• 12236
  • 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
897

Загрузка...
Loading...

Комментарии

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

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

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

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

Казком берет комиссии за оплаты по карте. Почему на это закрывают глаза Visa и MasterCard?!

Казком берет комиссии за оплаты по карте. Почему на это закрывают глаза Visa и MasterCard?!

Покупаешь в супермаркете продукты на 5000 тенге и банк забирает себе еще 30-50 тенге. То есть, продукты обошлись уже не в 5000, а в 5050 тенге.
ValentinaVladimirska
25 мая 2017 / 22:56
  • 11314
  • 24
Узаконенное варварство в стране, принимающей «EPXO». Еще далеко нам до «топ-30 развитых стран»

Узаконенное варварство в стране, принимающей «EPXO». Еще далеко нам до «топ-30 развитых стран»

В продвинутых государствах едва ли поймут, почему в столь развитом, успешном и преуспевающем Казахстане от имени и по заданию властей творятся такие зверства над животными.
openqazaqstan
24 мая 2017 / 12:12
  • 10407
  • 102
Поддержим пенсией жиреющие банки! На что казахстанцам разрешат досрочно тратить свои накопления в ЕНПФ

Поддержим пенсией жиреющие банки! На что казахстанцам разрешат досрочно тратить свои накопления в ЕНПФ

Со стороны ЕНПФ в очередной раз прозвучало крайне неоднозначное заявление, от которого, на наш взгляд, лучше было бы воздержаться.
openqazaqstan
23 мая 2017 / 11:08
  • 9516
  • 32
Вырубка деревьев в Алматы под БРТ. Проект уже нанес городу экологический ущерб

Вырубка деревьев в Алматы под БРТ. Проект уже нанес городу экологический ущерб

Как ранее уже сообщалось из-за строительства БРТ в Алматы пострадают значительное количество деревьев. На прошлой неделе вырублены первые вязы и клён, - под расширение проезжей части на улице...
SKYFALL
24 мая 2017 / 17:20
  • 8056
  • 12
Системная коррупция стала главной угрозой для Казахстана. У нас воруют миллиардами

Системная коррупция стала главной угрозой для Казахстана. У нас воруют миллиардами

Коррупционные отношения вышли на такой уровень, что они уже начинают дискредитировать всю систему управления.
openqazaqstan
вчера / 13:45
  • 7274
  • 32
Что бы ни сделал пешеход – все равно водитель сядет

Что бы ни сделал пешеход – все равно водитель сядет

Вопрос о равной ответственности водителя и пешехода при наезде на последних, только-только начинают обдумывать в высоких кабинетах. Но, пока государственные головы думают, водители продолжают...
Mirogloff
22 мая 2017 / 23:29
  • 4972
  • 32
Пока полицейские будут прощать, им будут бить и по чести, и по лицу

Пока полицейские будут прощать, им будут бить и по чести, и по лицу

Судья Алмалинского районного суда Куаныш Арипов ломает стереотипы отношения граждан к представителям Фемиды. Напавшему на полицейского экс-сотруднику алматинского акимата он назначил наказание выше...
Mirogloff
24 мая 2017 / 16:41
  • 3701
  • 9
Да-да, я знаю, пора выходить замуж. Есть ли у меня еще время и, пожалуйста, уточните сколько?

Да-да, я знаю, пора выходить замуж. Есть ли у меня еще время и, пожалуйста, уточните сколько?

Итак давайте сразу начистоту. Мне 29. Не замужем, никогда не была, детей нет. В душе я совсем не чувствую этот возраст. Каждый раз когда задумываюсь об этом больше чем на 3 минуты, меня накрывает...
user2017
23 мая 2017 / 10:57
Аблязов загробным голосом декларирует «ДВК-2». Монолог обиженного человека

Аблязов загробным голосом декларирует «ДВК-2». Монолог обиженного человека

Последний монолог Аблязова о «продолжении борьбы с режимом» и «ДВК-2», при всём желании, не выглядел как какой-то политический манифест.
openqazaqstan
25 мая 2017 / 13:53
  • 2975
  • 62