Modularitas di Typecript

Modularitas dalam TypeScript mengacu pada kemampuan untuk membagi kode ke dalam modul yang terpisah, yang memungkinkan untuk organisasi yang lebih baik, keterbacaan yang meningkat, dan pengelolaan dependensi yang lebih baik di dalam proyek.

Berikut adalah beberapa konsep dan fitur terkait dengan modularitas di TypeScript:

  • Modul: Modul adalah unit terkecil dari kode yang dapat dipisahkan dalam sebuah proyek TypeScript. Modul dapat berisi definisi kelas, fungsi, variabel, dan lainnya. Modul memungkinkan untuk mengisolasi dan menyembunyikan detail implementasi dari bagian lain dari kode Anda.

  • Export dan Import: Dalam TypeScript, dapat menggunakan kata kunci export untuk mengekspor definisi dari sebuah modul, sehingga dapat diakses dari luar modul. Sementara itu, dapat menggunakan kata kunci import untuk mengimpor definisi dari modul lain ke dalam modul saat ini.

  • File Modul: Dalam TypeScript, setiap file secara default adalah modul. Ini berarti bahwa kode dalam file tersebut tidak akan menjadi global secara default, kecuali jika di-ekspor. dapat menggunakan export dan import untuk berinteraksi antara file-file modul.

Berikut adalah contoh penggunaan modularitas di TypeScript dengan membuat modul sederhana:

  1. Definisi Modul (module1.ts):

    // module1.ts
    export const PI = 3.14;
    
    export function calculateArea(radius: number): number {
        return PI * radius * radius;
    }
  2. Import Modul (main.ts):

    // main.ts
    import { PI, calculateArea } from "./module1";
    
    let radius = 5;
    let area = calculateArea(radius);
    console.log("Area of circle with radius", radius, "is", area);
    console.log("Value of PI is", PI);
  • Namespace: Namespace adalah cara lain untuk mengatur kode dalam modul. Dengan namespace, dapat membuat ruang nama untuk mengelompokkan fungsi, kelas, atau variabel yang terkait. Ini membantu menghindari konflik nama dan mengorganisir kode yang lebih besar.

    Berikut adalah contoh penggunaan namespaces di TypeScript:

    1. Definisi Namespace (namespace1.ts):

      // namespace1.ts
      namespace Geometry {
          export const PI = 3.14;
      
          export function calculateArea(radius: number): number {
              return PI * radius * radius;
          }
      }
    2. Penggunaan Namespace (main.ts):

      // main.ts
      /// <reference path="./namespace1.ts" />
      
      let radius = 5;
      let area = Geometry.calculateArea(radius);
      console.log("Area of circle with radius", radius, "is", area);
      console.log("Value of PI is", Geometry.PI);

Dengan menggunakan konsep modularitas ini, dapat memecah kode menjadi bagian-bagian yang lebih kecil, mudah dipelihara, dan dapat digunakan kembali, yang sangat berguna saat mengembangkan proyek yang lebih besar.

Sumber:

Last updated