Abstract Data Types Part II


Aktivitas Struktur Data

Di dalam suatu struktur data kita berhubungan dengan 2 aktivitas:

  • Mendeskripsikan sekumpulan obyek-obyek data yang sah dan sesuai dengan tipe data yang ada
  • Menunjukkan sebuah mekanisme kerja dari fungsi-fungsi atau operasi-operasinya
    • Contoh: byte (-128 sampai dengan 127) dan jenis operasi yang diperbolehkan untuk tipe data ini adalah +, -, *, /, <, >, !=, dan sebagainya

Struktur data adalah obyek data yang ditambah dengan operasi untuk manipulasi data itu sendiri

 

Hubungan Struktur Data dan Algoritma

Dengan pemilihan struktur data yang tepat, maka masalah yang cukup kompleks dapat diselesaikan yang akan membuat algoritma dapat digunakan dengan efisien, operasi-operasi yang penting dapat dieksekusi dengan sumber daya yang minimal, penggunaan memori lebih kecil, dan waktu eksekusi yang akan menjadi lebih cepat.

Tidak semua struktur data itu baik dan sesuai, contoh: untuk masalah pemrosesan gambar informasi mahasiwa.

 

Ciri-Ciri Algoritma

Ciri-ciri algoritma yang baik menurut Donald E.Knuth adalah sebagai berikut:

  • Memiliki input (terdapat minimal 0 input atau lebih)
  • Memiliki Output (terdapat minimal 1 output atau lebih)
  • Definite (ada kejelasan tentang apa yang dilakukan)
  • Evective (langkah-langkah yang dikerjakan harus efektif)
  • Terminate (langkah-langkah yang ada harus dapat berhenti (stop) secara jelas)

 

ADT dan UDT atau Tipe Data Bentukan

Bahasa pemrograman dapat memiliki tipe data sebagai berikut:

  • Built-in: sudah tersedia dari bahasa pemrograman tersebut, bisa dikatakan tidak berorientasi pada persoalan yang dihadapi
  • UDT (User Defined Type): dibuat oleh pemrogram atau programer, mendekati penyelesaian masalah yang dihadapi. Contoh: record pada bahasa pemrograman pascal atau struct pada bahasa pemrograman c
  • ADT (Abstract Data Type): memperluas konsep UDT dengan menambahkan enkapsulasi, yang berisi sifat dan operasi yang dapat dilakukan terhadap kelas tersebut. Contoh: kelas pada Java

 

Abstraksi

Abstraksi digunakan sebagai sarana untuk mengatasi sebuah masalah kompleksitas perangkat lunak yang akan dirancang. Perancang mempertimbangkan sesuatu yang dapat mewakili keberadaan sebuah atau beberapa buah entitas yang memang ada di dunia nyata atau  bisa dikatakan sebagai objek. Dekomposisi melakukan perancangan dengan cara bertahap untuk mengurangi kompleksitas.

Perancangan fokus pada rancangan secara global, rincian dari implementasi dilakukan oleh pemrogram. Contoh:

  • Perancang - bagaimana data pada sistem digunakan untuk menyelesaikan permasalahan
  • Pemrogram - bagimana data yang bersangkutan direpresentasikan dan dimanipulasi atau dimodifikasi dalam memori komputer

 

Teknik Abstraksi Data

Imajinasikan kasus berikut:

Buatlah program untuk menghitung Persegi Panjang. 2 Pertanyaan di bawah ini akan dapat membantu anda untuk melakukan abstraksi data:

  • Apa saja attribute (nilai) yang ada dalam persegi panjang?
  • Apa saja operation (operasi) yang akan gunakan pada persegi panjang tersebut?

Attribute dan Operation merupakan dua hal yang digunakan untuk mengkarakteristikan ADT. Teknik abstraksi:

  • Lakukan eliminasi pada properti-properti yang kurang relevan, dan fokus pada properti-properti yang penting saja pada objek yang di abstraksikan

 

Contoh

Di bawah ini merupakan artikel tambahan mengenai cara melakukan abstraksi data dan juga contoh kodingannya dalam bahasa java

  • Abstraksi Data dan Contoh Kode Menghitung Persegi Panjang dalam Java
  • Abstraksi Data dan Contoh Kode Menghitung Biaya Perawatan Pasien Rumah Sakit dalam Jawa

 

Lanjutan

ADT berisi dua hal yaitu nilai yang diizinkan dan operasi yang diizinkan pada nilai. ADT mencakup hal yang lebih luas, yaitu memuat atau mengemas struktur data sekaligus dengan operasi-operasi yang dapat dilakukan pada struktur data tersebut. Struktur data hanya memperlihatkan bagaimana data-data dan operasi-operasi diorganisir. Implementasi ADT berisi tentang struktur data dan operasi-operasi yang dapat dilakukan terhadap struktur data.

 

Tambahan

Pendekatan ADT dan implementasinya, mengubah paradigma terstruktur atau biasa yang disebut dengan Object Oriented Programming (OOP). Dalam konteks OOP, ADT adalah bentuk primitif dari sebuah kelas atau objek. Kelemahan Utama ADT, bahwa data serta fungsi dalam ADT tidak benar-benar tertutup dari lingkungan luarnya (jika konsep penyembunyian informasi tidak diimplementasikan dengan baik) dan kelemahan lainnya adalah jika diperbaiki maka muncul objek (Object) dalam konteks OOP.

Belum ada Komentar untuk "Abstract Data Types Part II"

Posting Komentar

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel