Big O Notation biasa digunakan untuk menghitung kompleksitas algoritma. Dalam pemrograman, ini sering dijadikan pedoman sebelum membuat keputusan pendekatan algoritma yang akan dipakai. Big O notation sendiri adalah tingkat kompleksitas operasi dari algoritma terhadap jumlah elemen yang diproses. Terdapat 2 jenis kompleksitas, yaitu space dan time. Yang akan gw…
Sejak Java 8 dirilis, gw mulai jarang menggunakan API java.util.Date dan java.util.Calendar karena Java 8 telah mengadopsi Date/Time API dari JodaTime yang memiliki kode fitur JSR-310. API ini mengatasi berbagai permasalahan dari API lama. Meskipun ini dirilis beberapa tahun lalu berbarengan dengan rilisnya Java 8, masih banyak mungkin yang belum kenal atau belum…
Materi tentang composition atau inheritance biasanya sudah diajarkan sejak kuliah. Tapi seringkali kita hanya sekedar tahu tapi masih bingung tentang best practice-nya gimana. Artikel tentang "dahulukan composition dibandingkan inheritance" sudah sering didiskusikan seperti pada buku-buku tentang design patterns atau tulisan-tulisan dari Martin Fowler, Joshua…
Setelah laptop kantor gw mati total untuk kedua kalinya, laptop gw diganti. Gw mulai mencoba trial & error terhadap beberapa OS. Yang jadi pertimbangan gw adalah: Support Wayland atau ada fitur gesture tanpa harus di-install manual karena gw udah terbiasa dengan fitur ini di Windows 10 dan bikin gw lebih produktif buat pindah-pindah workspace; Bisa custom…
Minoritas di sini maksudnya bukan tentang agama, suku ataupun warna kulit. Tapi lebih tentang kepribadian. Di lingkungan gw, sudut pandang gw cenderung berbeda dengan orang-orang yang membuat gw menjadi sangat pendiam. Gw pendiam bukan karena terlalu takut untuk mengutarakan sesuatu, tapi males mendengar tanggapan orang-orang di lingkungan. Sehingga ga mungkin…
Beberapa waktu lalu gw sempat liat postingan di internet yang katanya Facebook hanya dimainkan oleh "golongan tua", hanya orang-orang jadul yang masih pakai Facebook, udah ketinggalan jaman. Kalau dilihat dari total user aktif menurut statista.com, Facebook masih nomor 1 di dunia, disusul YouTube, WhatsApp dan Instagram. Anak remaja jaman sekarang memang mainnya…
Khusus postingan gabut ini, gw akan memposting kumpulan quotes atau kata-kata bijak yang pernah diberikan oleh beberapa orang dulu terhadap gw yang secara langsung maupun ga langsung ampuh mengubah mindset gw dan memotivasi gw. The Power of Words. Berikut ini adalah kumpulan quotes yang mengiringi perjalanan karir gw: Jangan takut, selama manusia masih butuh…
Pada Java 8 terdapat Functional Interface yang dapat digunakan sebagai Lambda. Namun mayoritas Functional Interface tersebut by default tidak melakukan throws Exception. Ini cukup ribet kalau kita memanggil method yang throws checked exception pada scope Lambda pada umumnya. Contohnya kita ingin melakukan looping String yang berisi path sebuah text menggunakan…
Sebenarnya contoh penggunaannya udah pernah gw bikin pada post tentang Single Responsibility dan Open-Close Principle, nah sekarang penjelasannya. Prinsip yang satu ini mungkin udah pada familiar. Terutama bagi yang menggunakan Spring framework pasti sudah tidak asing lagi. Prinsip ini merupakan implementasi dari Inversion of Control. Dengan Dependency Injection…
Interface Segregation adalah memecah sebuah abstrak yang terlalu besar menjadi beberapa abstrak yang lebih spesifik. Terkadang pada sebuah code yang dibutuhkan hanya beberapa method saja dari interface tersebut, sisanya tidak dibutuhkan dan beberapa diantaranya memiliki kohesi yang rendah, tidak saling terkait. Selain itu, sebuah abstraksi terlalu abstrak jika…