Cerita 3 Framework / Library Frontend dan Saya

Dewasa ini meskipun banyak framework / library frontend yang bisa jadi pilihan tapi pilihannya sepertinya mengerucut menjadi 3 pilihan saja, yaitu Angular, React atau Vue.

Dari sisi siapa yang duluan lahir, Angular lah yang pertama kali muncul dan menggebrak dunia frontend dengan tagline saat versi pertamanya yaitu “Superheroic Javascript” dan juga janji yang dibawanya yaitu, “teach HTML new trick” yang kalo kita terjemahkan ke bahasa Indonesia kurang lebih begini, ajari HTML fitur-fitur baru yang tidak ada jika menggunakan HTML biasa.

Angular begitu cepat terkenal, mungkina karena Google ada di belakang mereka. Para developer mulai memperbincangkan angular dan tutorial-tutorial pun semakin marak, apalagi jika ingat waktu itu, dokumentasi Angular sangatlah buruk. Developer sering dibuat bingung dan tidak ada penjelasan apapun di dokumentasi, atau penjelasan yang ada tidak begitu menjelaskan.

Sebetulnya sebelum Angular, sudah ada yang lebih dulu mengusung konsep MVC di frontend yaitu Backbone JS. Akan tetapi saat itu backbone JS tidaklah terlalu menarik ditengah-tengah popularitas jQuery yang sedang di atas. Bahkan saya pernah membuat tutorial Backbone untuk sebuah media brazil. Meskipun kemudian saya banting setir meninggalkan Backbone demi AngularJS. Dan saya pun menulis artikel tentang Angular. Artikel tersebut masih bisa dilihat di link ini http://mrbool.com/author/muhammad-azamuddin/329054

Angular seperti halnya Backbone mengusung konsep MVC ke ranah frontend. Hal ini menarik, karena masih sangat langka konsep MVC di frontend. MVC kala itu ibarat monopoli framework-framework backend.

Saya pun mulai sangat menyukai Angular, ibarat sudah fanatik, saya sempat mengoleksi pernak-pernik berbau angular mulai dari kaos, notebook dan saya membeli buku Mastering AngularJS melalui amazon.

Lalu, seperti apa sih rasanya belajar Angular? Well, saya rasa saat itu cukup menarik karena saya diajarkan bagaimana membuat custom html tag atau di angular di sebut dengan Directive, selain itu juga yang paling epic adalah two-way data binding, buzzword yang saat itu begitu kekinian dan menarik banyak mata.

Masih banyak lagi konsep Angular yang harus dipelajari, termasuk Controler, $scope yang ibarat model tapi bukan model, bingung kan? $scope ini berfungsi sebagai glue atau lem antara data dengan controller dan kemudian ke view. Belum lagi bagaimana membuat directive yang njlimet dengan 3 jenis scope yang harus saya kuasai, isolated scope ini bagian yang paling membingungkan dulu, tidak hanya saya, tapi rata-rata banyak developer yang menganggap isolated scope ini cukup sulit dipahami. Di Angular juga terdapat filter, saya kira vue cukup banyak mengadopsi Angular, betul?

Kemudian, beberapa waktu setelahnya, saya bertemu dengan React. Saat itu jarang sekali yang tahu tentang ReactJS, bahkan di Indonesia belum ada grup facebooknya. Lalu saya berinisiatif membuat grup facebook ReactJS indonesia dengan harapan akan banyak yang belajar bersama, meskipun kini agak sepi tidak seramai grup VueJS 🙁

Tetapi satu hal yang saya sadari, ternyata selama ini apa yang ingin dicapai oleh AngularJS dengan cara yang terbilang rumit bisa dicapai oleh React dengan sangat mudah. Ya, React mulai memopulerkan konsep komponen dalam pengembangan aplikasi. Dan komponen ini ibarat Directive di angular tapi dengan cara yang simpel. Meskipun komponen sudah diterapkan di polymer project, tapi tidak bisa dipungkiri React Community inilah yang memopulerkannya ke seluruh pelosok dunia development.

Membuat komponen React cukup mudah. Belum lagi tawarn One way data flow di React dengan konsep state dan props. Dan di React kamu hanya perlu belajar javascript, bahkan ya, dengan menggunakan React, justru saya belajar banyak tentang Javascript.

Hal ini berbeda ketika saya menggunakan Angular, saya belajar Angular, bukan belajar Javascript karena banyak sekali konsep spesifik Angular. Jadi learning curve nya jauh lebih sulit.

Bagimana dengan Vue? Saya pernah meluangkan waktu untuk membaca dokumentasi Vue 1. Kurang lebih dari pagi sampai siang saya dapat memahami bagiamana Vue bekerja, dan memang tampaknya cukup menjanjikan kemudahan.

Akan tetapi, dengan berbagai pertimbangan pribadi, kenyamanan dan faktor lainnya, saya belum tertarik untuk mencoba vue dalam project saya meskipun kini Vue semakin populer baik di Indonesia maupun di luar negeri.

Jadi, saya tim Angular, React atau Vue? Jawabannya saya ada di tim frontend. Untuk project saat ini saya percayakan ke React, dan tetap berpikir Vue cukup menarik sebagai pengetahuan.

Oia, ada kabar gembira bagi kamu yang ingin belajar Vue dengan studi kasus membuat Toko Online dengan backend Laravel, pas banget, saya dan kawan saya sedang menggarap sebuah buku yang akan mengupas Laravel dan Vue + Study kasus yang saya sebutkan tadi. Minat? Kalo minat segera JOIN waiting list agar tidak ketinggalan info dan diskon launching, JOIN DI SINI http://arrowfunxtion.com/waiting-list-buku-frontend-developer-laravel-vue/

Untuk yang ingin belajar ReactJS mohon tunggu sebentar ya, in sha Allah setelah buku Laravel Vue akan ada yang menarik terkait ReactJS.

Semoga kamu dapat menjadi frontend developer rockstar!

Follow Muhammad Azamuddin:

Latest posts from