Daj Się Poznać 2017
Minął kolejny tydzień prac nad Habit Trackerem. Co udało mi się zrobić? Zapraszam na podsumowanie minionego tygodnia!
Nauka, nauka, nauka
Nie ukrywam, że ten tydzień minął głównie pod znakiem nauki Angulara 2. Zrobiłam kurs Accelerating Through Angular na Code School, który bardzo polecam. Aplikacja budowana w ramach kursu naprawdę pozwala poznać (albo utrwalić) podstawy. Skupiłam się też na TypeScript przechodząc przez tutorial na oficjalnej stronie. Mam wrażenie, że wiedza powoli zaczyna mi się układać w głowie i patrząc na kod, zaczynam zauważać pewnie reguły, które nim kierują. Code School ma też bardzo fajny cykl Watch Us Build, gdzie można obserwować pracę nad aplikacją na żywo, nie gotowy kurs, ale po prostu nagranie z rozwijania funkcjonalności aplikacji. W Watch Us Build: Angular skupiono się na pokazaniu, na czym polega interakcja między komponentami oraz routing, co było bardzo ciekawe i prosto przedstawione. Teraz jestem w trakcie przeglądania kursu Get Started with Angular 2 na EggHead i już mogę powiedzieć, że mi się podoba. Filmiki są bardzo krótkie i dotyczą konkretnego zagadnienia, dlatego łatwo się poruszać po dostępnych materiałach i szybko znależć wytłumaczenie zagadnienia, którego szukamy. Niestety oba kursy, o których piszę nie są dostępne za darmo. Mam zamiar w najbliższym czasie przedstawić krótki raport z mojej nauki Angulara 1 oraz 2. Uczę się obu wersji od podstaw sama i chcę się podzielić przemyśleniami oraz materiałami.
Angular 2.x
Powróćmy jednak do Habit Trackera. Tych z was, którzy chcą zobaczyć demo, odsyłam do poprzedniego raportu, gdzie można znaleźć link do pierwszej wersji demo. W tym tygodniu rozwijałam aplikację w dużej mierze w Angularze 2, czyli w tym repozytorium. Udało mi się zbudować wstępną strukturę projektu, to znaczy dodać wszystkie potrzebne komponenty, wskazać im template oraz plik css. Ogromnie zadania ułatwia mi Angular CLI, który jest po prostu niesamowitym narzędziem. Pierwszy raz się z czymś takim spotykam, pewnie stąd moja fascynacja. Ale możliwość tworzenia całych modułów czy komponentów za pomocą konsoli, po prostu skradła moje serce. Nie trzeba ręcznie tworzyć i zapisywać tych wszystkich plików, wystarczy prosta komenda i wszystko gotowe. Na podstawie obejrzanych kursów udało mi się też wprowadzić do aplikacji routing. Strona więc pokazuje różne widoki bez przeładowania. Jeszcze nie są gotowe same widoki (tzn. kod html i css), ale dodanie ich to kwestia najbliższych dni. Sukces przy budowaniu struktury i dodawaniu routingu bardzo mnie podbudował, bo powoli zaczynałam tracić nadzieję, że uda mi się w jakimkolwiek stopniu opanować Angulara 2. Wydał mi się na tyle inny od wersji 1, że trudno było mi się przestawić. Ale na szczęście powoli zmierzam w dobrym kierunku 🙂
Angular 1.x
Zachwycając się komendami w Angular CLI, nie porzuciłam aplikacji w Angularze 1 (czyli w tym repozytorium). Celem na ten tydzień było dodanie możliwości logowania przez Facebooka. Już nawet nie zdziwił mnie fakt, że okazało się to trudniejsze, niż wydawało się na początku. Niemniej jednak, udało mi się dużo o tym poczytać, znalazłam sporo artykułów, tutoriali i filmików na youtube, na podstawie których zaczęłam powoli modyfikować kod, tak żeby tę funkcjonalność wprowadzić. Dużo czasu pochłonęła też lektura dokumentacji na stronie Facebook for developers, gdzie utworzyłam konto oraz pierwszą aplikację. Muszę przyznać, że dokumentacja jest naprawdę świetnie zrobiona. Niestety, nie ma gotowego modułu dla AngularJS, który szybko wprowadziłby logowanie w aplikacji, ale jest oczywiście kilka sposobów, żeby to obejść. Na razie testuję, zobaczymy, co z tego wyjdzie.
Blog i fanpage
Nie wspominałam chyba jeszcze w żadnym raporcie o pracach, które równolegle prowadzę na blogu. Blog powstał na potrzeby konkursu, był więc bardzo, bardzo generyczny na początku. Stopniowo dodaję do niego kolejne funkcjonalności. Ostatnio zmieniłam też szablon, co pewnie zauważyliście. W tym tygodniu pojawiła się też dodatkowa strona Zacznij tutaj, która zbiera główne wątki z bloga i pozwala odnaleźć interesujące treści. Cały czas zgłębiam też temat SEO, Google Analytics czy Pop-upów (pojawią się pewnie na dniach). Przymierzam się też do wprowadzenia modyfikacji w szablonie, ale na razie brakuje mi czasu, żeby sobie odświeżyć wiedze z PHP i WordPressa, bo zajmuję się głównie Angularem. Ale jak tylko znajdę chwilę, na pewno zacznę coś tutaj testować. Dodatkowo codziennie staram się wrzucać jakieś ciekawe linki związane z nauką programowania albo wydarzeniami w IT na fanpage Wake up and Code. Jeśli chcecie być na bieżąco, zapraszam do polubienia 🙂
Plany na kolejny tydzień
Planuję przede wszystkim dalszy rozwój aplikacji w Angularze 2. Chcę zacząć od budowy listy nawyków, bo to była najbardziej skomplikowana rzecz w aplikacji w wersji 1. Zależy mi na poznaniu różnić między obiema wersjami i spróbowaniu swoich sił w migracji funkcjonalności aplikacji do wersji 2. Jeśli chodzi o wersję 1, tutaj nadal chcę pracować nad implementacją logowania. Jeśli czas pozwoli, zajmę się też poprawieniem walidacji formularza dodawania nawyków.
To by było na tyle. Trzymajcie kciuki za rozwój aplikacji, bo to właściwie ostatnia prosta! 🙂