Open/Closed Principle – zastosowanie OCP

Wyobraźmy sobie teraz hipotetycznie, że przychodzi nasz klient dla którego robimy aplikację i pojawia się nowy wymóg, który zmienia sposób działania naszej aplikacji w niektórych przypadkach. I to jest częsta, bardzo życiowa sytuacja która zdarza się nieustannie. I tak się składa, że firma postanowiła dodać nowy typ mycia Premium i potrzebujemy mechanizmu do obsługi tego nowego typu mycia.

Open/Closed Principle – OCP

Zasada otwarte/zamknięte lub OCP to jest druga z zasad SOLID, która mówi nam, że jednostki oprogramowania, takie jak moduły, klasy, funkcje i tak dalej, powinny być otwarte na rozszerzanie, ale zamknięte na modyfikacje.
Czyli powinna istnieć możliwość zmiany zachowania metody
bez konieczności edytowania jej kodu źródłowego.

Single Responsibility Principle – zastosowanie SRP

Ile obowiązków znaleźliście w CarWash?
Przedstawie teraz wszystkie które mogliście zauważyć.
1) Wszędzie tam, gdzie to robimy, Console.WriteLines(„coś”);
– jest przykładem tego, jak chcemy logować wszystko to co zachodzi w naszej aplikacji.

Single Responsibility Principle – SRP – aplikacja

Dobrze tak jak już powiedziałem wystarczy już tych rozważań teoretycznych tego nudzenia i przejdźmy do praktycznego zastosowanie a wszystko stanie się jasne i proste, a najlepszy jest praktyczny, życiowy przykład !!!

Single Responsibility Principle – SRP

Oznacza to, że nasze klasy czy metody powinny posiadać tylko jedną odpowiedzialność. Nie powinien istnieć więcej niż jeden powód abyśmy chcieli zmodyfikować naszą klasę. Nie możemy tworzyć fabryki, która produkuje wszystko statki, rowery, samochody i jednocześnie szyje spodnie. Każda klasa powinna być odpowiedzialna za jedną rzecz.

Jak Zastosować 5 Zasad SOLID ?

Postaram się wam teraz przedstawić ogólne zasady, jakie powinny być stosowane aby pisać dobry kod. Zapewne wszyscy chcielibyśmy aby nasze aplikacje jak i ich architektura była jak najwyższej jakości.

Bubble sort

Bubble sort is the simplest sorting algorithm that works by repeatedly replacing adjacent items if they are in the wrong order.

Sortowanie Bąbelkowe

Sortowanie bąbelkowe to najprostszy algorytm sortowania, który działa poprzez wielokrotne zamianie sąsiednich elementów, jeśli są one w niewłaściwej kolejności.

Insertion Sort

Insertion sort is a simple sort algorithm
that works similar to the way playing cards sort.

Linear Search

Let’s say we have array[] that consists of n elements.
And now our task is to write a method that will find the element selected by us in this array.

Sortowanie Przez Wstawianie

Sortowanie przez wstawianie to prosty algorytm sortowania,
który działa podobnie do sposobu sortowania kart do gry.

Wyszukiwanie liniowe

Powiedzmy, że mamy tablicę array[] która składa się z n elementów.
I teraz naszym zadaniem jest napisać metodę, która znajdzie wybrany przez Nas element w tej tablicy.