
Szybkie wprowadzenie do kursu. Przedstawiam się.
Pierwsze zmiany w projekcie.
Na początek idzie HomeController, zostanie rozbity na dwa mniejsze. Nowa funkcjonalności dostanie pod swoje skrzydła użytkownika.
Część kodu odpowiedzialna za sprawdzanie czy osoba korzystająca aktualnie z aplikacji jest zalogowana, zostanie wydzielona do osobnej klasy.
Dane aplikacji otrzymują dedykowane miejsce tylko dla siebie. Pojawia się zalążek pojęcia baza danych.
Decyzje związane z ludźmi (stan zalogowania, czy dostęp do funkcjonalności) zostanie oddany do logiki biznesowej.
SRP działa nie tylko na kod. To także dobrze ułożony projekt i jego struktura.
Kolejne kawałki kodu z logiką są przenoszone z kontrolera do klasy biznesu.
Wcześniej kod przenoszony był z HomeController do biznesu. Po przejrzeniu kodu, okazuje się że bałagan pozostał także w pierwotnie wydzielonym AuthorizationControllerze. Ponownie logika jest przenoszona z poziomu kontrolerów do poziomu biznesu.
Oprócz klas i kodu, oraz plików, reguła SRP zostaje zastosowana także do widoku logowania i rejestracji. Gdzie metody te zostają rozbite na dwie osobne.
Po rozbiciu logowania i rejestracji na dwie osobne metody, pozostał wspólny kod służący do transportowania danych (DTO). W tym wykładzie zostaje to naprawione.
Odwrócenie zależności. Kontrolery przestają zależeć od biznesu, wprowadzona zostaje abstrakcja z którą pracować będą controlery. Wykorzystany zostaje wbudowany mechanizm IOC dostępny w asp.net core.
Baza danych przechowywała informacje o aktualnym użytkowniku. Wprowadzona zostaje sesja, która zdejmuję tę odpowiedzialność z bazy danych.
Magic number to zła praktyki i zostaje to zamienione na sensownie brzmiącą zmienną.
Klasa biznes, które do tej pory odbierała kontrolerom odpowiedzialność teraz sama zostaje podzielona. Wprowadzona zostaje klasa biznesu, odpowiedzialna za biznes użytkowników.
Na kursie dowiesz się w krótkim czasie czym jest SOLID. Następnie w dłuższym czasie zobaczysz jak zmieniam i refaktoryzuję aplikacje tak aby była zgodna z wcześniej opisanymi regułami SOLID. Wreszcie na koniec zrobię krótki przegląd zmian, opowiem o tym co się stało, dlaczego tak się stało i co można robić dalej. Powiem także czego nie warto robić.