Making Dooitkoo – Bagian 6 : The Client

Di sisi klien (browser) saya pakai beberapa library, yang utama adalah KnockoutJS, sebuah library javascript yang menyediakan fasilitas data-binding antara elemen HTML dan data (model). Selain Knockout, saya juga pake antara lain:

  • jquery
  • moment
  • accounting
  • toastr
  • yepnope
  • amplify

Karena saya terbiasa koding pake bahasa yang strongly & statically-typed (ActionScript 3.0), pengalaman pertama dengan JavaScript terasa sangat menyebalkan. Error ga jelas, ga ada compile-time checking, refactoring yg kadang malah bikin error, dsb. Tapi karena udah niat belajar untuk menguasai JavaScript, sebelnya ditahan-tahan aja. Lama-lama juga terbiasa.

Struktur aplikasi

Struktur klien ga terlalu rumit. Hanya ada 4 komponen utama yaitu:

  1. ViewModel
  2. Data Object
  3. Modul Data Service. Semua request ke server harus lewat module ini.
  4. Publisher-subscriber (pub-sub) channel. Mirip konsep event-bus di flash/flex.

Continue reading Making Dooitkoo – Bagian 6 : The Client