Где я мог бы найти пример кода, который соответствует как принципам ООП, так и принципам SOLID?

#c# #asp.net #oop #design-patterns #solid-principles

#c# #asp.net #ооп #шаблоны проектирования #solid-принципы

Вопрос:

Где я мог бы найти пример кода на c #, который соответствует как принципам ООП, так и принципам SOLID?

Я искал в Google, но не смог найти ни одного примера кода или решения бизнес-проблемы, которая напрямую связана с решением этих 2 наборов принципов.

Спасибо

Комментарии:

1. Вещи, о которых вы упомянули, обычно не происходят одновременно. Множество примеров кода обычно обращаются к одному простому принципу. Если вы ищете что-то завершенное, вы должны следовать проекту с открытым исходным кодом.

2. Точно, я видел много примеров, в которых показан только 1 принцип, но не целый пакет, как одно решение для бизнес-проблемы.

Ответ №1:

Я бы порекомендовал книгу Марка Симанна: внедрение зависимостей в .Net, которая потрясающая! в нем уже встроена вся надежность и отличные подробные примеры!

Комментарии:

1. можете ли вы также включить pluralsight.com/courses/encapsulation-solid который также принадлежит Марку Симанну, и код для него находится по адресу github.com/jpvantuyl/mark-iv-special-coffee-maker

2. Я бы поддержал курс множественного зрения. Только что закончил, и это открывает глаза.

3. @DLNarasimhan — Я не уверен, что это точный код из курса pluralsight. Возможно, похоже, но не то же самое.

Ответ №2:

Существует много принципов ООП и SOLID, и объединение их всех в одном фрагменте кода было бы довольно запутанным.

Я бы рекомендовал вам рассматривать каждый принцип по отдельности, чтобы действительно получить представление о том, чего он пытается достичь.

Существует множество книг, которые переполнены примерами кода, на которые вы можете посмотреть. Мне нравится профессиональный ASP.NET Шаблоны дизайна Скотта Миллета. Его код здесь: http://aspnetdesignpatterns.codeplex.com /

В этой книге также есть пример проекта (магазина электронной коммерции), который объединяет коллекцию шаблонов и принципов проектирования. Это поможет вам понять, как они сочетаются друг с другом.

Комментарии:

1. Что ж, спасибо, но я считаю, что должно быть возможно продемонстрировать все принципы в одном проекте. Конечно, я не имел в виду все принципы в 1 классе.

2. Это вполне возможно — пример проекта, о котором я упоминал, очень полезен, поскольку он охватывает обоснование использования каждого принципа или шаблона, что, возможно, более полезно, чем знание того, что делает каждый шаблон.