AngularJS (nie) nadaje
się do dużych pojektów.
Rafał Filipek
keybase.io/rafalfilipek
+
=
galactic cannibalism
• Logiczny podział części aplikacji
• Łatwość developmentu
• Ograniczenie udziału programistów w sprawach UI
• Relatywnie niewysoki próg wejścia w projekt
• Nie chciałem “zwariować”
• Zmieniające się założenia biznesowe
• Zmieniający się UI
• Zmieniający się zestaw modułów
• Utrzymanie wydajności
• Estetyka kodu
Czego używamy?
• AngularJS
• CoffeeScript
• Jade
• Stylus
• Gulp / Make / Jake
• Karma / Protractor
A
MAILS
DRAFTS ABOOK
COMMONDEV
GALLERY
OPTIONS
SEARCH LABELS
APP
…
MAILS
DRAFTS
ABOOK
COMMON
DEV
GALLERY
OPTIONS
SEARCH
LABELS
APP
COMMON
APP
DEMO TIME
function cleanupLastView() {
if (previousEl) {
previousEl.remove();
previousEl = null;
}
//…
}
DEMO TIME
ngRepeat(collection).speed === ‘f-word slow’
DEMO TIME
“MARUDERZY”
Two way data binding
• DIY
https://gist.github.com/austinhyde/4321f22a476e1cb
ee65f
• ♥ formularze
• “ktoś”, “gdzieś”, “kiedyś” musi przekazać dane
DEMO TIME
Angular is hard to
learn.
Na koniec
Dziękuję

AngularJS (nie) nadaje się do dużego projektu

Editor's Notes

  • #4 Połączenie 2 firm. Nowa firma. Nowe projekty. Nowa jakość. Nowa poczta. Backend
  • #5 Dalej mówię o tym jak to wygląda w części frontend. o2, wp. Co chciałem uzyskać.
  • #7 Dlaczego Angular? W wp.pl - GWT, jQuery W o2.pl - Backbone, prototype
  • #8 Dlaczego powiedziałem, że nie chcę zwariować? Biznes wie, że nie ma “bo to stare i nikt tego nie ruszy” Chcemy testować rzeczy Wszyscy mają pomysły
  • #10 CoffeeScript. hoisting, ES6, flow, atScript Jade: słaby kompilator, wolny. Gulp / Make / Jake: nie ma rozwiązania idealnego Karam / Protractor: jak wywalilismy browserify to jest okej ;)
  • #11 Dlaczego podział aplikacji jest ważny. Dlaczego w końcu skończy się z takim podziałem.
  • #14 Widoki są rerenderowane cały czas. Cache jest na szablon, dane ale nie wygenerowany html. Feel jest słaby przy skomplikowanych widokach.
  • #15 Powidzieć o czasie.
  • #16 Czasami ilość danych które trzeba wyrenderować jest za duża dla Angulara. Jak wygląda to w praktyce. Co można na to poradzić? Karol Jastrzębowski z GoldenLine
  • #24 No server side rendering without obscure hacks. Google does not use Angular in production for their flag apps like Gmail or Gplus. Vendor lock. And because Google does not use Angular in production, they can kill Angular anytime.