Tutorial Object Oriented Programming Dasar #2 : Abstraction


Muhammad Irhas Albais
Backend Developer Intern at Dietela
Tutorial Object Oriented Programming Dasar #2 : Abstraction

Apa itu Abstraction?

abtraction dalam paradigma OOP adalah sebuah konsep dimana kita dapat mengatur sebuah kompleksitas dalam sebuah struktur code kita.Kompleksitas ini dapat kita atur sehingga kita dapat menghandle detail yang tidak diperlukan dan menampilkan data relevan dengan apa yang dibutuhkan.

Contoh kasus Abstraction

saya ambil contoh sederhana dalam kasus di sekitar kita.Saya yakin semua orang didunia ini mayoritas punya hp/smartphone bukan? baik saya ataupun teman teman semuanya, nah kita lihat smartphone kita di bagian depan kita hanya dapat melihat tombol home didalam layar dan juga tombol volume atas bawah, tapi kita tidak dapat mengakses dan melihat seberapa komplek mesin yang ada didalamnya bukan? yaa karena itu emang tidak diperlukan untuk ditampilkan.

Implementasi Abstraction

disini saya akan mencontohkan implementasi abstraction dalam beberapa bahasa pemrograman yang saya kuasai, dalam hal ini saya akan memberikan contoh dari PHP,Typescript dan Ruby.

  • Abstraction pada PHP
<?php
Class Phone {
    public function VolumeUp(){
        return "Volume Up"
    }

    public function VolumeDown(){
        return "Volume Down"
    }

    private function Battery(){
        return "this is battery"
    }
}

  • Abstraction pada Ruby
class Phone

    def VolumeUp
      "Volume Up"
    end

    def VolumeDown
      "Volume Down"
    end

 private
  def Battery
     "this is battery"
  end
end
  • Abstraction pada Typescript

class Phone{

    VolumeUp(){
        return "Volume Up"
    }

    VolumeDown(){
        return "Volume Down"
    }

    #Battery(){
        return "this is battery"
    }
    
}

dari code yang saya tuliskan diatas dapat teman - teman lihat saya mengatur beberapa hak akses terhadap sebuah class, dalam dunia nyata sebuah smartphone tidak akan memperlihatkan seberapa komplek bentuk baterai bukan? dalam kita mengabstraksi sebuah class kita harus mempertimbangkan method - method mana saja yang dapat diakses oleh publik dan method mana saja yang hanya boleh diakses dalam kelas tersebut,perlu teman - teman ketahui kesalahan dalam menentukan method dapat menjadikan indikasi adanya smell code dan kesalahan dalam melakukan testing,serta code kita rawan bug.dalam bahasa pemrograman apapun konsepnya sama kita mengenal yang namanya public method dan private method, hanya saja dalam penulisan syntaxnya yang berbeda.

okee sekian penjelasan materi kali ini, untuk materi selanjutnya masih berhubungan dan erat kaitanya dengan abstraksi yakni Encapsulation,sampai jumpa di materi berikutnya :) .


Muhammad Irhas Albais
Backend Developer Intern at Dietela

Suka dengan tulisan di SantriKoding? Kamu bisa memberikan dukungan dengan berdonasi atau bagikan konten ini di sosial media. Terima kasih atas dukungan Anda!

KEBIJAKAN KOMENTAR

Saat memberikan komenatar silahkan memberikan informasi lengkap tentang error, seperti: screenshot, link kode, dll. Baca aturan komentar kami