Главные Первые Шаблоны разработки
и страница Design Pattern Wikipedia лучшие ресурсы для новичков. FluffyCat является другим хорошим, бесплатным онлайн ресурсом для шаблонов разработки и в Java и в PHP.
Банда Четырех книг - то, куда пойти позже, но это справедливо совершенствуется, таким образом, я ожидал бы, пока у Вас нет симпатичного твердого схватывания от других ресурсов.
Как только Вы понимаете понятие, проходите исходный код Eclipse или дизайн, много действительно хороших примеров этих шаблонов (не удивительно, Гамма была одним из разработчиков).
Шаблоны включают, программисты словаря высокого уровня используют для разговора об абстрактном дизайне. При многократном использовании абстрактного решения полезно относиться к нему по имени. При изобретении шаблона это профессионально, чтобы сделать немного проверки, чтобы удостовериться, что этому уже не дали имя. Если это назвали, то описание может быть полезным.
после кодирования даже крошечного бита Вы заметите себя, пишущий что-то подобное тому, что Вы кодировали прежде. Это - шаблон. Даже если это - крошечный шаблон, это стоит заметить. Существует ли лучший шаблон? Вы видите, что определенные крошечные шаблоны сотрудничают вместе для решения большей проблемы? Хорошо следующий раз, когда Вы хотите решить большую проблему, весь шаблон, входит в Ваш ум как в единственный блок. Изложение в деталях подробных строк кода становится механическим устройством.
, Чем больше Вы замечаете шаблоны, тем более легкое программирование становится, и больше Вы будете ценить некоторые самые большие и лучшие шаблоны, разработанные другими программистами. Попытайтесь освоить шаблон MVC. Так или иначе изменения обнаруживаются повсеместно, даже в крошечных проектных решениях.
Это не имеет слишком большого количества смысла мне для кого-то с очень небольшим опытом копаться слишком далеко глубоко в шаблонах разработки. Замечательно знать, что они существуют, но в этой точке необходимо сфокусироваться больше на других вещах вместо того, чтобы просто узнать о шаблонах разработки.
Они полезны в контексте проблемы - как понятие для нового разработчика / разработчика новичка, который они действительно не, слишком много практического значения в стороне формирует знание, что необходимо использовать их, когда и где Вы можете.
РЕДАКТИРОВАНИЕ Для разъяснения - много шаблонов разработки являются результатом проблем, найденных в некоторых доменах. Новый программист может едва ожидаться (IMO), чтобы знать, что шаблон (шаблоны) разработки использует для некоторого набора проблем. Так же, как мы получаем поверхностное знание алгоритмов в исследованиях CS, нам нужно понимание вещей, которые мы можем сделать с шаблонами и их преимуществами, но когда человек все еще создает привет мир или обнаруживает stl нет большого количества практической потребности в шаблонах разработки. Шаблоны являются большими. Но они не серебряная пуля.
(Ни один не был СЛУЧАЕМ (инструменты), ни один не UML, ни один не ТОЛПА, ни является TDD, ни STL, ни Java, ни XML, и т.д.), они - все просто аспекты нашей профессии и рассматривать эти темы, поскольку второе пришествие наивно.
Я также предлагаю иметь shufty в Рефакторинг к Шаблонам , как только у Вас есть считывающая головка Первые Шаблоны разработки.
Примечание: примеры кода находятся в Java, но должны быть очень похожи на примеры C#...
Поскольку меня и моих коллег изучают Шаблон разработки что, следуя Исследовательская группа Шаблона . Они готовят список каждого шаблона, который мы должны изучить в порядке и также иметь вводные вопросы, которые делают больше обсуждения в группе.
Если Вы будете читать о шаблонах разработки, то Вы заметите, что Java, кажется, имеет несколько из них реализованный.
Взгляд на источник для любой платформы и можно подобрать информацию о шаблонах разработки. Лично я не вижу, что они вписываются отлично в любой мой код, иногда примеры в книгах и учебных руководствах кажутся немного идеализированными, специально для одинокого кодера.
Шаблоны разработки не для ленивых кодеров.
Применение UML и Шаблонов Craig Larman. Запустите с основного из анализа, дизайна, и использует простой Вариант развития событий. Представляет большинство основных шаблонов простым способом.
Оригинал Шаблоны разработки книга является обязательным для чтения для всех программистов.
Это - превосходная книга на каждом уровне: расположение, ясность, понимание, глубина. Это - одна из тех замечательных книг что Вы первое полное чтение, и затем используйте в качестве ссылки, пока Вы буквально не очень хорошо знаете его.
Вы могли запустить страница Wikipedia, но рассматривать себя с замечательной книгой также.
Для веб-сайтов очень хороший сайт http://ajaxpatterns.org от одного из разработчиков ajaxian веб-сайта
Шаблоны разработки похожи на любую библиотечную функцию, читают о них, тогда когда проблема подойдет, шаблон разработки будет в Вашем "Toolchest". Существует много книг шаблонов разработки все сделанные по образцу исходной "Банды четырех" скороговорок дизайна.
Для любых программистов, я думаю, что и книга Рефакторинга Fowler абсолютные минимальные требования.
Шаблоны Архитектуры приложений для предприятия (Книга в твердом переплете) Martin Fowler
Рефакторинг к Шаблонам (Книга в твердом переплете) Joshua Kerievsky
Непрерывная Интеграция: Улучшение Качества программного обеспечения и Сокращение Риска (Paperback) Paul Duval et.al.
Вне Программной архитектуры: Создание и Поддержка Решений для Победы (Paperback) Luke Hohmann
Направляйтесь Первые Шаблоны разработки хороший как другие, уже отмеченные. Помимо этого, конечно, исходная книга и Шаблоны разработки C#. Также существуют хорошие веб-сайты, уже упомянутые.
Помимо самообучения, я серьезно рекомендую запуститься или принять участие исследовательская группа шаблона в Вашей области. См. Самоучитель А По Шаблонам разработки для объяснения и большого порядка изучить шаблоны в. Мы сделали это, и я могу честно сказать, что не понял бы столько же, сколько я делаю теперь. Еженедельная встреча с другими заинтересованными людьми сохраняет Вас удивительно дисциплинируемыми при изучении чего-то абстрактного как шаблоны разработки.
Счастливые исследования!
Аннотация к вышеупомянутым комментариям.
Справочник А Для Шаблонов GOF
Вот является хорошим местом, которое можно запустить dofactory.com/patterns/patterns.aspx - можно найти ссылку на каждый шаблон, наряду с соответствующими реализациями.
, Как когда-либо, помните, что это шаблоны GOF. Вы, возможно, должны были бы считать и понять усовершенствованные шаблоны также, как только Вы получаете достаточно экспертных знаний в OOAD. Направляйтесь Первые Шаблоны разработки хорошее начало, и после делания некоторых успехов, пойдите с Шаблонами Архитектуры приложений для предприятия Martin Fowler.
Применение Шаблонов разработки - Мыслительный процесс
Другой основной аспект - Применение Шаблонов разработки так же важно как просто знание их. Чтение этих статей могло бы помочь Вам также.
Применение Первой части Шаблонов разработки
Применение Второй части Шаблонов разработки
Hope это помогает
Я рекомендовал бы смотреть на quintology (?) Jean Paul Boodhoo при Демистифицировании Шаблонов разработки на DNRtv, URL, предоставленные ниже. Видеокасты затрагивают Singleton, Абстрактную Фабрику среди других - различие, являющееся этим, можно наблюдать, что он кодирует, поскольку он обсуждает теорию. Хороший для слежения за ланчем в дождливый рабочий день.
http://www.dnrtv.com/default.aspx?showNum=63 http://www.dnrtv.com/default.aspx?showNum=65 http://www.dnrtv.com/default.aspx?showNum=68 http://www.dnrtv.com/default.aspx?showNum=71 http://www.dnrtv.com/default.aspx?showNum=92
Вводная книга, которую я нашел полезным и правильно написанным, Шаблоны разработки, Объясненные Alan Shalloway и James Trott (Addison Wesley).
Делают не , начинают с Банда Четыре книга, поскольку это не вводная книга каким-либо образом.
шаблоны разработки C# 3.0 для взгляда C# на шаблоны разработки.
(источник: oreilly.com )
Bruce Eckel имеет книга по шаблонам разработки , хотя это - Java, это похоже на все его удивительные книги. И лучшая вещь, они свободны!
Моя подсказка:
Read много о шаблонах из других источников.
Попытка вызвать как можно больше шаблонов в весь код Вы пишете, поскольку эта точка не собирается давать хорошие результаты. Вместо этого позвольте информации покоиться в Вашем мозгу некоторое время (чтение: месяцы).
Внезапно Вы наткнетесь на проблему или часть кода, и Вы будете неопределенно помнить наблюдение чего-то, что могло бы работать решением этой конкретной проблемы. Теперь время для поиска деталей о шаблоне, о котором Вы думаете и пытаетесь применить его.
Это - то, что работало на меня, так или иначе.
Я добавил бы, что Шаблоны разработки книгой от "Банды четыре" является библия для любого, кто серьезно интересуется шаблонами разработки.
Шаблоны разработки являются большими по различным причинам:
, Но когда Ваша цель состоит в том, чтобы только изучить шаблоны разработки, я думаю, что Вы пропускаете основные принципы. Все шаблоны разработки основаны на более общих принципах. Высокая связность, Слабая связь Открывает Closed Principle, DRY, Liskov Substitution Principle и т.д. Для этих основных принципов, я прочитал бы следующие книги в этом порядке:
После этого Вы готовы к основной банде четырех шаблонов разработки
следующий шаг:
И всегда помните: шаблон не является целью!
Я нашел статьи о шаблонах проектирования на этом веб-сайте, которые действительно легко понять
Этот учебный сайт содержит следующие подразделы
Этот сайт также содержит руководство по антипаттернам , UML и рефакторингу .
Прежде чем тратить деньги на книги, я бы порекомендовал отличную страницу шаблонов проектирования Википедии. Также можно найти в Google что-то другое для "скринкастов шаблонов проектирования" или поиск "шаблонов проектирования" на YouTube . Представление одной и той же информации по-разному часто помогает упасть.
Книга Банда четырех представляет собой исчерпывающий текст по наиболее известным шаблонам, но ее не так легко читать, а примеры на C ++ нравятся далеко не всем. .
Текст Head First Design Patterns гораздо более доступен, но содержит только подмножество шаблонов «Банда четырех».
Самое важное - понять, где и почему конкретный шаблон полезен . После этого поищите в Интернете примеры реализации на выбранном вами языке и экспериментируйте, пока не получите его. Прежде чем переходить к следующему, изучите один шаблон. Все понимают одни шаблоны лучше, чем другие (а есть сотни менее известных).
Просто продолжайте подключаться.