Lompat ke konten Lompat ke sidebar Lompat ke footer

Widget HTML #1

Kenapa Pakai TypeScript?

kenapa typescript, apa itu typescript, ts

Sebagai seorang frontend web developer, JavaScript adalah satu dari tiga elemen penting selain HTML dan CSS yang wajib dikuasai. JavaScript ini digunakan untuk membuat web lebih interaktif.

JavaScript sendiri saat ini tak hanya bisa dijalankan di lingkungan web browser. Dengan munculnya NodeJS sebagai runtime environment, JavaScript sekarang juga bisa berjalan di lingkup server.

Saat ini proses pengembangan aplikasi frontend web bisa dilakukan dengan lebih mudah dengan hadirnya framework-framework dan library JavaScript seperti React, Vue, dan Angular, atau juga Svelte dan Solid yang mulai popular akhir-akhir ini.

Di sisi backend pun JavaScript juga telah memiliki banyak framework dan library untuk membuat aplikasi server. Contohnya seperti Express, Fastify, Hapi atau juga Nest yang sudah menyediakan arsitektur aplikasi secara out of the box.

Tak bisa dipungkiri memang, bahwa JavaScript saat ini menjadi bahasa pemograman yang begitu populer karena kompabilitinya untuk membuat aplikasi baik frontend maupun backend.

Namun di sisi lain JavaScript yang merupakan bahasa pemograman yang dynamic type juga banyak dihindari karena beberapa behavior aneh yang dimilikinya. Sebagai contoh, di JavaScript kita bisa menjumlahkan data dengan tipe number dengan data dengan tipe string atau sebaliknya.

Perhatikan kode berikut:

function sum(a, b) {
  return a + b
}

console.log(sum(1, 2)) // 3
console.log(sum(1, "1")) // "12"

Dari contoh di atas, kesalahan dalam operasi di JavaScript bisa saja menghasilkan output yang tidak sesuai ekspektasi. Kode-kode yang ditulis bisa saja terlihat benar dan bisa berjalan tanpa error pada waktu runtime, namun tidak menjamin bahwa operasi-operasi yang dilakukan akan menghasilkan output sesuai yang diinginkan dan malah memunculkan banyak bug.

Itulah mengapa TypeScript hadir untuk mengatasi masalah-masalah tersebut.

Pengenalan TypeScript

TypeScript telah menjadi salah satu bahasa pemrograman yang semakin populer dalam pengembangan aplikasi. Dikembangkan oleh Microsoft, TypeScript adalah superset dari JavaScript yang menawarkan banyak fitur tambahan.

Sesuai namanya, TypeScript merupakan bahasa pemrograman yang strictly typed. Kode-kode program yang ditulis dengan TypeScript harus di-compile dulu sehingga menghasilkan kode-kode JavaScript.

End goalnya tetap sama yaitu berupa kode program JavaScript. Namun dalam proses pengembangan aplikasi, TypeScript jauh lebih powerful jika dibandingkan dengan JavaScript.

Mari coba kita tulis ulang kode program di atas denga menggunakan TypeScript:

function sum(a: number, b: number): number {
  return a + b

}

console.log(sum(1, 2)) // 3
console.log(sum(1, "2")) // Argument of type 'string' is not assignable to parameter of type 'number'

Terlihat kode di atas akan menampilkan error apabila function sum dipanggil dengan parameter berupa string.

Memang ada beberapa ceremony tambahan yang perlu ditulis dalam sebuah program TypeScript seperti halnya deklarasi tipe data seperti pada contoh di atas, namun hal-hal tersebut pada akhirnya akan memberikan pengalaman development yang lebih baik dari pada hanya menggunakan JavaScript. Tentu saja itu bukan satu-satunya alasan mengapa harus memakai TypeScript, jadi mari kita ulas juga alasan-alasan lainnya.

Keunggulan TypeScript

  1. Statis dan Tipe Data yang Kuat

    Salah satu kelebihan utama dari TypeScript adalah kemampuannya untuk menambahkan tipe data statis ke JavaScript. Dengan mendefinisikan tipe data untuk variabel, parameter fungsi, dan objek, TypeScript membantu mengurangi kemungkinan kesalahan dan bug yang terkait dengan tipe data. Pengecekan tipe data yang ketat dilakukan pada saat kompilasi, sehingga kesalahan dapat terdeteksi lebih awal sebelum kode dijalankan. Ini mengarah pada kode yang lebih aman, lebih mudah dipahami, dan lebih mudah dikelola.

  2. Peningkatan Pengembangan Tim

    TypeScript juga memberikan manfaat dalam pengembangan tim yang bekerja pada aplikasi yang kompleks. Dengan tipe data yang jelas, mudah bagi anggota tim untuk berkolaborasi dalam menulis dan memahami kode. Fitur seperti definisi tipe data yang diperluas, dukungan untuk class dan modul, serta pemeriksaan tipe data yang ketat membantu dalam mengurangi ambiguitas dan meningkatkan komunikasi antar anggota tim. Hal ini dapat meningkatkan produktivitas dan memungkinkan pengembangan yang lebih terstruktur.

  3. Peningkatan Alat dan Ekosistem

    TypeScript menyediakan dukungan untuk lingkungan pengembangan modern dan alat-alat yang kuat. Editor kode seperti Visual Studio Code menawarkan fitur-fitur khusus untuk TypeScript, seperti pemeriksaan kesalahan saat pengetikan, penyelesaian kode yang lebih baik, dan refaktorisasi yang cerdas.

    Banyak pustaka dan kerangka kerja populer juga telah mengadopsi TypeScript atau menyediakan definisi tipe data TypeScript, yang memungkinkan pengembang untuk memanfaatkan ekosistem yang kaya dengan lebih baik. Dengan dukungan yang luas dari alat dan ekosistem, pengembangan dengan TypeScript menjadi lebih mudah dan efisien.

  4. Evolusi Skala Besar

    TypeScript sangat cocok untuk aplikasi skala besar. Dengan adanya fitur-fitur seperti modul dan ruang nama, pengembang dapat membagi kode menjadi unit yang lebih kecil dan terorganisir dengan baik. Ini memfasilitasi pemeliharaan, pengujian, dan pengembangan iteratif pada proyek yang kompleks.

    Selain itu, TypeScript juga mendukung konsep-konsep seperti antarmuka (interface) dan pewarisan (inheritance), yang memungkinkan pengembang untuk membuat kode yang lebih mudah diubah dan dipahami saat proyek berkembang seiring waktu.

  5. Kompatibilitas dengan JavaScript

    TypeScript adalah superset dari JavaScript, yang berarti setiap kode JavaScript yang valid juga merupakan kode TypeScript. Ini berarti kita dapat dengan mudah mengintegrasikan kode JavaScript yang ada ke dalam proyek TypeScript dan memulai mengadopsi TypeScript secara bertahap. Dengan menggunakan tipe data dan fitur tambahan TypeScript secara bertahap, kita dapat meningkatkan kualitas dan keamanan kode yang ada tanpa perlu mengubah semuanya sekaligus.

Secara overall, TypeScript adalah bahasa pemrograman yang kuat dengan banyak kelebihan. Dengan memberikan tipe data yang statis dan kuat, meningkatkan pengembangan tim, menyediakan alat dan ekosistem yang kuat, serta mendukung evolusi skala besar, TypeScript dapat membantu dalam menghasilkan kode yang lebih aman, lebih terstruktur, dan lebih mudah dipelihara.

Dengan kompatibilitas yang baik dengan JavaScript, TypeScript juga memungkinkan kita untuk mengadopsinya secara bertahap dalam aplikasi yang sudah ada. Dalam dunia pengembangan perangkat lunak yang semakin kompleks, menggunakan TypeScript bisa menjadi keputusan yang cerdas dan menguntungkan.

1 komentar untuk "Kenapa Pakai TypeScript?"