Sedikit Sejarah

Anda sudah mengetahui apa saja keuntungan menggunakan JavaScript dalam dunia rekayasa perangkat lunak korporat, dan apa 5 alasan mengapa Node.js adalah pilihan tepat untuk start-up. Yang tidak Anda ketahui adalah bagaimana semuanya dimulai.

Bahasa ini sendiri telah berkembang pesat dari hanya digunakan sebagai fasilitator interaksi di situs web menjadi bahasa pemrograman yang lengkap dan berguna secara universal. Kami akan membawa Anda dalam perjalanan mulai dari pembuatannya hingga masa TypeScript.

Masa Kecil JavaScript

Pada masa awal Internet, setiap situs web bersifat statis. Hingga tahun 1995, belum ada cara untuk membuat situs web menjadi dinamis; artinya tidak mungkin mengubah konten halaman web sebagai respons terhadap kondisi yang berbeda. Itu sebabnya pada tahun 1995, JavaScript diciptakan. Brendan Eich, pencipta bahasa tersebut, diberi tugas sederhana — untuk memungkinkan interaktivitas. Penciptaan Eich mempunyai tujuan yang jelas, dan dengan demikian mencapai tujuan tersebut. Untuk waktu yang lama, itu saja.

"Seperti yang dikatakan oleh bapak JavaScript":

Saya berada di bawah perintah pemasaran untuk membuatnya [JavaScript] terlihat seperti Java tetapi tidak membuatnya terlalu besar untuk ukuran celananya. Itu hanya bahasa adik yang konyol, kan? Sahabat Java.

Tindakan asinkron di browser

Pada satu titik, orang-orang terbangun dan menyadari bahwa masih banyak yang bisa dilakukan. Halaman masih harus dimuat ulang sepenuhnya untuk menampilkan informasi baru, sehingga mengakibatkan proses menjadi lambat dan tidak efisien. Pasti ada cara untuk mencegah situs web memuat ulang untuk mendapatkan dan memproses data baru, bukan?

Contoh pertama yang tersebar luas dari inovasi semacam itu adalah ketika Microsoft mengizinkan Internet Explorer 5 membuat permintaan HTTP. Pada tahun 1999, mereka menerapkan objek bernama “XMLHttpRequest” yang memungkinkan untuk mendapatkan data dari sumber eksternal tanpa memuat ulang halaman.

Mengapa fungsi ini diterapkan? Singkat cerita, MSFT melakukan hal itu agar situs web Outlook mengambil email di latar belakang. Dampak jangka panjangnya lebih dari sekadar membuat satu situs web berjalan lebih baik.

Menurut Monika Mazurczak, Pengembang Frontend di ITMAGINATION:

“[Microsoft's XMLHttpRequest] adalah salah satu dari dua perkembangan terpenting dalam dunia JavaScript. Tindakan asinkron memungkinkan pengguna melakukan lebih banyak hal tanpa harus memuat ulang halaman, yang merupakan keuntungan besar dalam hal UX.”

Masih ada masalah besar tambahan yang harus diatasi. Ada perbedaan besar dalam implementasi mesin JavaScript, dan bahkan terdapat perbedaan bahasa untuk setiap browser! Netscape punya JavaScript, sedangkan IE punya Jscript, misalnya. Meskipun penerapan MSFT pada tingkat tertentu kompatibel dengan JavaScript (karena keduanya didasarkan pada spesifikasi ECMAScript), penerapannya pada dasarnya berbeda.

jQuery — membangun untuk browser yang berbeda tanpa pusing

Pada tahun 2006, dunia melihat solusi yang bertujuan untuk mengatasi masalah tersebut. Empat belas tahun yang lalu, jQuery muncul dengan mengabstraksi perbedaan dalam implementasi. Gambar yang Anda lihat di atas adalah bagaimana jQuery menangani perbedaan implementasi antar browser. Apa yang Anda lihat di bawah hanyalah memanggil fungsi “jQuery.ready()” setelah halaman selesai dimuat.

Tahukah Anda bagaimana tampilannya sekarang? Berkat standarisasi penerapannya, ini cukup mudah. Ada beberapa cara untuk melakukan hal ini, dan ini adalah salah satunya:

jQuery akan menjadi perpustakaan JavaScript paling populer, dan dengan selisih yang besar. Ini masih merupakan perpustakaan paling populer berdasarkan pangsa pasar hingga hari ini, dimana perpustakaan ini hadir di sekitar 79,8% dari 10 ribu situs web populer teratas.

Sebagai perbandingan, React.js, yang secara luas dianggap sebagai standar modern untuk pengembangan front-end, React digunakan pada 43,7% dari 10.000 halaman terpopuler. Ketika berbicara tentang sisi front-end, jQuery adalah langkah penting terakhir untuk menjalankannya. Konsistensi di seluruh browser memungkinkan pengembang membuat aplikasi yang mereka inginkan, namun sebelumnya tidak bisa.

2009 — bisa dibilang tahun paling penting bagi ekosistem sejak peluncurannya

Tiga tahun kemudian, tahun yang bisa dibilang paling penting bagi seluruh dunia JavaScript, ada dua peristiwa yang mengubah ekosistem.

Salah satu peristiwa ini adalah rilis awal Node.js, yang lainnya adalah revisi pertama bahasa tersebut — ECMAScript 2009 (lebih dikenal sebagai ES5) menjadi sorotan.

Acara Pertama — ECMAScript 2009

ES5 menghadirkan banyak fitur yang benar-benar diperlukan., operasi penting pada array seperti`filter>,` peta>, dan` pengurangan> (``Tritunggal Mahakudus Pemrograman Fungsional''), objek``JSON'' , pengambil & penyetel properti, dan masih banyak lagi yang berada di luar cakupan artikel ini.

Peristiwa Kedua — Lahirnya Node.js

Pembuatan Node.js membuat JavaScript menjadi bahasa yang relevan karena runtime memungkinkan kami mengeksekusi skrip di luar browser selain eksekusi di dalam browser.« Menariknya, ini bukanlah upaya pertama yang mengizinkan eksekusi JavaScript di server -samping." Live Wire dari Netscape adalah yang pertama, tetapi karena ini mungkin pertama kalinya Anda mendengarnya; yang menunjukkan sesuatu tentang popularitas solusi tersebut. Meskipun memerlukan penyebutan kehormatan, kami tidak akan mendedikasikan lebih banyak ruang untuk itu.

Sekarang JavaScript telah siap untuk digunakan secara serius, ada satu aspek lagi yang perlu diperbaiki sebelum bahasa tersebut dapat diadopsi secara serius oleh perusahaan. Bahasanya dinamis, tanpa sistem tipe.

Anda tahu, ketika Anda berpikir untuk menulis aplikasi yang akan menjadi lebih besar dari proyek awal standar Anda, cepat atau lambat Anda akan mengalami masalah. Bahasa yang diketik dengan kuat, seperti Java atau C# memberi Anda lapisan keamanan — bahasa tersebut akan mendeteksi sendiri beberapa bug, tanpa harus melibatkan Anda, pengembang, dengan cara apa pun. Itu karena mereka sendiri yang akan memastikan kebenaran kode tersebut saat menjalankannya.

TypeScript Hadir Untuk Menyelamatkan

Ada beberapa upaya untuk membuat JS lebih mudah diprediksi, namun Microsoft mungkin telah mengusulkan solusi terbaik hingga saat ini. TypeScript, superset JavaScript, pertama kali muncul pada tahun 2012. Tujuannya adalah untuk memfasilitasi pengembangan aplikasi besar.

Ini memiliki beberapa fitur yang membuatnya sangat populer di kalangan profesional.

Pertama-tama, karena C# dan TypeScript dibuat oleh orang yang sama, keduanya memiliki beberapa kesamaan. Tentu saja, jangan berharap keduanya adalah saudara kembar.

Yang kedua, migrasi dari JavaScript ke TypeScript itu mudah — Anda dapat memigrasikan basis kode Anda selangkah demi selangkah.

Ketiga, TypeScript terintegrasi dengan mis. Bereaksi dan Vue di front-end dengan mulus. Di backend, semua perpustakaan utama bekerja dengan TypeScript secara langsung. Nest.js menggunakan TS secara default; sementara Express.js dan Fastify memiliki definisi tipe tambahan untuk Anda instal dan lupakan.

Jika perpustakaan apa pun yang Anda perlukan tidak termasuk dalam hype-train TypeScript, Anda biasanya masih dapat menggunakannya sambil menikmati dukungan waktu desain yang ditingkatkan". Pengguna menyumbangkan definisi tipe secara gratis untuk semua perpustakaan paling populer”, dan dalam skenario terburuk, Anda dapat menulis deklarasi Anda sendiri. Dengan kata lain — jika Anda menggunakannya — ada definisi tipe untuk itu.

Bagaimana masa depan JavaScript?

Pada akhirnya, JavaScript telah berkembang pesat dan mengambil peran yang tidak pernah diimpikan oleh siapa pun. Meskipun banyak yang mencemooh sistem jenisnya, atau ketidakkonsistenannya, seluruh ekosistem telah membuktikan dirinya sebagai pesaing yang kuat lebih dari sekali.

Sepanjang sejarah JavaScript, ada dua pihak yang menjadikannya bahasa pemrograman tujuan umum yang paling mendominasi. Kedua pihak tersebut merupakan kontributor open source dan ECMA. Ketahanan dan dedikasi para pengembang telah mengangkat bahasa ini keluar dari keterpurukan, menjembatani dan memperbaiki kesenjangan yang ada. ECMA memberi mereka dasar yang kuat untuk membangun, menambah bahasa dengan fitur yang diminta.

Masa depan JavaScript masih belum jelas. Sepertinya popularitasnya sangat bergantung pada masa depan proyek WebAssembly. Singkat cerita, untuk beberapa waktu dimungkinkan untuk mengkompilasi bahasa, seperti C++ atau Rust ke kode yang dapat digunakan browser. Namun penggunaannya memiliki beberapa keterbatasan yang parah, misalnya. Anda tidak dapat mengakses DOM (struktur halaman) dan Anda dibatasi hanya pada browser yang relatif baru.

Mungkin saja JavaScript tidak akan lagi menjadi satu-satunya bahasa pemrograman yang dapat dijalankan di mesin browser. Jika hal ini terjadi, keunggulan ciptaan Eich mungkin akan tertantang, meskipun ada satu aspek yang tetap berlaku, yaitu kesederhanaan bahasa.

PS: Kami sedang merekrut pengembang Node.js. Untuk semua profesional Node.js, kami punya kabar baik — kami sedang merekrut. Apakah Anda seorang, ,` Pengembang React Native>, atau , kami menunggu Anda.

Awalnya diterbitkan di https://www.itmagination.com.