Rise and Fall of The Objects

Beberapa waktu yang lalu, saya membaca sebuah artikel yang menarik berjudul “The Barbarians are at The Gate.”

The Barbarians are at The Gate, dari judulnya seakan pengarang menggambarkan bahwa ada sesuatu, yang rakus seperti bangsa Barbar, berada di gerbang, menunggu sesuatu yang dapat mereka lahap dengan ganas dan rakus.

Dan faktanya, analogi tersebut sangat cerdas untuk menggambarkan hubungan antara bahasa pemrograman dan computing power.

Moore’s Law

Daya komputasi, dalam lima puluh tahun terakhir, bertumbuh dengan sangat pesat, pada skala yang biasanya hanya kita butuhkan apabila kita ingin membuat senjata termonuklir, supermassive black hole, atau core collapse supernovae. 

Apa itu daya komputasi? Tantangan bagi suatu komputasi adalah daya(power). Daya komputasi atau biasa disebut computing power, adalah berapa banyak pemrosesan yang bisa komputer selesaikan pada suatu satuan waktu. Komputasi untuk mensimulasikan kejadian seperti letusan gunung berapi, tabrakan antar partikel, tentu saja membutuhkan banyak sekali daya komputasi yang mewajibkannya menggunakan sebuah super-computer.

Namun, seperti yang diceritakan di atas kita mempunyai banyak, banyak sekali daya komputasi yang semakin meningkat dan meningkat.

Functional Progamming

Dan pertanyaannya sekarang, siapa yang akan memanfaatkan sumber daya itu? Siapa yang bisa memaksimalkan daya komputasi yang dimiliki sehingga menempatkan computing power at it’s finest? Dan hal itulah yang secara cerdas digambarkan oleh “Barbarian are at The Gates”.

Daya komputasi berasal dari hardware, yang perkembangannya sudah melanggar hukum Moore, saking pesatnya, seperti yang ditulis Arstechnica, We Can Do No MooreSedangkan yang akan memanfaatkannya adalah software, yang ditulis menggunakan bahasa pemrogaman.

Di artikel itu, seberapa cepat perkembangan antara keduanya dianalogikan dengan cara berikut, bayangkan ada seorang computer hardware designer berasal dari tahun 1960 ditransportasikan ke tahun 2011. Bisakah dia mendesain sebuah chip processor modern tanpa terlebih dulu belajar bertahun-tahun? Hell not! Lembah kesenjangan teknologi di antara dua era tersebut sangatlah dalam, hardware engineer yang melas itu harus memulai karirnya dari nol, belajar lagi dari awal.

Di sisi yang lain, coba kita ambil software developer dari tahun 1960, transportasikan dia ke tahun 2011. Mungkin dia akan butuh sehari untuk meredakan shock yang dialami. Dan mungkin dia akan butuh sehari, atau dua hari lagi untuk mempelajari vim, atau Eclipse. Dan dia mungkin akan membutuhkan beberapa minggu untuk belajar Java atau C#. Namun kemudian dia akan memulai menulis if statements, assignment statements, dan while loops, sama seperti kita semua. Dia tidak harus memulai karirnya dari awal, karena dia tahu how to code. Dan coding juga tidak banyak berubah dalam lima puluh tahun terakhir. Sequence, iteration, selection. Tidak ada yang banyak berubah.

Sekarang untuk memanfaatkan daya komputasi yang sebesar seperti yang kita punyai sekarang, kita harus membuat suatu program yang super cepat, super akurat, mampu membagi beban, dan bisa dieksekusi di ribuan mesin.

How are we going to write that code? What language are we going to use to express the concepts that execute in thousands of machines.

Dan jawaban saat ini untuk pertanyaan di atas adalah “Functional Progamming”, namun bisa saja itu juga akan menjadi tren bahasa pemrograman di masa depan. Semua ada eranya, procedural programming dikatakan sebagai paradigma go-to less, kemudian muncul object oriented dengan jargonnya pointer-less, dan sekarang muncul functional programming dengan paradigma yang lebih maju assignment less.

Pemrograman berorientasi objek sejak kemunculannya di era 90-an, sampai saat ini masih menjadi primadona di kalangan bahasa pemrogaman sebagai bahasa yang paling banyak dipakai untuk membuat progam, baik mobile, desktop bahkan web. Sanggupkah OO mengatasi serangan para barbar yang sudah menunggu di depan gerbang?

sumber : “The Barbarians are at The Gate” dan sumber lainnya yang terkait.





Download aplikasi kami di Google Play Store


Tutorial Menarik Lainnya :

Leave a Reply

Do NOT follow this link or you will be banned from the site!