Tujuan saya adalah untuk memigrasi aplikasi web yang ada ke aplikasi satu halaman RESTful (SPA). Saat ini, saya sedang mengevaluasi beberapa framework aplikasi web Javascript.
Persyaratan saya adalah sebagai berikut:
- Lapisan data tenang (seperti ember-data)
- MV * -struktur
- Rute dinamis
- Pengujian-dukungan
- Pengkodean dengan konvensi
- Dukungan SEO
- Dukungan-Sejarah-Browser
- Dokumentasi yang baik (API-)
- Siap produksi
- Komunitas yang hidup
Tulang punggung
Aplikasi saat ini menggunakan backbone.js
. Secara keseluruhan, backbone.js
ini adalah proyek yang bagus, tetapi saya kehilangan struktur yang terdefinisi dengan baik yang menentukan di mana apa yang harus terjadi dan bagaimana hal-hal harus dilaksanakan. Bekerja dalam tim yang lebih besar dengan pengembang yang berubah-ubah, hal ini mengarah pada semacam kode yang tidak terstruktur, sulit dipelihara, dan sulit dipahami. Inilah mengapa saya sekarang mencari kerangka kerja, yang sudah mendefinisikan semua hal ini.
Bara
Saya melihat ke ember.js
hari-hari terakhir. Pendekatannya tampaknya sangat menjanjikan bagi saya. Tapi, sayangnya, kodenya berubah hampir setiap hari. Jadi, saya tidak akan menyebutnya siap produksi. Dan, sayangnya, kami tidak sabar menunggu ini menjadi versi 1.0. Tapi saya sangat menyukai ide di balik kerangka ini.
Angular
Angular.js
juga merupakan kerangka kerja yang tersebar luas, dikelola oleh Google. Tapi saya tidak bisa terbiasa dengan sudut. Bagi saya, strukturnya tampak agak tidak jelas, penjelasan yang hilang tentang tanggung jawab keseluruhan dari setiap bagian kerangka, dan implementasinya terasa berputar-putar. Hanya untuk meluruskan ini: ini hanya kesan pribadi saya dan mungkin didasarkan pada pengetahuan yang hilang.
Batman dan Meteor
Seperti yang saya pahami, kedua kerangka kerja membutuhkan bagian server juga. Dan karena kami hanya menginginkan backend yang tenang - tidak peduli bahasa, teknik, atau perangkat lunaknya, ini bukanlah yang kami inginkan. Selanjutnya, API backend sudah ada (RoR).
Knockout , CanJS dan Spine
Saya tidak membahas lebih dalam tentang ketiga kandidat ini. Mungkin ini akan menjadi langkah saya selanjutnya.
Jadi pertanyaan saya sekarang:
- Apakah saya melewatkan SPA-framework yang bagus?
- Kerangka apa yang akan Anda sarankan / rekomendasikan?
- Apakah Anda akan menghindari salah satu kerangka kerja yang disebutkan?
- Apa pengalaman Anda dalam aplikasi SP yang lebih besar?
NB: Saya ingin merekomendasikan posting blog yang bagus dari Steven Anderson (pengembang inti dari Knockout.js) tentang konferensi "Tahta JS" (dari 2012) dan kerangka kerja javascript secara umum.
PS: Ya saya tahu sudah ada beberapa pertanyaan tentang SO. Namun karena perkembangan yang begitu pesat dan pesat untuk SPA, kebanyakan dari mereka sudah ketinggalan zaman.