(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

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

В программировании есть такое, нынче не модное понятие - паттерны проектирования. Это - стандартные подходы к решению типовых задач.

Для написания хорошо работающего кода эти знания в принципе не нужны, но и чисто понтами их назвать нельзя. Ближайшая аналогия из не-IT мира - единообразие в оформлении технической и конструкторской документации. Можно конечно изобрести свою структуру документа, написать все каким-нибудь дизайнерским шрифтом, но скорее всего, читатели такого не оценят.

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

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

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

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

Можно косноязычно распинаться 15 минут, описывая своё гениальное предложение перед коллегами, а можно предложить: "давайте используем такой-то паттерн?" Отдельным бонусом идет облегчение взаимодействия в интернациональной команде: уровень языка у всех разный, кому-то тяжело долго говорить, кому-то - воспринимать информацию на слух. Но ''use abstract factory'' поймут все квалифицированные программисты вне зависимости от знания английского.

К сожалению, давать паттерны в вузах, да и просто изучать в теории практически бесполезно. Я ещё не видел ни одного доходчивого описания сложных паттернов. Намного лучше, когда по твоему коду тебе говорят: о, да ты тут почти реализовал такой-то паттерн, такое запоминается намертво.
...



 Распечатать »
 Правила публикации »
  Обсудить материал в конференции Дискуссии и обсуждения общего плана »
Написать редактору 
 Рекомендовать » Дата публикации: 15.06.2020 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
SmartBear AQtime Pro - Node-Locked License (Includes 1 Year Maintenance)
Business Studio 4.2 Enterprise. Конкурентная лицензия + Business Studio Portal 4.2. Пользовательская именная лицензия.
ESET NOD32 Антивирус на 1 год для 3ПК или продление на 20 месяцев
JIRA Software Commercial (Cloud) Standard 10 Users
SAP Crystal Reports 2008 INTL WIN NUL License
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Программирование на Microsoft Access
CASE-технологии
OS Linux для начинающих. Новости + статьи + обзоры + ссылки
СУБД Oracle "с нуля"
Corel DRAW - от идеи до реализации
3D и виртуальная реальность. Все о Macromedia Flash MX.
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
Обсуждения в форумах
Отличается ли ДрифтКазино от беттинга? (44)
Друзья, давно заметил, что на Дрифте уже несколько месяцев во всю рекламируется и предлагается...
 
Топ рейтинг слотов 2021 года (6)
Среди огромного выбора азартных слотов...
 
Пишу программы на заказ профессионально (3292)
Пишу программы на заказ на языках Pascal (численные методы, списки, деревья, прерывания) под...
 
сервисный центр техники Эпл в Краснодаре (1)
Всем привет.Обращалась в этот сервисный центр техники Эпл в Краснодаре...
 
Программы Delphi на заказ (246)
Пишу программы в среде Delphi на заказ http://bddelphi.ucoz.ru/
 
 
 



    
rambler's top100 Rambler's Top100