Nie wiedziałem także, że Angular i Java otworzy przede mną wiele nowych możliwości...
Był grudzień 2018, gdy po raz pierwszy usłyszałem o tym nowym frameworku, jakim był Angular oparty o język programowania Type Script.
Znajomy, z którym obecnie pracowałem spytał się mnie czy słyszałem, że wyszedł nowy Angular.
W tym czasie pracowałem jako fullstack developer łącząc takie technologie jak: Angular JS i Java (Angular JS pierwsza wersja Angulara). Moje nastawienie do Angulara JS nie było zbyt przyjazne, z tego względu nie byłem za bardzo podekscytowany pytaniem znajomego.
Po krótkiej rozmowie dowiedziałem się, że nowością, którą dostarczał nowy Angular był Type Script oraz przejrzysta architektura i bez wątpienia były to argumenty, który trafiły do mnie jako do Java developera.
Czemu ta informacja była taka ważna?
Type Script jest językiem posiadającym wiele podobieństw, które dostarcza Java.
Type Script wprowadza m.in. takie konstrukcje jak:
– Klasy
– Silne typowanie
– Dekoratory (Adnotacje z Javy)
– Gettery i settery
Pierwsza myśl, jaka pojawiła się w mojej głowie to:
Jak się później okazało, było to zbyt optymistyczne założenie.
Jak zacząłem swoją naukę?
Wróciłem do domu, była godzina mniej więcej 19:15 i od razu zabrałem się za naukę nowego frameworka, jakim był Angular.
Zacząłem od czytania dokumentacji. Wtedy nie była jeszcze tak rozbudowana, jak obecnie.
Przeszukałem także GitHuba pod kątem projektu, który byłby już skonfigurowany i z którego mógłbym się nauczyć podstaw. Mój plan na ten dzień zakładał, że wrócę do domu odpalę pierwszy projekt i zacznę pisać własną aplikację.
Niestety nie okazało się to takie proste, jak pierwotnie zakładałem. Zanim odpaliłem pierwszy projekt minął mniej więcej tydzień.
Prawdopodobnie błędem, jaki wtedy popełniłem to fakt, że nie doczytałem nic na temat Angular CLI, który znacząco ułatwia pracę oraz zarządzanie aplikacją.
Powszechnie znaną praktyką wśród programistów jest nauka poprzez pisanie własnej aplikacji. Postanowiłem iść tą samą drogą. Pomysł nie był zbyt wygórowany, natomiast na tyle uniwersalny, żeby umożliwić naukę. Zacząłem pisać aplikację TODO z możliwością wbijania leveli jak w grze RPG.
Pierwsza wersja aplikacji
Moje pierwsze spotkanie z Angularem JS przypada na połowę 2016 roku. Nie byłem wielkim fanem tego frameworka.
Moja nauka była raczej wymuszona poprzez projekt, w którym aktualnie pracowałem. Szukałem natomiast rozwiązania, które umożliwiłoby mi pisanie aplikacji po stronie frontendu przy jednoczesnym wykorzystaniu zdobytej wiedzy ze świata Javy i Springa. Taką możliwość udostępnia właśnie nowy Angular.
Pierwsza wersja aplikacji powstała przy użyciu czystego HTML’a oraz Java Scriptu i wyglądała mniej więcej jak poniżej:
Nie było to dzieło sztuki, ale zacząłem ją pisać, gdy zdobywałem jeszcze pierwsze doświadczenie po stronie frontendu. Miałem w głowie wizję aplikacji, jaką chciałbym stworzyć, natomiast ówcześnie nie posiadałem jeszcze takich umiejętności. Wszystko miało się zmienić w ciągu kilkunastu kolejnych miesięcy.
Nauka nowego Angulara była umotywowana tym aby przenieść powyższą aplikację i rozwinąć ją w taki sposób, aby spełniała wymagania, o których wspomniałem wyżej.
W miarę zdobywania doświadczenia, aplikacja rozrastała się i dodawałem nowe funkcjonalności. Jedna z ostatnich wersji aplikacji wyglądała jak poniżej.
Jak widzisz, wygląd aplikacji znacząco się poprawił i zyskał na jakości.
Ważne wnioski jakie wyciągnąłem podczas nauki
– CSSy potrafią być dla Java developera stoperem (wiele rozmów z Java developerami także to potwierdza) – w tym artykule znajdziesz rozwiązanie
– pisanie w Angularze i Type Scripcie tak samo, jak w Javie jest błędem, który prędzej czy później do Ciebie wróci
– pisanie wszystkiego od nowa nie jest najbardziej efektywnym sposobem tworzenia aplikacji (warto wiedzieć o gotowych komponentach i bibliotekach) – poznaj biblioteki
– warto poświęcić chwilę czasu na podstawy, zanim skoczy się na głęboką wodę pisania aplikacji SaaS
Podsumowanie
Zastanawiasz się zapewne czy sam pisałem wszystkie komponenty i funkcjonalności przy drugiej wersji aplikacji? Odpowiedź brzmi: na szczęście nie.
Przy pierwszej wersji aplikacji miałem plan, żeby pisać wszystko samemu i od nowa.
O wiele lepszym rozwiązaniem jest zastosowanie istniejących rozwiązań, jakie dostępne są na rynku.
Jeżeli jesteś ciekaw, jakie rozwiązania pozwolą Ci w znacznie szybszy sposób rozpocząć naukę Angulara oraz pozwolą Ci uniknąć najczęściej popełnianych błędów, zachęcam abyś dołączył do procesu, w którym przedstawiam m.in.:
Dołącz do procesu
1. Wprowadzenie
2. Teoria
3. CSS
4. Praktyka
5. Praca z aplikacją
1. Wprowadzenie
2. Teoria
3. CSS
4. Praktyka
5. Praca z aplikacją
