Tworzenie kodu według najlepszych praktyk
2 godz. 45 min · Full-stack i Programowanie
Rafał PiekaraSoftware KomandosNie zrozumiesz SOLIDa bez teoretycznych podstaw. Przejdziemy przez założenia stojące za każdą z nich. Przeanalizujemy problemy, które możesz spotkać oraz dowiesz się dlaczego ciągle jeszcze tak wielu programistów nie stosuje się do tych zasad.
Ruby i Typescript to technologie, które świetnie odzwierciedlają uniwersalizm SOLIDa. Te złote zasady działają w językach dynamicznie typowanych i interpretowanych jak Ruby oraz przy statycznym typowaniu na przykładzie Typescript.
Zanim zabierzesz się za programowanie warto poćwiczyć SOLIDny sposób myślenia. Zmierzysz się z zadaniami, w ramach których będziesz projektować kod tak, aby wszystkie zasady SOLID znalazły w nim swoje zastosowanie.
Prawda jest taka, że kod, z którym w większości pracujemy ma swoją historię. Czasami historia ta jest tak bolesna, że klasy i metody są zagmatwane, poplątane i trudne w utrzymaniu. Gdy dotrzesz do tego miejsca będziesz mieć w arsenale wszystkie potrzebne narzędzia, żeby zmierzyć się z zadaniami praktycznymi, które przekształcą kod legacy w SOLIDne arcydzieło.
Tak ważny temat, jak testowanie nie może zostać pominięty. Między innymi po to też stosujemy zasady SOLID, żeby nasz kod praktycznie sam się testował. Napiszesz więc testy, których wzorce możesz wykorzystać w dowolnym projekcie, dowolnej technologii, jeśli tylko kod, który testujesz będzie spełniał wymagania zasad SOLID.
Nie ma znaczenia, czy dopiero zaczynasz przygodę z programowaniem, czy też jesteś starym wyjadaczem, który klasami i interfejsami myśli przy zagryzaniu tosta na śniadanie. Ten kurs jest właśnie dla Ciebie. Technologia ani język programowania też nie mają znaczenia. Zasady SOLID to uniwersalny zbiór. Ich znajomość sprawi, że Twój kod będzie lepszy, łatwiejszy w utrzymaniu i odporny na perturbacje i zmiany.
W poprzedniej lekcji mówiłem ci, że back end to strażnik biznesu.
Co rozumiem przez to, że jest strażnikiem?
Wszelkie reguły biznesowe w aplikacjach często są zaszyte na back end ie.
Klienckie aplikacje typu frontend mobile dokonują zapisu i odczytu, komunikując
się przez interfejs API z back end.
Natomiast back end odpowiada za procesowanie, odpowiednie procesowanie
danych, budowanie struktur danych i pilnowanie nie zmienników biznesowych.
Wobec tego back end jest tak istotny.
W oprogramowaniu jest tak ważne, żeby reguły biznesowe na back end były
odpowiednio chronione nie tylko poprzez zamienniki, które sobie kodujemy w kodzie.
Zapiszemy je tworząc metody klasy, ale też przez dobre praktyki i wzorce.
Back end wykonuje bezpośrednie interakcje z danymi, bezpośrednio
rozmawia z bazą danych.
Często back end wymienia się z innymi usługami danymi.
Czy to są zdarzenia, czy to są jakiegoś różnego rodzaju wiadomości, komendy
czy otwarte API dla integracji?
Będzie bezpośrednia interakcja z danymi.
Dlatego tak ważne jest zabezpieczenie kontraktu.
I są zasady.
Wśród tych 5 zasad SOLID, które pilnują tego, żeby odpowiednio zbudować kontrakt,
tak aby był bezpieczny i używany.
a co za tym idzie także stabilny.
Wymaga to pewnej wyważonej ewolucji.
O ile zmiany na frontendu mogą być dokonywane dynamicznie, bo może zmienić
się już i tak naprawdę bez konieczności interakcji, zmian, interakcji z logiką, to
wszelka zmiana na backend może pociągać za sobą wielkie konsekwencje.
Dlatego konieczna jest wyważona ewolucja i zasady SOLID Te wyważoną
ewolucję będą ułatwiać.
Back end jest bardzo wrażliwy na błędy.
Może być także jeden mały błąd na backend nie będzie miał olbrzymie impakt na
wszystkie aplikacje klienckie i integracje, które z tym
back endem rozmawiać.
Back end będzie bardzo wrażliwy na błędy, wobec czego musimy zapewnić
sobie jako programiści backendu pewne narzędzia i dobre praktyki, a nie ma
lepszych praktyk niż zasady SOLID, które są dobrze rozumiane przez wszystkich
programistów na całym świecie.