Страница 1 из 1

Паттерны программирования

СообщениеДобавлено: 05 сен 2011, 05:34
Telnov

При разработке софта, встретившись с новой для вас задачей, не нужно сразу браться решать её «с нуля».
Вполне вероятно, что хорошее решение уже существует, и не нужно «изобретать велосипед».
Здравый смысл говорит о том, что неплохо бы сначала попытаться воспользоваться теми решениями, которые оказались удачными в прошлом.
В своей практической деятельности, отыскав хорошее решение однажды, люди обычно прибегают к нему снова и снова.

Паттерн (шаблон) проектирования описывает типовую задачу, которая часто возникает перед разработчиками софта.
Паттерн представляет принцип решения типовой задачи, причем таким образом, что это решение можно потом использовать много раз, ничего не изобретая заново.
Паттерны проектирования упрощают повторное использование удачных проектных решений.
Паттерны описывают методики, которые прошли проверку временем.
Паттерны позволяют явно и понятно описать взаимодействия классов и объектов в системе.
Паттерны объясняют причины, по которым система была построена именно так, а не иначе.
Паттерны нужны разработчикам новых систем.
С помощью паттернов можно улучшить качество документации и сопровождения существующих систем.
Паттерн - это обобщенное название. Выделяют следующие группы паттернов:
    - архитектурные паттерны (architectural patterns);
    - принципы проектирования (design principles);
    - паттерны проектирования (design patterns);
    - идиомы (idioms).
    Пример архитектурного паттерна:
ScreenHunter_04 Sep. 05 07.04.gif
ScreenHunter_04 Sep. 05 07.04.gif [ 82.53 KiB | Просмотров: 3301 ]
Хорошо спроектированные ОО-системы зачастую похожи на собрание многочисленных паттернов.
Это показатель высокой квалификации разработчиков.

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

Например, на 3-м курсе, в л.р. №2 по ООП - используются паттерны "Наблюдатель", "Итератор", др.
В л.р. №2 по ТПРГ - используются паттерны MVC, "Абстрактная фабрика", "Цепочка обязанностей", многие др.

Более основательно паттерны проектирования ПО изучаются на 5 курсе и в магистратуре.
Интересующиеся студенты могут заглянуть в Учебные материалы, курс "Программные средства САПР", серия лекций "Паттерны проектирования ПО".