Flux i Redux

Gdy opisywałem sposoby komunikacji pomiędzy kontrolerami w AngularJS, poniekąd celowo pominąłem pewną alternatywę, która zyskuje ostatnio sporą popularność: Architekturę Flux. Nie wspominałem o Fluksie głównie ze względu na to, że to koncept trochę szerszy niż prosta komunikacja pomiędzy elementami aplikacji o jakiej traktował tamten wpis. Jednak praktycznie na codzień sam korzystam teraz z implementacji architektury Flux razem z AngularJS 1.5, więc chciałbym o tym koncepcie …

Wstęp do Angular 2

Ten wpis jest 1 częścią z 5 w kursie Angular 2

Obiecywałem i oto jest: Mój wstęp do tworzenia aplikacji w Angular 2. Chciałbym omówić tutaj podstawy nowego frameworka oraz narzędzia Angular CLI na przykładzie zbudowania od zera prostej Single Page Application – listy zadań. Jest to typowy, wielokrotnie powielany przykład używany do szybkiego poznania nowych front-endowych narzędzi. W tym kursie korzystam z TypeScript, więc jeśli jeszcze nie znasz tego języka to zapraszam do mojego kursu TypeScript: …

Struktura aplikacji AngularJS (część 2 ‑ komponenty)

W poprzednim artykule z tej serii opowiadałem bardziej o osobistych doświadczeniach z początków pracy z AngularJS 1.0 oraz o drodze jaką przebyło środowisko AngularJS – w skrócie od bałaganu aż do komponentów. Wspomniałem tam również, że AngularJS 1.5 wprowadził nową pomocniczą funkcję angular.component(…) i na jej wykorzystaniu chciałbym się skupić w tym wpisie. W tym celu napiszę bardzo prosty komponent – listę kontaktów z avatarami. Jeśli z jakiegoś powodu …

Struktura aplikacji AngularJS (część 1 ‑ trochę historii)

W trakcie kilku ostatnich lat pracy z AngularJS obserwuję całkowitą zmianę podejścia do architektury aplikacji internetowych. Była to powolna ewolucja, po drodze mocno inspirowana dobrymi wzorcami projektowymi, szkicem Web Components oraz biblioteką React. Sublimacją tego wysiłku jest powstanie angular2, ale wszystkie wypracowane praktyki wdrożono również do AngularJS 1. Od bałaganu, porozrzucanych zależnych od siebie kontrolerów i pomieszanych scope’ów doszliśmy w końcu do czegoś co …

Komunikacja pomiędzy kontrolerami w AngularJS

Jednym z aspektów sprawiających trudność w AngularJS, który wciąż i wciąż powraca w moich rozmowach z różnymi programistami jest prawidłowa implementacja komunikacji pomiędzy modułami. Dokumentacja i poradniki najczęściej opisują tylko najbardziej podstawowe przykłady porozumiewania się np. pomiędzy komponentem-rodzicem a komponentem-dzieckiem, co w zasadzie nie sprawia problemu. Co jednak w przypadku, gdy komunikacja musi zachodzić w obu kierunkach albo pomiędzy komponentami, które w strukturze aplikacji są od siebie odległe? Aby problem …

AngularJS i SEO

AngularJS i SEO Wielokrotnie na licznych forach, grupach dyskusyjnych i spotkaniach pada pytanie odnośnie AngularJS i SEO. Jak to zrobić? Jak sprawić, by wyszukiwarki indeksowały strony www oparte o frameworki JavaScript? Jak poprawić podgląd udostępnianych linków do Single Page Application na Facebooku? Jak uzyskać lepsze rezultaty? Co prawda poniższy wpis skupia się na Angularze, jednak zawarte w nim porady można z powodzeniem …

ASI czyli automatyczne wstawianie średników

Specyfikacja ECMAScript zawiera w sobie wiele zaskakujących elementów i mechanizmów, i gorąco polecam się z nią zapoznać. Jeśli język, którym napisano specyfikację wydaje się być odstraszający, to warto przeczytać chociaż serię artykułów ECMA-262-3 in detail i ECMA-262-5 in detail których autorem jest Dmitry Soshnikov. Dmitry omawia w nich specyfikację ES i sposób działania JavaScriptu, ale robi to w sposób bardzo przystępny w zasadzie dla …

Po co TypeScript?

Ten wpis jest 1 częścią z 4 w kursie TypeScript

Jakiś czas temu na Facebookowej grupie JS News: After Hours zadałem pytanie dotyczące szczegółów użycia języka TypeScript razem z node.js. Wiele osób w swoich komentarzach wyrażało jednak wątpliwość względem zastosowania TypeScriptu na serwerze w ogóle, a ponieważ liczba komentarzy była niemała, odniosłem się tam do nich w całkiem długiej odpowiedzi. Teraz postanowiłem zamienić tę odpowiedź we wpis na blogu. Po co …