Belajar Mengenal Bahasa Pemrograman TypeScript
TypeScript adalah bahasa pemrograman yang basisnya adalah JavaScript. Dengan penambahan fitur strong-typing dan konsep pemrograman objektif atau OOP klasik.
Dilihat dari dokumentasinya, bahasa ini disebut sebagai superset dari JavaScript. Kesimpulannya kode-kode JavaScript adalah kode-kode TypeScript juga.
Untuk mengembangkan aplikasi kompleks akan lebih mudah jika menggunakan TypeScript karena bahasa ini menawarkan class, module, dan interface.
- Contoh Script TypeScript :
// class define in TypeScript
class VirtualPageTracker extends Tracker {
private virtualPageName: string = ”;
constructor(name) {
super(name);
}
getName(): void {
return this.virtualPageName;
}
static getTrackerName(): string {
return ‘VirtualPageTracker’;
}
}
TypeScript sendiri merupakan bahasa pemrograman yang dikembangkan oleh microsoft. TypeScript diciptakan oleh microsoft untuk menutupi kekurangan bahasa pemrograman JavaScript yaitu membuat aplikasi yang besar dan kompleks dengan mudah.
Selain digunakan untuk membuat aplikasi web bahasa ini bisa juga digunakan untuk membuat aplikasi mobile baik android maupun Ios.
TypeScript dibangun di atas JavaScript dengan kata lain bahasa pemrograman TypeScript adalah JavaScript yang memiliki fitur-fitur tambahan.
Beberapa keunggulan dari bahasa pemrograman ini yaitu :
Keunggulan TypeScript
1. Fitur Pemrograman Berbasis Objek
TypeScript menyertakan serangkaian fitur Object Oriented Programming (OOP) yang sangat bagus dan kompleks untuk diterapkan. Kecuali, jika kamu sebelumnya telah menggunakan JavaScript.
Kamu dapat membandingkan kode yang dihasilkan JavaScript dengan Typescript. Fitur OOP ini membuat kode TypeScript sangat rapi dan teratur.
2. Tidak Membutuhkan Runtime Plugin
Semua teknologi web modern mutakhir ini telah mengaktualisasikan dirinya ke dalam bentuk standar yang dapat dipahami dan dijalankan oleh semua browser utama.
Nah, TypeScript merupakan salah satunya. Dalam konteks TypeScript, semua skrip modern yang kamu tulis berusaha diterjemahkan ke JavaScript biasa. Hal ini dilakukan agar mudah dijalankan oleh browser.
3. Meningkatkan Performa Tim
Agar kinerja secara keseluruhan dapat meningkat, maka menggunakan TypeScript merupakan solusinya. Baik itu berlaku saat kamu bekerja secara individual maupun kolektif dengan tim. Tentunya, kinerja yang lebih tinggi menghasilkan keuntungan yang lebih baik.
4. TypeScript adalah bahasa pemrograman yang populer
Menurut hasil survei StackOverFlow tahun 2019 yang dilansir dari STXNext, TypeScript merupakan salah satu bahasa pemrograman terpopuler setelah Phyton. Bahasa ini banyak digunakan dalam produk perangkat lunak seperti Slack, Asana, atau Visual Studio Code. Banyak tools JavaScript yang juga ditulis dalam TypeScript, termasuk kerangka kerja seperti Angular, Aurelia, atau Ionic.
Selain memiliki banyak kelebihan, TypeScript juga memiliki beberapa kekurangan diantaranya:
Kekurangan TypeScript
1. Kurva Pembelajaran
Kurva pembelajaran ini juga akan membuat kerja tim lebih keras. Kamu perlu memastikan bahwa setiap orang memiliki pemahaman yang baik mengenai TypeScript, jika tim kamu ingin melakukan cara ini
2. Membutuhkan Tools
Kamu tetap harus membutuhkan tools khusus untuk editor atau IDE untuk mentranspilasi TypeScript, meskipun browser pengunjung tidak memerlukan plugin apa pun untuk menjalankan TypeScript.
Ini juga termasuk penyempurnaan editor untuk menyorot dan memformat kata kunci TypeScript untukmu. Jika kamu adalah pengguna Windows atau Mac, tools yang direkomendasikan adalah Visual Studio. Namun apabila kamu menggunakan Linux, Visual Studio Code adalah tools yang direkomendasikan.
3. Sulit diedit menggunakan Content Management System (CMS)
Kamu bisa mengedit file css dan file skrip .js di portal admin, jika menggunakan CMS untuk mengembangkan website. Namun, ketika kamu menggunakan TypeScript, tentu tidak akan mudah untuk mengeditnya di portal admin. Beberapa CMS memiliki plugin untuk memungkinkanmu mengedit TypeScript di portal, tetapi beberapa tidak.
4. Sistem Pengetikan yang Terlalu Rumit
Sistem pengetikan TypeScript, meskipun merupakan tools yang bagus dalam banyak hal, terkadang bisa terlalu rumit untuk digunakan dengan benar. Ini tidak sepenuhnya merugikan TypeScript. Ini hanyalah sisi negatif yang berasal dari pengoperasian penuh dengan JavaScript, yang dengan sendirinya menyisakan lebih banyak ruang untuk komplikasi.
Selain itu, TypeScript menjadi salah satu yang populer. Lantas, kenapa TypeScript ini cukup populer di kalangan developer website dan aplikasi ?
Mengapa Typescript?
Karena because itu that!
1. Membantu New Joiner Cepat Beradaptasi
Ini satu alasan yang menurut saya paling penting. Ketika satu-satunya backend developer di squad sedang off dan ada tiket backend yang harus diselesaikan, mau nggak mau saya sebagai frontend dev harus ngerjain tiket itu. Waktu akan oprek salah satu service yang ditulis di Node.js, ada sebuah function bernama prepare User yang menerima sebuah input dan mengembalikan sesuatu.
2. Typescript is Just Javascript ️
Mungkin terdengar agak klise, tapi beberapa kali diperhatikan masih cukup banyak yang menganggap Typescript adalah sebuah bahasa pemrograman yang baru, sangat berbeda dengan Javascript pada umumnya, harus tau ekosistemnya, dan butuh waktu yang nggak sebentar untuk mempelajarinya.
3. Safer Code
Kita bisa kok menganggap Typescript hanyalah sebuah tool untuk melakukan static type-checking.
4. Zero Overhead ketika Run Time
Semua “type” dan/atau “interface” yang kita tulis di Typescript akan hilang ketika di-transpile. Jadi serumit apapun “type” yang kita buat, nggak akan berarti apa-apa ketika run time karena semuanya akan dihapus: zero overhead. Output code-nya pun bisa terbaca jelas
5. Tooling
Ini dia nih yang gak kalah penting, tooling! Tooling bisa menjadi salah satu faktor terbesar sebuah bahasa pemrograman agar dapat diadopsi dengan mudah secara luas. Bentuk tooling yang paling umum adalah kemudahan konfigurasi di text editor.
7. Supports JSX by Default
Buat kamu-kamu developer React (kayak saya), gak perlu cemas karena TS secara default sudah support JSX.
editor : eliaaspce