Aby dać krótką, uproszczoną odpowiedź: w przypadku zaplecza RESTful, w tej chwili powinieneś użyć Backbone.
Aby udzielić bardziej złożonej odpowiedzi: to naprawdę zależy od tego, co robisz. Jak powiedzieli inni, Ember jest przeznaczony do różnych celów i spodoba się innym grupom ludzi. Moja krótka odpowiedź opiera się na włączeniu przez Ciebie wymagania RESTful.
W tej chwili Ember-Data (który wydaje się być domyślnym mechanizmem trwałości w Ember) nie jest jeszcze gotowy do produkcji. Oznacza to, że ma sporo błędów i, co najważniejsze, nie obsługuje zagnieżdżonych identyfikatorów URI (na przykład / posts / 2 / comments / 4556). Jeśli REST jest twoim wymaganiem, na razie będziesz musiał obejść ten problem, jeśli wybierzesz Ember (tj. Będziesz musiał go włamać, poczekać, zaimplementować coś takiego jak Ember-Data od zera lub nie używać -very-RESTful URI). Ember-Data nie jest ściśle częścią Ember, więc jest to całkowicie możliwe.
Główne różnice między nimi, oprócz wielkości, to w zasadzie:
Ember stara się zrobić dla Ciebie jak najwięcej, abyś nie musiał pisać tak dużo kodu. Jest bardzo hierarchiczna i jeśli Twoja aplikacja jest również bardzo hierarchiczna, prawdopodobnie będzie dobrze pasować. Ponieważ robi tak wiele dla Ciebie, może być trudno dowiedzieć się, skąd pochodzą błędy i wyjaśnić, dlaczego dochodzi do nieoczekiwanego zachowania (jest dużo „magii”). Jeśli jednak masz aplikację, która w naturalny sposób pasuje do typu aplikacji, którą zamierza tworzyć Ember, prawdopodobnie nie będzie to problem.
Backbone stara się robić jak najmniej dla Ciebie, abyś mógł zastanowić się nad tym, co się dzieje i zbudować architekturę pasującą do Twojej aplikacji (zamiast budować aplikację, która pasuje do architektury używanego frameworka). O wiele łatwiej jest zacząć, ale jeśli nie jesteś ostrożny, możesz bardzo szybko skończyć z bałaganem. Nie robi rzeczy takich jak obliczone właściwości, automatyczne rozpinanie zdarzeń itp. I pozostawia je tobie, więc będziesz musiał sam zaimplementować wiele rzeczy (lub przynajmniej wybrać biblioteki, które robią to za ciebie), chociaż to jest raczej cały punkt.
Aktualizacja : Wygląda na to, że od niedawna Ember obsługuje teraz zagnieżdżone identyfikatory URI, więc przypuszczam, że pytanie sprowadza się do tego, jak bardzo lubisz magię i czy Ember dobrze pasuje architektonicznie do Twojej aplikacji.