TypeScript Class

Basic Class

TypeScript sama seperti ECMA Script 6 (ES6), support object-oriented programing (OOP). Class sendiri adalah sebuah blueprint atau rancangan untuk membuat objek dengan properti dan metode tertentu. Class dapat digunakan untuk membuat objek dengan karakteristik dan perilaku yang serupa.

Dalam class, kita dapat menentukan properti atau variabel yang dimiliki oleh objek dan metode atau fungsi yang dapat dijalankan pada objek. Class juga dapat memiliki constructor, yang digunakan untuk menginisialisasi properti ketika sebuah objek dibuat.

Berikut contoh sederhana class di TypeScript:

// Sample class Animal
class Animal {
    name:string;
    foot:number;

    constructor(name: string,foot:number){
        this.name = name;
        this.foot = foot;
    }

    printAnimal(){
        console.log(`Animal name ${this.name} number of animal legs ${this.foot}`)
    }
}

let tiger = new Animal("Tiger",4);

tiger.printAnimal();


let chicken = new Animal("Chicken",2);

chicken.printAnimal();
$ ts-node Animal.ts
Animal name Tiger number of animal legs 4
Animal name Chicken number of animal legs 2

Pada contoh diatas kita membuat sebuah class dengan nama class Animal dimana classs yang memiliki properti nama dan kaki selain itu class Animal juga memiliki function/methode printAnimal(), dimana function ini akan digunakan untuk mecetak nama dan jumlah kaki dari animal. Classs Animal ini adalah Blueprint dimana dengan class ini kemudian kita membuat object Tiger. Object tiger di buat instance dari class Animal dimana ketika kita membuat object tiger kita mengirim paramater ke contructor Animal yaiu name = “Tiger” dan foot = 4, selain tiger kita juga membuat object Chicken dengan nama=”Chicken” dan foot=2. Jadi dengan satu class Animal kita bisa membuat beberapa object lainnya dengan paramater yang berbeda.

Contructors

Contructor adalah sebuah method khusus yang dieksekusi ketika sebuah instance objek dibuat dari class. Constructor digunakan untuk menginisialisasi nilai properti dalam objek yang dibuat. Dalam sebuah class, constructor dapat dideklarasikan dengan menggunakan keyword “constructor”

Contoh pengunaan Contructor di TypeScript :

class Animal {
    name:string;
    foot:number;

    constructor(name: string,foot:number){
        this.name = name;
        this.foot = foot;
    }

    printAnimal(){
        console.log(`Animal name ${this.name} number of animal legs ${this.foot}`)
    }
}

Atau kita bisa juga membuat contructor lebih sederhana seperti berikut :

class Animal {
    constructor(public name: string,public foot:number){
        this.name = name;
        this.foot = foot;
    }

    printAnimal(){
        console.log(`Animal name ${this.name} number of animal legs ${this.foot}`)
    }
}

Source code tutorial Typescript tersedia di github typescript-days

hyvercode

Dart Abstract Classes

Abstract Class , adalah class yang tidak bisa dibuat object Karena masih bersifat abstract, Abstract class memiliki method yang juga bersifat abstract atau belum memiliki implentasinya. Untuk membuat abstract class yaitu dengan menggunakan keyword abstract contoh pembuatan abstract class :

abstract class car{
  void onRun()
}

untuk membuat implementasi dari sebuah abstract class maka kita bisa embuât class implementatornya seperti berikut:

abstract class Car{
  void onRun();
  void onBreak();
}

class Truck implements Car{
  @override
  void onRun() {
    // TODO: implement onRun
    print("Truck run");
  }

  @override
  void onBreak() {
    // TODO: implement onBreak
    print("Truck on break");
  }

}

class Bus implements Car{
  @override
  void onBreak() {
    // TODO: implement onBreak
    print("Bus on break");
  }

  @override
  void onRun() {
    // TODO: implement onRun
    print("Bus on run");
  }

}

void main(){
  var truck = new Truck();
  truck.onRun();
  truck.onBreak();

  var bus = new Bus();
  bus.onRun();
  bus.onBreak();

}
//output

Truck run
Truck on break
Bus on run
Bus on break

Sample source code bisa di download di github pada link berikut dart-tutorial

hyvercode

Functions as first-class objects

Kita bisa melakukan parsing paramater dari function ke function lainya contoh :

void main(){
  var list=[1,2,3];
  list.forEach(printElement);
}

void printElement(int element){
  print(element);
}
1
2
3

Sample source code can be downloaded on github at the following link    dart-tutorial

hyvercode