2012-02-14 3 views
4

Существует много книг/онлайн-ресурсов об использовании шаблонов. Но я не нашел никаких задач для его использования. Но для хорошего понимания закономерностей нужна практика. Возможно, кто-то столкнулся с некоторыми ресурсами, где есть задачи по использованию шаблонов.
Например. Посредник: 1) напишите чат-приложение, где ... Заранее спасибо.Где я могу найти задачи для использования шаблонов

UPDATE: я нашел: http://www.cs.sjsu.edu/~pearce/modules/labs/patterns/

How to study design patterns?

+4

Возможно, не совсем то, что вы ищете, но я лично нашел книгу «Head First Design Patterns» хорошей комбинацией того, как работают шаблоны и задачи, которые они решают (что побуждает вас работать) –

+0

Я хочу найти если это возможно для всех шаблонов gof. Я видел HFDP, и это не то, что я ищу. – user1074896

+0

Я думаю, что он нарушает принципы дизайна-шаблонов, чтобы сказать, что вы должны использовать x для достижения y, просто напишите чат-приложение, думая о его архитектуре, определите, что, где, когда и почему и где применимо примените известный шаблон или, возможно, смешайте их, шаблоны, которые, как я думал, должны проектировать, я не думаю, что вы должны проектировать шаблон. –

ответ

1

Я знаю только одного такого ресурса, и он не формулируется, как вы указали, но, возможно, это поможет немного: В последние главы Patterns книги Head First Design, то MVC закономерность объясняется как сложный узор, с участием нескольких других: Composite, Стратегия, адаптер и т. Д. Это объясняется с помощью небольшого приложения. Вы можете найти главу и построить описанную на практике.

2

Я дам вам пять, с легкой и/или умеренной сложности:

Синглтон

  • легко: один класс доступа к базе данных для всего приложения.

завод

  • легко: с английского на другой язык-переводчик. Мне нужно иметь возможность добавлять, а затем обращаться к новому языковому переводчику с минимальными изменениями кода.

наблюдатель

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

Memento

  • легко: Простая игра с возможностью сохранения/загрузки.

декоратор

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

Всегда пользуйтесь итератором? Шаблон.Я предполагаю, что вы используете множество шаблонов, даже не понимая, что используете их. Создал буферизованный считыватель из файлового ридера? декоратор; шаблон. Не пытайтесь использовать шаблоны - пусть проблема их обнаружит. Они повсюду, вот почему они узоры.

Такие вещи, как фасады, декораторы, итераторы, фабрики и т. Д., Появляются в каждом отдельном домене. Выберите что-нибудь вам интересно писать и узнать уже существующие шаблоны. Рефтор беспощадно - узоры.

+0

И я хочу найти такие задачи, которые я могу решить сначала без каких-либо шаблонов, а затем попытаться их улучшить - к шаблонам. – user1074896

+0

@ user1074896 Итак, вы просите идеи программ писать? Просто выберите что-нибудь. Вики. Редактор. Бот. –

Смежные вопросы