Selamat Tinggal Flux / Redux
- Categories:
- javascript
- reactjs
Dalam konteks software development, saya penganut paham YAGNI dimana kalau belum butuh tidak perlu dipikirkan. Selain itu saya juga penganut pahama KISS dimana sebisa mungkin membuat sesuatu sesederhana mungkin
Setelah mengenal sedikit mengenal lebih dalama mengenai React JS, flux, serta redux, saya memutuskan untuk tidak menggunakan flux atau redux sebagai state management di aplikasi berbasis React JS skala kecil.
Alasannya? Ribet dan menambah kompleksitas juga menambah file size javascript yang digunakan. Lebih baik menggunakan state management bawaan React JS selama masih memungkinkan. Terlalu banyak pakem javascript saat ini. Padahal seharusnya simple saja cukup.
Saat belajar Flux tahun 2015, saat itu saya butuh waktu satu minggu untuk memahaminya. Learning curve yang dibutuhkan cukup tinggi. Selain itu menurut saya Flux cocok jika ada dua komponen React JS yang berbeda, tetapi menggunakan data source yang sama.
Misal, ada menu notifikasi di footer dan header dimana ketika ada notifikasi baru, kedua komponen notifikasi tersebut menampilkan jumlah notifikasi.
Bagaimana dengan Redux? saat awal belajar dan mencoba diintegrasikan dengan komponen React JS, learning curve yang saya butuhkan lebih lama dibanding Redux. Pada awalnya saya mempelajari Redux karena ingin membuat grafik harga emas.
Namun setelah melakukan riset, menggunakan Redux ternyata membuat aplikasi javascript saya menjadi lebih kompleks.
Alhasil, saya tidak jadi menggunakan Redux dan cukup state management bawaan React JS. Saat ini saya juga belum menemukan use case yang cocok untuk Redux.
Kesimpulan, selama bisa sederhana dan React JS saja cukup, tidak perlu pakai Flux atau Redux.
Recent Posts
How to Defend Against Brute-Force and DoS Attacks with Fail2ban, Nginx limit_req, and iptables
In this tutorial, I’ll explain how to protect your public-facing Linux server and Nginx web server from common threats, including brute-force and DoS attacks.
Is Getting AWS Solutions Architect Associate Certification Worth It?
If you are a full-time Software Engineer, there's no strong need to pursue this certification.
DevSecOps
My Notes about DevSecOps
AWS Secrets Manager
Explanation about AWS Secrets Manager with example code.
Envelope Encryption
Envelope encryption is the practice of encrypting plaintext data with a data key, and then encrypting the data key under another key.