Mengenal VueJS – 02

Ngelanjutin artikel VueJS sebelumnya, kali ini kita bahas sedikit tentang fitur Reactive Programming.

Apa itu Reactive Programming?

RP adalah metodologi pemrograman berbasis event. Ada event, ada reaksi. Jadi kalo Anda punya riwayat sebagai programer Flash/Flex, kayak saya, sebenernya Anda udah pernah nyerempet-nyerempet RP lewat event-based programming yang jadi makanan programer Flash sehari-hari. Bedanya, di RP antara koneksi antara event dispatcher & event listener dibuat abstrak / disembunyiin dibalik interface sederhana. Jadi ga perlu secara eksplisit jalanin addEventListener atau dispatchEvent dsb.

Continue reading →

Hosting Website Gratis di Gitlab

Gitlab sebuah perusahaan penyedia layanan hosting Git. Mirip Github tapi lebih ekonomis. Salah satu bedanya, di Gitlab, akun gratisan bisa punya private project, kalo di Github semuanya public / opensource, kecuali kalo kita pake akun berbayar.

Kalo Github punya Github Pages, Gitlab juga punya Gitlab Pages. Layanan ini bisa kita pake untuk hosting website gratisan & bisa sekalian belajar Git ( buat yang belum tahu).

Silakan daftar dulu kalo belum punya akun Gitlab. Saya tunggu …

Udah?

Bagus.

Continue reading →

Mengenal VueJS – 01

Dalam artikel ini saya mau kasih sedikit intro tentang library yang sedang naik daun, namanya Vue. Ini adalah library JavaScript untuk bikin UI. Kalo dikelompokin, mungkin bisa satu grup dengan ReactJS. Vue bisa dipake untuk macem-macem keperluan, mulai dari yang sederhana untuk bikin komponen UI, sampai SPA (Single Page Application). Popularitas Vue meroket antara lain karena jadi library default bawaan Laravel 5.

Progressive Framework. Begitu kata Vue Guide. Maksudnya, kita bisa pake Vue sedikit-sedikit. Ga perlu langsung satu website pake Vue semua. Bahkan untuk satu halaman, kita bisa pake Vue seperlunya dulu. Kalo mau migrasi website/aplikasi yang udah jadi dari framework lain ke Vue juga bisa pelan-pelan. Ga perlu gerudukan semua komponen UI langsung ganti.

Sebelum memulai silakan bikin file HTML yang isinya ada skrip ini. Atau nanti langsung edit aja contoh kode di bawah yang saya share di Codepen.

<script src="https://unpkg.com/vue/"></script>

Continue reading →

Tips JavaScript : Throttle & Debounce

Apa itu throttle & debounce ? Berikut ini penjelasan singkat & contohnya.

Dua-duanya dipake untuk optimasi, khususnya untuk fungsi-fungsi kompleks yang dijalanin berulang kali. Cuman cara & metodenya yang beda.

Throttle

Throttle: Memastikan sebuah function hanya dijalankan satu kali dalam satu rentang waktu.

Dalam contoh di bawah ini, saya bikin dua listener untuk event scroll. Yang satu normal, ga pake throttle.

See the Pen Throttle by Anggie Bratadinata (@masputih) on CodePen.

Sambil scrolling coba perhatiin, nilai scrollY di dua listener itu sama, tapi listener yang ga pake throttle lebih sering dijalanin (call count-nya lebih banyak).

Continue reading →

Tips JavaScript Bagian 1 – Tipe Data dan Variabel

Dalam artikel kali ini, saya jelasin beberapa poin dalam pemrograman JavaScript yang sebenernya penting tapi sering ga diperhatiin.

1. Data Numerik

Kebanyakan bahasa pemrograman punya beberapa tipe data numerik ( int, float, dll ) tapi JavaScript hanya punya satu yaitu number.

typeof 100; // number
typeof 10.1; // number
typeof -2.2; // number

Semua angka dalam JavaScript adalah double-precision floating-point. Ini adalah bilangan 64-bit. Detilnya silakan baca sendiri di Wikipedia.

Operasi matematika pake bilangan floating-point akan menghasilkan aproksimasi ( ga 100% akurat ) karena ada pembulatan. Contoh:

var a = (0.1 + 0.2) + 0.3; // 0.6000000000000001
var b = 0.1 + (0.2 + 0.3); // 0.6

2. Hati-hati dengan Konversi Implisit

JavaScript adalah bahasa yang terbilang sangat “pemaaf“. Jadi kalo kita bikin operasi matematika pake data non-numerik, kode kita tetep jalan biarpun hasilnya belum tentu yang kita mau. Ini karena JS secara implisit melakukan konversi data.

Continue reading →