Я читал принцип DRY. Хотя кажется, что это так просто, но мне трудно понять, как мы на самом деле достигаем его в любом проекте, будь то веб-приложение или Swing? Может быть, несколько примеров дадут мне преимущество и помогут мне в развитии моего процесса мышления. Я попытался найти в Google, но не смог найти ничего подходящего.DRY принцип в java
ответ
DRY - ничто, что требует примеров. Если вы копируете и вставляете блоки кода из одного метода, функции или блока кода в другой, то вы нарушаете DRY.
Очень просто, DRY сообщает вам переместить этот код в блок многократного использования: либо в функцию или метод, либо макрос, либо другой механизм, относящийся к вашему языку программирования. Если у вас есть места в вашей кодовой базе, где у вас есть очень похожий код (даже с небольшими вариациями), вы должны искать рефакторинг этого кода, чтобы сделать его СУХОЙ.
«Не повторяйте себя!» == «Не повторяйте один и тот же код повторно»
с помощью многоразового блока, может ли это быть новый класс? Если повторный код нужно удалить, но нет никакого сходства между объектами. Что делать в таком случае? – beinghuman
@ Ники, например? Много ответа можно было бы сделать, если вы не точно, вы могли бы использовать дженерики. – nachokk
Да, единица многократного использования может быть целым классом или абстрактным классом или любым другим компонентом повторного использования. Если вы используете инфраструктуру инъекций Dependency, то, безусловно, у вас будут целые классы. В том, что касается oop, сложность в вашем дизайне начинает зависеть от области общих шаблонов дизайна, описанных в [Gang of 4 book] (http://en.wikipedia.org/wiki/Design_Patterns), а также на многих других языках конкретные книги. Этот сайт также является отличным бесплатным ресурсом: http://www.oodesign.com/ – gview
- 1. Охватывая принцип DRY в XML
- 2. Принцип DRY в проекте MVC
- 3. Примените принцип DRY с JavaScript
- 4. Rails Валидации и принцип DRY
- 5. Django: принцип DRY и UserPassesTestMixin
- 6. Принцип DRY с методами контроллера
- 7. Как сбалансировать принцип DRY с минимальными зависимостями?
- 8. Несколько префиксных маршрутов и принцип DRY
- 9. TDD, Mocking, зависимость и принцип DRY
- 10. Нарушает ли защитное программирование принцип DRY?
- 11. Как применить принцип DRY к комментариям?
- 12. Применяя принцип DRY к этому JQuery код
- 13. Как реализовать принцип DRY в веб-приложении ASP.NET
- 14. Как реализовать принцип DRY в C для петли над матрицами
- 15. Spring MVC, ссылки на контроллер в JSP и принцип DRY
- 16. Как применить принцип DRY в javascript code snippet
- 17. Создание и редактирование объекта с несколькими динамического Collections - DRY Принцип
- 18. как применить принцип DRY к javascript и запросу
- 19. Django: Как переопределить сторонние представления, используя принцип DRY?
- 20. Две разные цепи наследования, не нарушающие DRY-принцип
- 21. Принцип DRY при работе с несколькими сигнатурами методов
- 22. Принцип наследования/интерфейса Java класса
- 23. Следуя принципу DRY в ASP.NET
- 24. C# bool принцип работы принцип
- 25. DRY Принцип: Угловой 2/Типичный экземпляр и дублирование объектов backback объекта
- 26. DRY: Минимизация повторяющегося кода в Java
- 27. DRY кэширование обработки ошибок в java
- 28. Принцип общей подстановки - как применяется принцип принципа
- 29. Устранение повторного кода (DRY принцип) в этой цепочке функции кэширования ответственности
- 30. Как оптимизировать производительность, не нарушая принцип DRY (Don't-Repeat-Yourself) в этом сценарии?
Те, у кого есть время, чтобы опросить вопрос. Я прошу вас оставить комментарий, пожалуйста. – beinghuman
Принцип достаточно прост ... не повторяйте одну и ту же логику в нескольких местах. Это достигается тем, что не повторяется одна и та же логика в нескольких местах. У вас есть пример того, где у вас возникают проблемы с его применением? (Боковое примечание, основанное на вашем комментарии: голосование анонимно, и пользователи не обязаны комментировать голоса. Лучше не принимать его лично.) – David
@David Я понимаю вашу точку зрения. Но люди могут быть более скромными и, по крайней мере, комментировать этот вопрос слишком абстрактна. Так что, по крайней мере, это может быть улучшено. Вместо этого просто думайте, что этот парень - дебил и голосует за вопрос и бегство. Никто не останавливает никого из всех, кто голосует в любом случае. Вы можете понизить его после предложения. – beinghuman