mirror of
https://github.com/tiennm99/java-design-patterns.git
synced 2026-05-14 10:58:42 +00:00
207cf60bc6
Co-authored-by: Ramil Sayetov <ramil.sayetov@setinbox.com>
66 lines
5.2 KiB
Markdown
66 lines
5.2 KiB
Markdown
<!-- the line below needs to be an empty line C: (its because kramdown isnt
|
|
that smart and dearly wants an empty line before a heading to be able to
|
|
display it as such, e.g. website) -->
|
|
|
|
# Шаблоны проектирования на Java
|
|
|
|

|
|
[](https://raw.githubusercontent.com/iluwatar/java-design-patterns/master/LICENSE.md)
|
|
[](https://sonarcloud.io/dashboard?id=iluwatar_java-design-patterns)
|
|
[](https://sonarcloud.io/dashboard?id=iluwatar_java-design-patterns)
|
|
[](https://gitter.im/iluwatar/java-design-patterns?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
|
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
|
[](#contributors-)
|
|
<!-- ALL-CONTRIBUTORS-BADGE:END -->
|
|
|
|
# Введение
|
|
Шаблоны проектирования - лучший метод для решения проблем, возникающих
|
|
во время разработки приложения или системы.
|
|
|
|
Шаблоны проектирования могут ускорить процесс разработки путем предоставления
|
|
проверенных моделей/парадигм.
|
|
|
|
Использование шаблонов повторно поможет избежать частых проблем, из-за которых
|
|
происходят проблемы. А еще это повысит читаемость кода для программистов и
|
|
архитекторов, знакомых с шаблонами.
|
|
|
|
# Начало работы
|
|
|
|
В этом репозитории размещены шаблоны проектирования на Java. Они были разработаны
|
|
программистами из open source сообщества. Шаблон может быть выбран
|
|
из его описания или просмотром его исходного кода. Код хорошо задокументирован,
|
|
его можно рассматривать, как учебник по программированию о конкретном шаблоне.
|
|
Мы используем самые популярные (прошедшие огонь, воду и медные трубы) технологии,
|
|
основанные только на ПО с открытым исходным кодом.
|
|
|
|
Преждем чем нырнуть в материал, тебе следует ознакомиться с различными
|
|
[принципами разработки ПО(англ)](https://java-design-patterns.com/principles/).
|
|
|
|
Все конструкции должны быть максимально простыми. Не делай лишнюю функциональность,
|
|
которая скорей всего не пригодиться, а просто создай простую штуку, что сможет
|
|
работать. Усложнять и вводить паттерны необходимо, лишь когда масштабируемость
|
|
действительно нужна.
|
|
|
|
Как только ознакомитесь с этими концепциями, приступайте к изучению
|
|
[доступных шаблонов проектирования(англ)](https://java-design-patterns.com/patterns/) любым
|
|
из следующих методов:
|
|
|
|
- Ищите шаблон по имени. Не смогли найти такой? Сообщите об этом [здесь](https://github.com/iluwatar/java-design-patterns/issues).
|
|
- Используя тэги, например `Performance`, `Gang of Four` или `Data access`.
|
|
- Используя категории шаблонов `Creational`, `Behavioral` и другие.
|
|
|
|
Надеемся объективно-ориентированные решения, представленные здесь будут вам
|
|
полезны и найдут место в ваших проектах, а также вы получите такое же удовольствие
|
|
от их изучения, какое получили мы во время их разработки.
|
|
|
|
# Как принять участие в разработке
|
|
|
|
Если вы захотите принять участие в жизни проекта, вся полезная информация находится на
|
|
нашей [вики(англ)](https://github.com/iluwatar/java-design-patterns/wiki). Мы можем помочь
|
|
и ответить на твои вопросы в чате [Gitter](https://gitter.im/iluwatar/java-design-patterns).
|
|
|
|
# Лицензия
|
|
|
|
Проект основывается на тезисах лицензии MIT.
|
|
|