Публикации по теме 'design-principles'


Что такое принцип единой ответственности?
Принцип единой ответственности, или сокращенно SRP, является частью «S» принципов SOLID. Этот принцип представил Роберт С. Мартин (он же дядя Боб). Вы можете просмотреть более подробное объяснение SRP, перейдя по этой ссылке в его сообщение в блоге . Почему вам нужно заботиться о таких принципах проектирования, как SRP? Прежде чем я углублюсь в SRP, давайте обсудим, почему это вообще имеет значение. Короче говоря, потому что легко создать программу, которая будет работать..

Понимание принципа единой ответственности
Принципы проектирования SOLID Принцип единой ответственности является первым и самым простым из принципов SOLID дизайна ; все же трудно получить право. Принципы SOLID  – это набор принципов проектирования, призванных помочь разработчикам создавать хорошее, удобное в сопровождении, надежное и легко расширяемое программное обеспечение. Таким образом, хорошее понимание этих принципов необходимо для написания хорошего программного обеспечения. SOLID  — это аббревиатура пяти..

Вопросы по теме 'design-principles'

Какой список шаблонов и принципов должен знать программист?
Я занимаюсь кодированием несколько лет и до сих пор чувствую, что мои знания недостаточно широки, чтобы стать профессионалом. Я изучил несколько книг, связанных с шаблонами проектирования, но знаю, что есть много других. Так может ли кто-нибудь...
983 просмотров
schedule 22.11.2022

Комментарии к моему дизайну v2
Я опубликовал не так давно диаграмму классов для приложения, которое я делаю. Получил несколько полезных советов и принялся за работу. Конечно, дизайн — это сложно! В любом случае, я сделал версию 2.0, но столкнулся с другими вещами. Может быть,...
170 просмотров
schedule 16.10.2023

Какие методы могут защитить от неожиданного отложенного выполнения с IEnumerable‹T› в качестве аргумента?
Есть несколько вопросов, подобных этому, которые касаются правильных типов ввода и вывода вот так . Мой вопрос заключается в том, какие передовые методы, именование методов, выбор типа параметра или подобное могут защитить от аварий с отложенным...
1295 просмотров

Синхронизируйте асинхронные вызовы от более чем одного объекта
У меня около 10 объектов. Каждый объект разного класса. Запросы, отправляемые этим объектам (вызовы методов с возвращаемыми значениями), поступают из разных потоков. Мне нужно синхронизировать эти вызовы методов, которые должны выполняться только...
577 просмотров

Как подписаться на события, возникающие в нескольких экземплярах класса?
Я работаю над небольшим проектом Unity с С#. У меня есть класс UnitManager , который содержит список экземпляров класса Unit . Я хочу вызвать событие всякий раз, когда свойство (например, здоровье) изменяется в экземпляре Unit . Я также...
2474 просмотров
schedule 29.12.2023

Базовый класс несет одну ответственность, а производный класс — другую. Соответствует ли это SRP?
У меня есть VolumeButton, который является производным от ButtonModifier. Если я помещу свою бизнес-логику (увеличение/уменьшение громкости, отключение звука и т. д.) в VolumeButton, включу/отключу логику для базового класса ButtonModifier....
59 просмотров
schedule 24.10.2023

*Зачем вообще нужны шаблоны итераторов?*
Так что я откинулся на спинку кресла, весь расслабленный и дерьмовый, восстанавливая свои знания о шаблонах проектирования, все идет хорошо и прекрасно, пока я жду выходного адреналина. Моя жизнь не может быть более гладкой. Следующее, что вы...
77 просмотров
schedule 24.05.2024

Хорошая практика для отображения формы из UserControl
Я хочу следовать шаблонам проектирования передовой практики при разработке приложений WinForms. У меня есть UserControl с кнопкой «Добавить», чтобы открыть новую форму, где пользователь может искать сотрудников. Как я могу организовать свой код?
112 просмотров
schedule 26.07.2023

Управление версиями API функций Azure — как структурировать мой код?
Я создал демонстрационное приложение микросервисов, реализованное с помощью Azure Function Apps. Для разделения задач я создал уровень API, бизнес-уровень и уровень данных. Уровень API, являющийся функциональным приложением, вызывает...
2990 просмотров

Инверсия управления - это закономерность?
По некоторым данным, IoC - это принцип . https://www.tutorialsteacher.com/ioc/introduction Но в другом месте это шаблон . Что такое инверсия управления? Паттерны Inversion of Control (IoC) и Dependency Injection (DI)...
380 просмотров

Как мне хранить ~ 400 пар "ключ-значение" для моего приложения для Android?
Как лучше всего хранить ~ 400 пар ключ-значение для Android-приложения? Эти значения будут установлены при первоначальной настройке приложения и после этого изменяться крайне редко. Однако они используются один раз для каждого приложения в качестве...
158 просмотров

Как этот пример нарушает LSP, что затем приводит к нарушению OCP?
Из Agile Principles, Patterns, and Practices in C# Роберта Мартина, Листинг 10-1. Нарушение LSP, вызывающее нарушение OCP struct Point {double x, y;} public enum ShapeType {square, circle}; public class Shape {...
180 просмотров

Наследование или композиция в объектно-ориентированном дизайне
Я видел много диаграмм классов на популярных веб-сайтах и ​​курсах дизайна, определяющих отношения с помощью композиции, например: у администратора есть экземпляр человека У судьи есть экземпляр человека По моему мнению, разве это не должно быть в...
21 просмотров