LINUX.ORG.RU

Паттерны.

 


3

3

Народ, откуда столько НЕНАВИСТИ к паттернам в программировании?

Пробежался тут по последним темам.

For example, in the OO world you hear a good deal about «patterns». I wonder if these patterns are not sometimes evidence of case (c), the human compiler, at work. When I see patterns in my programs, I consider it a sign of trouble. The shape of a program should reflect only the problem it needs to solve. Any other regularity in the code is a sign, to me at least, that I'm using abstractions that aren't powerful enough — often that I'm generating by hand the expansions of some macro that I need to write. — P. Graham

'Patterns mean «I have run out of language.»' — Rich Hickey

Ну и там хор подпевал, как обычно, и всё в таком духе. Вообще, сколько себя помню, на ЛОРе термин «паттерны проектирования» всегда был синонимом какого-то вселенского зла.

Но ведь если разобраться, то «паттерны» так или иначе присутствуют просто ВЕЗДЕ. В градостроительстве, архитектуре, механике, инженерии, электронике, транспорте, аэрокосмосе, музыке, спорте, кулинарии, литературе, поэзии, живописи, медицине, физике, математике, геологии, географии, добыче ископаемых, сельском хозяйстве, военном деле, государственном управлении, экономике, финансах, социологии, в людских взаимоотношениях, наконец! Человечество повсеместно использует стандартные подходы/сценарии/решения, проверенные годами. И к ним мы относимся совершенно нормально. Почему мы, например, услышав секвенцию II-V-I в «Лунной сонате», не говорим Бетховену: «Чувак, you've run out of harmony!» Почему, увидев четырёхстопный ямб у Пушкина, не предъявляем: «Чувак, да у тебя же a sign of trouble в стихах!»

Почему только будучи применёнными к программированию паттерны вызывают столь лютую ненависть?


Ответ на: комментарий от anonymous

Свои персональные определения можешь засунуть в свой персональный тухес.

Бревно тупое, ссылки и цитаты для кого приводили?!?

anonymous
()
Ответ на: комментарий от anonymous

А Мартин Фаулер считает, что паттерны.

А Мартин Фаулер не катит. Лисперы говорили именно про паттерны криминальной банды четырех. Фаулер уже позже примазался.

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

anonymous
()
Ответ на: комментарий от anonymous

Вырванные из контекста цитаты, приведенные гомосеком, который даже по-английски читать-то не умеет? Да кому они тут нужны? Тебя рылом в цитаты из других классиков в ответ ткнули.

anonymous
()

Тебе же чувак русс^W английским языком говорит, что паттерны - недостаток абстракции.

Вот пример.

Есть паттерн a+b. На брейнфаке мы вынуждены его использовать и писать

>>[-]<<[->+>+<<]>>[-<<+>>]
..для случая сложения соседних чисел, используя третье как промежуточную переменную.

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

anonymous
()
Ответ на: комментарий от anonymous

Быдло тупорылое, сейчас прочитал мое предыдущее сообщение, заткнулся, и чтобы мы тебя больше не слышали тут.

anonymous
()
Ответ на: комментарий от anonymous

Фаулер пишет про паттерны вообще. Банда четырех про OOD-паттерны в частности. У тебя, как и прочих лоботомированых, трудности с восприятием таксономий.

anonymous
()
Ответ на: комментарий от anonymous

А тебе, скотинышь, уже много раз объяснили, что к языкам в частности и кодированию вообще паттерны ПРОЕКТИРОВАНИЯ никакого отношения вообще не имеют.

anonymous
()
Ответ на: комментарий от anonymous

Фаулер пишет про паттерны вообще.

Твой Фаулер тут вообще не к месту, ты еще не понял?!? Мы обсуждаем высказывания лисперов.

anonymous
()
Ответ на: комментарий от fat_angel

Внезапно, мем «мем профорсен» тоже профорсен.

anonymous
()
Ответ на: комментарий от anonymous

Мы обсуждаем бред неинформированных полудурков. Для такого обсуждения не обязательно органичиваться теми источниками информации, которыми пользовались полудурки, когда изрыгали свои бредни.

anonymous
()
Ответ на: комментарий от anonymous

У тебя проблемы идентификации, умник. А на абстрактом уровне в паттернах конечно нет ничего плохого, только вот когда они реализованы в коде как «myCoolPattern x», а не «class ImplementMyCoolPatternForX { ..loadsOfCode.. }».

anonymous
()
Ответ на: комментарий от anonymous

Для такого обсуждения не обязательно органичиваться теми источниками информации, которыми пользовались полудурки, когда изрыгали свои бредни.

Але, полудурок, твой Фаулер в те времена еще сидел тихо и не высовывался. И под паттернами понимали именно паттерны банды.

anonymous
()

Сливы

Так-с, сегодня на повестке дня следующие сливы:

  • Ламерюге двачевскому позорному слив. И в Лиспе не разбирается, и по своей пацанской Объектной Организованной Преступности слил. Даже про громкие дела четырех ООП-авторитетов в лихие девяностые не слышал. Своди сертификаты-наколки.
  • Полудурку позорному тоже слив.
  • И балаболу слив, который обещал список литературы выложить и пропал.

Все сливы засчитаны.

anonymous достиг 90 уровня троллинга.

anonymous
()
Ответ на: комментарий от anonymous

Паттерны относятся только к языкам, проповедующим ООП религию. По определению.

Но вот ведь незадача, Common ЛNСП — это ведь объектно-ориентированный язык.

anonymous
()
Ответ на: комментарий от anonymous

CL - как и любой лисп - мультипарадигменный язык.

// another anonymous

anonymous
()
Ответ на: комментарий от anonymous

А, ну да, пацаны то и не знают, что их, так называемое ООП, на самом деле никакое не ООП, а всего лишь результат больной психики Страуса. Но ты сейчас начнешь кукарекать, что у тебя на районе все пацаны так говорят и «ничо». Давайте в рамках этой дискуссии будем называть угребище страусиным ООП.

anonymous
()
Ответ на: комментарий от anonymous

Ты быть хоть ссылки на сообщения давал.

А тебя кто конкретно интересует?

anonymous
()
Ответ на: комментарий от anonymous

Полудурок вон прямо рядом с тем сообщением валяется. Ламерюгу двачера вырубили на предыдущей странице, когда он определение хотел потихому подменить. Балабол обещал список литературы, но убежал куда-то. Смотри мое «В студию» на предыдущей странице.

anonymous
()
Ответ на: Сливы от anonymous

Кстати, народ, если кому интересно, то троллинг был полностью заранее спланирован. Посмотрите, как я быстро отвечал на все сообщения. Все козыри уже были на руках, а ходы примерно просчитаны. Все ссылки, определения и даты были уже заготовлены.

Правда я переоценил ламерюгу. Я думал он возьмет ссылки полудурка, но он тупо сослался на википедию, которая ссылалась на мое определение. :D Я так и планировал в одной из версий сначала убрать ламерюгу, а затем вынести главного босса полудурка.

Как конфетку у ребенка отобрать.

anonymous
()
Ответ на: комментарий от anonymous

Ты всех сделал, ура!

Итак, лисп — самый мощный из существовавших и существующих языков программирования! Он универсален, функционален и практичен! Сообщество лисперов — самое дружелюбное и адекватное! Лисперы не принимают наркотики и алкоголь и не ругаются матом! А вы все неосиляторы, у вас у всех баттхерт, баттхерт и баттхерт! На лиспе на самом деле написано полно софта, только вам, быдлу, его никто не покажет! Даже самый захудалый лиспер в 10 раз продуктивнее любого жабабыдлокодера, и зарабатывает в 10 раз больше!!!!1111

Тут лиспер очнулся. На столе стояла недоеденная тарелка борща, который давно остыл. Лиспер встал с дивана, отряхнул перхоть с немытой головы и сигаретный пепел с давно не стираных джинсов. Сев за стол, лиспер пододвинул к себе клавиатуру, вчерашние пятна спермы на которой уже успели засохнуть. Экран ожил, показав окошко Emacs со SLIME. Лиспер прикинул, чем он будет сегодня заниматься: писать свой диалект лиспа, свою LISP OS или же делать LISP-процессор на FPGA.

Ночка предстояла длинная.

anonymous
()
Ответ на: комментарий от anonymous

После драки кулаками не машут.

Да что ты, какое там махать! Я просто хочу поздравить лиспера-триумфатора, который уложил всех быдло-ООПшников одним мизинцем! Это — эпохальная победа в истории лиспа! Теперь главы Oracle, IBM и Microsoft торжественно сделают себе сеппуку, а рядовые быдлокодеры поступят по их примеру! Лисп будет шествовать победной поступью по планете, а тебе наконец дадут работу!

anonymous
()
Ответ на: комментарий от anonymous

Харкач

Это тот быдляник, откуда ты пришел? Детский сад, не интересно.

anonymous
()

Бывают такие люди, у них классификация вместо мозга. Ну, как литературоведы. Нормальный человек читает книжку, и ему доставляет (или не доставляет). А этот читает и про себя такой: «Тэк-с, автор вновь применил анаколуф - не слишком ли эрратично! А вот здесь он в одном предложении совместил анафору и амплификацию - изящно, чорт возьми! Но здесь явно злоупотреблено именительным темы и ретардацией.» Самое плохое, когда эти люди сами начинают писать, а то и других учить. Вот и с паттернами та же фигня.

kot_otbelivatel
()
Ответ на: комментарий от iZEN

Хороший архитектор оставляет след.

В связи с этим вспомнился некий легендарный файловый менеджер под ОС из семейства DOS и его клоны, которые писали, не стесняясь, свои половинки окон напрямую в видеопамять; хотя, конечно, там была альтернатива воспользоваться «лишним» архитектурным слоем в виде int 10h. В GNU/Linux же более-менее оптимальное соотношение слоёв: в них не тонет прикладная часть, но и недостатка нет, либы-интерфейсы к слоям есть почти на все случаи жизни. :-)

Infra_HDC ★★★★★
()
Ответ на: комментарий от kot_otbelivatel

Зачем сравнивать программирование с написанием книги? Программы пишут для того, чтобы что-то работало, а книги пишут для того, чтобы из читали.

forCe
()
Ответ на: комментарий от forCe

Глупость не становится мудростью из-за авторства.

Раз такой умный - пиши на брейнфаке. Создашь себе тоже каталог паттернов.

anonymous
()
Ответ на: комментарий от forCe

Программы пишут для того, чтобы что-то работало, а книги пишут для того, чтобы из читали.

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

А все это невозможно без того, чтобы программы читались.

anonymous
()
Ответ на: комментарий от anonymous

А все это невозможно без того, чтобы программы читались.

Именно так. Но не надо путать причину и следствие.

forCe
()
Ответ на: комментарий от forCe

Только это ведь не цель создания ПО=)

Был такой придурковатый студент, Линусом звали. Так же думал.

anonymous
()
30 ноября 2014 г.
Ответ на: комментарий от anonymous

Т.е. Martin Fowler - обыкновенный балабол?

Да.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.