Moim celem jest migracja istniejącej aplikacji internetowej do aplikacji jednostronicowej RESTful (SPA). Obecnie oceniam kilka frameworków aplikacji internetowych Javascript.
Moje wymagania są następujące:
- Warstwa danych RESTful (jak dane ember)
- MV * - konstrukcja
- Dynamiczne trasy
- Wsparcie w testowaniu
- Kodowanie według konwencji
- Wsparcie SEO
- Obsługa historii przeglądarek
- Dobra dokumentacja (API)
- Gotowe do produkcji
- Żywa społeczność
Kręgosłup
Bieżąca aplikacja używa backbone.js
. Ogólnie rzecz biorąc, backbone.js
jest to fajny projekt, ale brakuje mi dobrze zdefiniowanych struktur, które określają, gdzie ma się wydarzyć i jak należy wdrażać. Praca w większym zespole ze zmieniającymi się programistami prowadzi do powstania pewnego rodzaju nieustrukturyzowanego kodu, trudnego do utrzymania i trudnego do zrozumienia. Dlatego szukam teraz frameworka, który już definiuje to wszystko.
Niedopałek
Spojrzałem na ember.js
ostatnie dni. To podejście wydaje mi się bardzo obiecujące. Ale niestety kod zmienia się prawie codziennie. Więc nie nazwałbym tego gotowym do produkcji. I niestety nie możemy się doczekać, aż będzie to wersja 1.0. Ale bardzo podoba mi się idea tego frameworka.
Kątowy
Angular.js
to również szeroko rozpowszechniony framework, utrzymywany przez Google. Ale nie mogłem zapoznać się z angularem. Dla mnie struktura wydaje się niejasna, brakuje wyjaśnień dotyczących ogólnych obowiązków każdej części frameworka, a implementacje wydają się zawiłe. Aby to wyjaśnić: to tylko moje osobiste wrażenie i może być oparte na brakującej wiedzy.
Batman i Meteor
Jak zrozumiałem, oba frameworki również potrzebują części serwerowej. A ponieważ chcemy tylko zaplecza RESTful - bez względu na język, technologię lub oprogramowanie, nie tego chcemy. Ponadto wewnętrzny interfejs API już istnieje (RoR).
Knockout , CanJS i Spine
Nie wnikałem głębiej w tych trzech kandydatów. Może to będzie mój następny krok.
Więc moje pytania teraz:
- Czy brakuje mi dobrych ram SPA?
- Jakie ramy byś zasugerował / polecił?
- Czy uniknąłbyś któregokolwiek z wymienionych frameworków?
- Jakie masz doświadczenie z większymi aplikacjami SP?
PS: Chciałbym polecić świetny post na blogu Stevena Andersona (głównego programisty z Knockout.js) na temat konferencji „Throne of JS” (od 2012 roku) i ogólnie o frameworkach javascript.
PS: Tak, wiem, że są już pytania dotyczące SO. Ale ponieważ rozwój OSO jest tak szybki i szybki, większość z nich jest już nieaktualna.