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


Разработка через тестирование с помощью Golang
Тестирование - занятие, ненавистное большинству людей. Тестирование - это исследование, проводимое с целью убедиться, что написанный код надежен и соответствует заданным требованиям. Самый распространенный способ тестирования кода - это писать модульные тесты для разных единиц кодовой базы. Это позволяет легко изолировать ошибки. Все процессы разработки программного обеспечения включают тестирование как неотъемлемую часть. То, о чем мы собираемся поговорить сегодня, называется Test..

Станьте лучшим разработчиком, используя принципы проектирования SOLID
Есть 5 принципов SOLID, которые были введены Робертом Мартином по имени Майкл Фезерс. Я думаю, что эти пять принципов выделяются, когда код поддерживается кем-то, кроме исходного разработчика. В такое время читатель должен уделять больше времени написанию кода, а не разработчик. Это плохое качество разработчика. Кроме того, когда мы работаем над стартапом, для лучшего будущего лучше, если мы будем следовать этим шагам. Кстати, это не очень существенное понятие, но лучше, если мы..

ТВЕРДЫЙ. демистифицированный
Переход от знания к истинному получению Вероятно, вы встречали принципы SOLID в бесчисленных интервью, тренингах и статьях, посвященных разработке программного обеспечения. Аббревиатуры знакомы: SRP, OCP, LSP, ISP и DIP. Но вот вопрос: действительно ли вы их понимаете? Эта статья выводит вас за рамки поверхностного знакомства и глубоко погружает в суть SOLID. Мы рассмотрим эти принципы не просто как теоретические концепции, но и как практические рекомендации, которые могут изменить..

Как реализовать принцип SOLID в JavaScript?
Учебник для начинающих по основам принципа SOLID и тому, как реализовать его в программировании на JavaScript. Эта статья познакомит вас с основной концепцией принципа SOLID в языке JavaScript. У нас будет свой способ следовать этому принципу с каждым языком. Однако в JavaScript очень сложно применить этот принцип в коде. Чтобы упростить вам задачу, я показал способ реализации кода. В примере я смешал 2 метода (класс и функцию), чтобы применить код по принципу SOLID. Этот принцип..

Твердые принципы
5 принципов объектно-ориентированного программирования с примерами Разработка программного обеспечения сложнее, чем думает большинство людей, и чтобы получить преимущество перед другими разработчиками, человек должен уметь создавать программное обеспечение, которое легко читать, поддерживать и гибкое для изменений. Вот где проявляются принципы SOLID : Эти принципы помогают в разработке слабосвязанных классов, что делает код стабильным и менее подверженным ошибкам в долгосрочной..

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

Использование принципа единой ответственности в реальном мире
По сути, я хочу получить представление о том, какой процент людей считает разумным использовать принцип единой ответственности в реальном коде и сколько на самом деле это делают. В Podcast № 38 Джоэл говорит о том, насколько бесполезен этот...
2821 просмотров

Как мне спланировать архитектуру для перезаписи системы?
Я планирую переписать существующую систему, над частью которой я ранее работал. Я делаю это в качестве обучающего упражнения. Ниже приводится описание старой системы, базовая архитектура новой системы, некоторые передовые методы, которым я хочу...
233 просмотров

Надежная структура кода?
Я ненавижу писать код, который делает мою программу более надежной. Это то, что должен был сделать фреймворк! Итак, кто-нибудь знает об утилите, «улучшающей» код, которая укрепляет код? Если бы мне пришлось создать что-то подобное самому, это...
250 просмотров

Шаблон адаптера против замены Лисков
Шаблон проектирования Adapter используется для преобразования интерфейса класса (Target) в другой интерфейс (Adaptee), ожидаемый клиентами. Адаптер позволяет несовместимым классам работать вместе, что иначе было бы невозможно из-за их несовместимых...
2466 просмотров

SOLID для функционального программирования
Исходя из языка ООП, я знаком с принципами SOLID объектно-ориентированного проектирования. Кажется, что некоторые из них вписываются в модель функционального программирования, в то время как другие части не имеют смысла в мире без состояния....
7859 просмотров

Инверсия зависимостей. Создание объекта
Согласно принципам SOLID класс не может зависеть от других классов, зависимости должны быть введены. Это просто: class Foo { public Foo(IBar bar) { this.bar = bar; } private IBar bar; } interface IBar { } class Bar:...
812 просмотров

Шаблон для создания простого и эффективного типа значения
Мотивация: Читая блог Марка Симанна на тему Code Smell: Automatic Property , он говорит рядом с конец: Суть в том, что автоматические свойства редко подходят. На самом деле они подходят только тогда, когда тип свойства является типом...
10115 просмотров

Подход DDD к доступу к внешней информации
У меня есть существующие классы банковских приложений, как показано ниже. Банковский счет может быть SavingsBankAccount или FixedBankAccount. Есть операция под названием IssueLumpSumInterest. Для FixedBankAccount баланс необходимо обновлять только...
407 просмотров

Использование интерфейсов C# при максимальном повторном использовании кода
Итак, скажем, у меня был класс C #, class Foo : Bar, IBar, IBar2 { } ... где Bar — класс, а IWhatever и IFine — интерфейсы. Я планирую использовать аналогичную реализацию IWhatever и IFine в нескольких классах. Единственный разумный способ...
2046 просмотров

Функциональное программирование, SRP, тестируемость и классы со статическими и изменяемыми полями экземпляра
Надеюсь, я смогу правильно сформулировать этот вопрос. У меня есть опасения при работе с состоянием и возможностью тестирования в классах со статическими и изменяемыми полями экземпляра. Составляют ли статические поля другой...
135 просмотров

Нарушает ли реализация нескольких интерфейсов принцип единой ответственности?
Из Википедии : Принцип единой ответственности гласит, что у каждого класса должна быть единственная ответственность, и эта ответственность должна быть полностью инкапсулирована классом. Означает ли это, что реализация нескольких...
1670 просмотров

Кажется, я не могу понять принципы SOLID и шаблоны проектирования
В последнее время я пытаюсь заняться ООП, и у меня возникают проблемы с SOLID принципы и шаблоны проектирования. Я понимаю, почему люди используют их, и я действительно хочу их использовать, но я не могу уложиться в голове, разрабатывая свои классы...
16125 просмотров
schedule 06.03.2024

Действительно ли сеттеры и геттеры нарушают SRP?
Недавно я прочитал статью, в которой описывается , как они явно могут нарушить Рекомендуемая цена . И вот я совсем запутался, потому что давно писал одиночные классы с сеттерами и геттерами. Кроме того, я нашел это , но это не имеет ничего...
595 просмотров

Является ли принцип разделения интерфейсов классами или объектами?
Напоминаем (из вики ): Принцип разделения интерфейсов (ISP) гласит, что ни один клиент не должен зависеть от методов, которые он не использует. А теперь посмотрите на мой пример. Вот моя изменяемая сущность. Он откуда-то...
1018 просмотров

Удаление зависимости Convert.ToDecimal (внедрение зависимостей)
В настоящее время я изучаю внедрение зависимостей для создания более удобного кода с помощью MVC. Я уже внедряю модель и службу калькулятора в свой контроллер вместо новой зависимости. У меня есть несколько вызовов Convert.ToDecimal в моем...
96 просмотров

SOLID и агрегатор событий
Я стараюсь следовать SOLID, насколько это возможно, и столкнулся со следующей проблемой при работе в приложении Prism: У меня есть класс, который обрабатывает все события, которые модуль получает от других модулей. Поскольку у класса есть две...
173 просмотров

Нарушает ли обработка памяти принцип единственной ответственности?
SRP : There should never be more than one reason for a class to change Если у меня есть class A , в обязанности которого входит выполнение taskA . Нарушает ли обработка памяти внутри class A SRP? Если да, то приемлемо ли это? Какие...
112 просмотров

Принцип замещения Лисков не может быть достигнут?
Приведите, пожалуйста, пример, в котором невозможно реализовать принцип "замещения Лисков"? Спасибо.
96 просмотров
schedule 27.03.2023

Лучший способ заполнить объект свойствами, извлеченными из базы данных
Я использую PHP 5.4. Я пытаюсь сделать свое приложение более НАДЁЖНЫМ. В настоящее время я просматриваю свои объекты и убеждаюсь, что они следуют SRP. Я застрял в том, как справиться с заполнением моего объекта свойствами, особенно свойствами,...
112 просмотров

Измените текущую реализацию базового MVVM, чтобы она соответствовала шаблону SOLID.
Я писал все свои приложения MVVM с базовым шаблоном проектирования, обычно упоминаемым в примерах MVVM, доступных в Интернете. Шаблон, которому я следую, описан ниже: Модель Этот раздел включает классы DTO с их свойствами и интерфейсами...
1138 просмотров