20+ lat programowania, kilkanaście lat za granicą, doświadczenie jako Senior Developer, Lead Developer i Software Architect i zamiast kolejnego kanału z 5 zasadami dobrego kodu postanowiłem zrobić eksperyment.Zaczynamy niewinnie i tworzymy potwora.
Od dłuższego czasu chodziła mi po głowie pewna rzecz. W programowaniu bardzo często słyszymy, jak coś robić:
używaj tego wzorca, stosuj tę zasadę, tego nie rób, to jest clean, to jest bad practice...
Tylko że w prawdziwych projektach odpowiedź rzadko jest aż tak prosta.
Po ponad 20 latach programowania, pracy jako Senior Developer, Lead Developer i Software Architect, również w dużych projektach i za granicą, coraz bardziej interesuje mnie nie samo rozwiązanie, ale dlaczego zostało wybrane i jakie będą jego konsekwencje.
Dlatego postanowiłem zrobić mały eksperyment i stworzyć kanał Kod bez dogmatów. Nie chcę zaczynać od:
„Dzisiaj nauczymy się wzorca X i pokażę Wam, jak go poprawnie zastosować.”
Chcę zrobić odwrotnie.
Najpierw pojawia się problem. Potem szukamy rozwiązania. A na końcu sprawdzamy jego konsekwencje.
W pierwszej serii budujemy od zera prosty projekt pizzerii. Zaczynamy od kilku pizz, a następnie dokładamy kolejne wymagania i obserwujemy, jak nasze wcześniejsze decyzje wpływają na dalszy rozwój programu.
Poziom trudności będzie rósł razem z projektem. Początek jest celowo prosty i powinien być przystępny również dla osób, które dopiero zaczynają swoją przygodę z programowaniem. Z każdym kolejnym wymaganiem kod będzie jednak coraz bardziej złożony, więc z czasem pojawią się tematy, które będą interesujące również dla bardziej doświadczonych programistów i architektów.
Jeżeli chcecie, możecie budować ten projekt razem ze mną. Kod jest dostępny na GitHubie, a każdy odcinek ma przypisaną konkretną wersję projektu. Dzięki temu możecie pobrać dokładnie ten stan kodu, który widzicie w danym odcinku, i samodzielnie wykonywać kolejne kroki razem ze mną.
Nie chcę jednak od początku budować „idealnego” rozwiązania. Wcielamy się w programistę, który jest już całkiem dobry, ale jeszcze nie ma doświadczenia, które pozwala mu przewidzieć wszystkie konsekwencje swoich decyzji.
Chcę zobaczyć, czy uda się w ten sposób pokazać coś, czego często brakuje w typowych materiałach programistycznych — proces myślenia stojący za decyzjami.
A kiedy z prostego projektu zrobimy potwora, spróbujemy zobaczyć, czy i jak można go z niego wyciągnąć.
Kod bez dogmatów:
YouTube — https://www.youtube.com/@kodbezdogmatów
Pierwszy odcinek:
Kod źródłowy w opisie filmu.
Nie tylko jak. Przede wszystkim dlaczego.