Untuk pembaca terkini, per Jan 2013, saya mengevaluasi:
- Kinetis
- Kain
- Kertas
- Kuda-kuda
Dengan "dievaluasi", saya melakukan lebih dari sekadar membaca dokumen; Saya membuat aplikasi prototipe.
Saya mulai dengan Fabric karena sepertinya memiliki komunitas terbesar dan berpikir bahwa itu akan menjadi solusi saya. Tapi, saya menyerah pada Fabric karena alasan berikut:
- inkonsistensi API yang aneh dan tidak berdokumen yang menghabiskan banyak waktu saya secara tidak perlu.
- dukungan acara penunjuk tidak konsisten. Secara khusus, Fabric tidak menganggap "Path" sebagai objek bentuk asli yang dapat dipilih dan diamati. Ini tidak memenuhi kebutuhan saya karena Jalur interaktif merupakan persyaratan utama aplikasi saya.
- di balik layar penambahan terjemahan ke Canvas untuk memposisikan objek. Bagi saya, Fabric mencoba menjadi terlalu pintar dalam hal ini tanpa menjelaskan kepada pengembang apa yang dilakukannya.
- pendapat yang terlalu kuat tentang cara kerja interaktivitas memindahkan, mengubah ukuran, dan memutar. Dalam banyak hal, sangat bagus untuk memiliki fungsionalitas ini dibangun ke dalam kerangka kerja tetapi, dalam kasus saya, saya tidak setuju dengan cara penerapannya yang pada dasarnya berarti harus menerapkan ulang sendiri.
- dokumentasi renggang - lot dari kasus-kasus di mana dokumentasi suatu metode dalam bentuk: "setX (Y) - set X ke Y" :-)
Saya melihat Paper dan tidak terlalu jauh. Tampaknya terlalu tumpul bagi saya dan juga termasuk di antara terlalu banyak bangku IMO - itu terlalu banyak perpustakaan visualisasi untuk menjadi model objek sederhana untuk Canvas tetapi itu tidak cukup perpustakaan visualisasi untuk bersaing dengan D3. Plus, dokumentasinya lagi-lagi tidak bisa diakses secara khusus.
Saya pikir Easel mungkin sangat masuk akal jika Anda memiliki latar belakang Flash / ActionScript tetapi saya tidak. Plus, tampaknya terlalu berfokus pada permainan untuk kebutuhan saya. Paku di peti mati lagi-lagi dokumentasi - tidak cukup dan disajikan dalam format non-standar.
Jadi, saya akhirnya memilih Kinetic karena:
- tutorial dan contoh yang sangat kaya dan jelas
- Fungsi API melakukan apa yang mereka sebut dan sebagian besar dapat ditebak - produktivitas yang lebih cepat, kurva pembelajaran yang lebih dangkal
- cukup jelas tentang apa yang dilakukannya dan apa yang tidak - tidak sekaya beberapa yang lain tetapi itu adalah keuntungan; ia melakukan lebih sedikit hal tetapi melakukannya dengan lebih baik
- Paths adalah Bentuk warga kelas satu, seperti Bentuk lainnya, yang penting untuk kebutuhan saya.
Kinetic tidak sempurna dengan cara apa pun dan ada beberapa kali ketika saya harus mendalami kode sumber untuk mengetahui apa yang sebenarnya terjadi di balik penutup. Plus, saya merindukan parsing SVG dan keluaran Fabric.