[quote=zlw]trochę odgrzebię temat
jeżeli już zdecydujemy się rozdzielić appke na API i frontend w JS to co waszym zdaniem jest najlepszym wyborem (mówię tu o frameworkach js)? To co pierwsze “rzuca się w oczy” to Sproutcore, Backbone.js, Cappucino, Spine, JavaScriptMVC i pewnie multum innych.
Cappucino odrzucam na wstępnie ze względu na składnie Obj-J a’la Obj-C.
Najbardziej podoba mi się Sproutcore, ale nie ma w dokumentacji nic o podpięciu do server-side API (jest coś tylko w deprecated wiki). Backbone i Spine natomiast wspominają o podpięciu Railsów (co prawda to może być każde inne RESTowe API, ale fajnie że podają akurat na przykładzie ror).[/quote]
Sproutcore jak sam zauważyłeś jest słabo udokumentowany, więc jakbyś zaczynał to przygotuj się do kopania w kodzie Pisałem plugin do railsów, do łatwego spięcia sproutcore’a i railsów: https://github.com/drogus/bulk_api, w teorii wystarczy określić tylko jakie modele chcesz udostępnić i używasz BulkApi datasource. Pomysł i częściowo API było Yehudy, ja to zaimplementowałem jako eksperyment, ale to się raczej nie sprawdzi dla bardziej skomplikowanych case’ów. Dodatkowo datastore jest z czasów 1.x i też nie wiadomo czy nie będzie przepisany. Jednym słowem grząski grunt jeżeli oczekujesz czegoś kompletnego na tą chwilę. Prawdopodobnie w najbliższych tygodniach będę robił coś w strobę poprawienia sytuacji, ale nie wiadomo czy i kiedy coś z tego wyjdzie.
Co do samego pytania, to tutaj akurat mógłbyś korzystać z deprecated wiki, bo nie ma nowego datastore’a dla 2.x, więc wszystko działa tak samo jak w 1.x (jeżeli chodzi o modele i datasource).
Co do Backbone’a, to jest to fajny i malutki projekt, ale nie załatwia Ci automatycznego update’u widoków, więc dalej musisz sam reagować na zmiany. Będę go chyba używał do jednej prostej aplikacji, więc może niedługo będę mógł więcej powiedzieć.
Cappucino wygląda bardzo fajnie, ale dla mnie również odpada ze względu na Obj-J. Dla developerów iosa pewnie to będzie bardzo fajny wybór.
Spine też jest ciekawy, ale twórca go ostatnio zbyt często nie aktualizuje i nie jest zbyt popularny, więc nie wiadomo jak będzie z rozwojem. Ale sprawdzić pewnie warto, być może kod jest na tyle prosty, że nie trzeba się bać.