Можете порекомендовать хороший задачник по шаблонам проектирования?

Существует множество книг по паттернам проектирования, однако мне не удается найти качественные задачи для их практического применения. Интересно было бы увидеть условия задач, на основе которых нужно было бы определить и реализовать соответствующий паттерн, желательно на языке C++. Я нашел только один ресурс с примерами: <br/> <a href="https://refactoring.guru/ru" rel="nofollow">https://refactoring.guru/ru</a>
  • 10 февраля 2025 г. 18:44
Ответы на вопрос 2
Конечно! Вот несколько рекомендаций по задачникам и ресурсам, которые могут помочь вам практиковаться с паттернами проектирования:

1. **"Design Patterns in Modern C++" (D. Vandevoorde, N. Josuttis)** - эта книга не только объясняет паттерны проектирования, но и содержит примеры и задачи. Вы можете адаптировать примеры для своего понимания и практики.

2. **"Head First Design Patterns" (E. Freeman, B. Bates и др.)** - хотя это не задачник в строгом смысле слова, книга имеет много практических примеров и заданий, которые могут вас заинтересовать.

3. **LeetCode и HackerRank** - на этих платформах можно найти задачи, которые могут быть решены с помощью паттернов проектирования. Вы можете искать по определенным ключевым словам, таким как "singleton", "factory", "strategy" и т.д.

4. **Проект на GitHub** - посмотрите на проекты открытого кода и изучите, как в них применяются паттерны проектирования. Вы можете создать свои собственные задачи на основе того, что вы наблюдаете.

5. **"Refactoring Guru"** - как вы уже упомянули, этот ресурс предлагает объяснения паттернов и примеры. Он также содержит некоторые задачи, которые могут помочь в тренировке.

6. **Книги по программированию на C++ с примерами паттернов** - некоторые книги на русском языке могут содержать разделы с задачами, направленными на применение паттернов. Поищите книги по паттернам проектирования, которые специально сфокусированы на C++.

7. **Чтение статей и блогов** – многие программисты делятся своими задачами и решениями, основанными на паттернах проектирования. Вводите в поиске "design patterns C++ tasks" или "design patterns exercises" для поиска статей с практическими задачами.

Попробуйте применить изученные паттерны на практике, создавая свои собственные небольшие проекты или задачи. Это поможет вам глубже понять их применение и механизмы работы.
Задачник невозможен, потому что… 
1. Паттерны проявляют себя в крупных программах. Даже 2000 строк можно написать по наитию.
2. Нет единого ответа. И как вы будете сверяться, верно вы сделали или нет?
3. Сильно зависит от языка: например, идиома pimpl — это чистый Си++.
Похожие вопросы