и посмотреть медиа
Backend - программисты
и посмотреть медиа
Backend разработчики.
AI bot for text-to-speech and voice cloning in Telegram. Create audio using neural network quickly and easily.
Комьюнити backend-программистов: Python, Java, Golang, PHP, DevOps.
🤔 Что означает принцип open closed? Принцип "открытости/закрытости" (Open/Closed Principle, OCP) — это один из пяти принципов SOLID, разработанных для создания устойчивого и легко поддерживаемого кода в объектно-ориентированном программировании. Принцип был предложен Бертраном Мейером в 1988 году и заключается в следующем: 🚩Что это означает 🟠Открыты для расширения Поведение класса можно расширить, добавив новый код. Это достигается путем создания новых классов, которые наследуют или композируют существующие классы, или путем использования интерфейсов и абстрактных классов. 🟠Закрыты для модификации Существующий код класса не должен изменяться. Это помогает избежать ошибок, которые могут возникнуть при изменении уже протестированного и проверенного кода. Без соблюдения принципа OCP public class Shape { public void drawCircle() { // рисуем круг } public void drawSquare() { // рисуем квадрат } } public class GraphicEditor { private Shape shape; public GraphicEditor(Shape shape) { this.shape = shape; } public void draw(String shapeType) { if (shapeType.equals("circle")) { shape.drawCircle(); } else if (shapeType.equals("square")) { shape.drawSquare(); } } } С соблюдением принципа OCP public interface Shape { void draw(); } public class Circle implements Shape { @Override public void draw() { // рисуем круг } } public class Square implements Shape { @Override public void draw() { // рисуем квадрат } } public class GraphicEditor { private Shape shape; public GraphicEditor(Shape shape) { this.shape = shape; } public void draw() { shape.draw(); } } 🚩Плюсы ➕Повышение гибкости Система становится более гибкой и расширяемой, так как новые функциональности добавляются без изменения существующего кода. ➕Уменьшение количества ошибок Снижается вероятность введения ошибок в существующий код, так как изменения сосредоточены в новых классах. ➕Упрощение тестирования Легче тестировать новые компоненты отдельно, не затрагивая и не изменяя существующие. Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиаOnly registered users can share their opinion.
Be the first to share your impression of this resource!
Official announcementsXkucoinfrog-onKuCoinand TON on Telegram.
Test channelTest1 with a variety of content to check ideas and updates on Telegram.
Channel about the principles of clean architecture, DDD, microservices,Agileand XP. In-depth analysis of software design and distributed systems for professionals.