Привет читатель! Я хочу поговорить с вами о шаблонах проектирования.
Знаете, это такая старая вещь, о которой было модно писать еще в конце прошлого века, а некоторые монстры до сих пор иногда о них спрашивают в интервью.
У меня возникла мысль, что пора о них еще раз вспомнить, но на этот раз рассмотреть в современных реалиях.
Есть ли лучший способ сделать это, чем взять.
и написать об этом книгу?
Почему сейчас и почему о шаблонах? За последние 20 лет с современными подходами к развитию произошло довольно многое.
В начале девяностых был бум паттернов, затем пришла очередь DI и «программирования в файлах конфигурации», затем началась шумиха вокруг DDD, в то же время методы функционального программирования стали стремительно набирать популярность.
Сделало ли все это шаблоны неактуальными? С моей точки зрения, нет, не так! Ажиотаж вокруг паттернов действительно прошел, и пришло время посмотреть на них с высоты нашего опыта.
Для одного шаблоны утратили свою актуальность, а для другого синглтон остаётся нашим всем.
В своей книге я хочу взять паттерн и рассмотреть его со всех возможных сторон: посмотреть, как он выглядит в книге «Банда четырех», рассмотреть его «каноническое» современное представление, рассмотреть 3-4 типовые реализации на C#, подумать, как это влияет на дизайн приложения, и посмотрите примеры их использования в .
NET Framework и в современных приложениях.
Например, если говорить о безбожном Синглтоне, я приведу 4 разные реализации на платформе .
NET, покажу, чем классический Синглтон отличается от паттерна Ambient Context и покажу, «где» и «в какой форме» он применим в современное приложение.
Или я возьму фабричный метод и рассмотрю его не только с точки зрения классической реализации, но и отвечу на вопрос, нарушает ли фабричный метод, основанный на словаре или переключателе, принцип Open-Closed. Тогда я перейду к Шаблонный метод и рассмотреть его в контексте проблем наследования и принципов проектирования контрактов, а затем сравнить классический метод шаблона с конкретной реализацией на C# в на основе лямбда-выражений .
Когда я возьму Посетителя, я не только покажу, где и когда он используется, но и расскажу об известной задаче программной инженерии под названием проблема выражения , о типичных подходах к расширяемости в мирах объектно-ориентированного и функционального программирования, о роли паттерна Посетитель в контексте принципа Открытости/Закрытости.
Я буду говорить о «строителях» не просто на примерах диаграмм классов «Банды четырёх», а в несколько ином контексте, например, для создания тестовых данных для модульных и интеграционных тестов.
Хотелось бы говорить не просто о паттернах, со скучными каноническими диаграммами классов, часть из которых невозможно встретить в реальном коде.
Я хотел бы взять ключевые шаблоны GoF и показать, как они развивались, как они обычно реализуются в C# и насколько они укоренились в самой .
NET Framework и в наших пальцах.
К чему я клоню? Дело в том, дорогой Читатель, что мне нужна ваша помощь.
Издательство (в лице издательства Питер a.k.a. ph_piter ) готов взяться за эту книгу, но ему необходимо мнение сообщества об актуальности ее актуальности (это не опечатка!).
Мы с вами готовы пожертвовать своим временем в ущерб семейным и другим интересам, но в бизнесе действуют несколько другие принципы.
Так что, дорогие товарищи (и товарищи), если вы хотели бы увидеть эту книгу в печатном виде, то отреагируйте как-нибудь в комментариях или другим удобным способом.
З.
Ы.
Если вам нужно содержание книги, то я готов его выложить, хотя оно будет мало чем отличаться от содержания классической книги "Банда четырёх", с некоторыми ответвлениями.
З.
Ы.
Ы.
Спасибо ID Peter a.k.a. ph_piter что вы готовы взяться за это дело вместе со мной! В опросе могут участвовать только зарегистрированные пользователи.
Войти , Пожалуйста.
Будет ли такая книга интересной? 74,58% Конечно, дайте мне два! 807 25,42% Нет, спасибо, я еще не освоил GoF 275 Проголосовали 1082 пользователя.
243 пользователя воздержались.
Теги: #.
NET #шаблоны проектирования #книги #.
NET #дизайн и рефакторинг
-
Несколько Советов По Использованию Wi-Fi
19 Oct, 24 -
Ошибка При Входе На Хабр
19 Oct, 24 -
Космонавтика 2014 На Geektimes
19 Oct, 24 -
Внимание: Ddos
19 Oct, 24 -
Хабраглюкс
19 Oct, 24