1 / 12

Pendahuluan OOP

Pendahuluan OOP. Izzatul Ummah, S.T., M.T. Modified from: many sources (see references). Overview. Apa itu Object Oriented Programming? Perbedaan dengan procedural programming Kelebihan OOP Pengenalan Java Java: bahasa pemrograman berbasis OOP Ingat kembali C/C++ (bandingkan).

luz
Download Presentation

Pendahuluan OOP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Pendahuluan OOP Izzatul Ummah, S.T., M.T. Modified from: • many sources (see references)

  2. Overview • Apa itu Object Oriented Programming? • Perbedaan dengan procedural programming • Kelebihan OOP • Pengenalan Java • Java: bahasa pemrograman berbasis OOP • Ingat kembali C/C++ (bandingkan)

  3. Konseptual Objek Model • Objek Model: adalah proses bagaimana kita memodelkan sistem yang ada berupa objek-objek • Konseptual Objek Model terdiri dari 4 konsep dasar: • Abstraksi: • Proses mengamati objek2 yang ada di sistem dunia nyata, mengidentifikasi persamaan dan perbedaan ciri2nya, lalu membuat classes (+atribut+method) sesuai hasil pengamatan itu. • Abstraksi: penyederhanaan objek2 yg mirip sehingga kita dapat membuat sebuah class (atribut2/method) dan menyatakan bahwa objek2 yg mirip itu kita create/lahirkan dari class yang sama. • Encapsulasi: access specifier (public, private), get dan set • Class mempersatukan atribut dan method di dalamnya agar tidak tercerai-berai. Aturan: semua ATR+METH harus di dalam class. • Modularitas: masing2 objek ditreatment sendiri • Hierarki: relasi antar kelas, inheritance (pewarisan)

  4. Ide Dasar OOP • Membuat program dengan pendekatan semirip mungkin dengan dunia nyata: • Langkah pertama: Tentukan benda apa saja yang harus ada, siapa aktor/pelaku (role)? (Subjek) -> ini jadi Class (Object) • Apa sifat/elemen masing2 benda/aktor? -> ini jadi Property • Benda/aktor itu bisa melakukan apa saja? (Predikat) -> ini jadi Methods (kalau di C/C++ ini adalah prosedur/fungsi) • Jadi, setiap Class bisa memiliki Property dan Method • Pada OOP/Java, setiap variabel dan fungsi/prosedur harus jelas yaitu dimiliki oleh Class yg mana. Cara pemanggilan (invoke) fungsi/prosedur juga harus ditulis Class yg memilikinya. Misalnya se.hitungLuas() akan menghasilkan luas untuk object se dari class Segiempat.

  5. Ide Dasar OOP (Contoh) • Contoh: dunia makhluk hidup (model sistem biologi)

  6. Ide Dasar OOP (Contoh) • Contoh 1: • Class: Manusia • Property/Attribute: nama, umur, gender, kebangsaan, warnakulit, warna rambut, warna iris mata • Method: lahir, berjalan, berlari, berdiri, tidur, makan, berpikir, berbicara, tertawa, menangis, tersenyum, marah, berbohong, mati. • Contoh 2: • Class: Hewan • Property: umur • Method: lahir, makan, tidur, berlari, mati.

  7. Ide Dasar OOP (Contoh) • Contoh 3: • Class: Makhluk Hidup • Property/Attribute: umur, jumlah sel • Method: lahir, mati. • Class Manusia dan Hewan pasti termasuk di dalam kelompok Class Makhluk Hidup • Dibahas lebih jauh di Inheritance • Ingat konsep Phyllum/Divisio (pembagian divisio,class,ordo, family,genus,species) pada Biologi, maka kelas juga bisa dibuat bertingkat-tingkat dalam superclass-subclass.

  8. Ide Dasar OOP (Object Oriented) • Peralihan dari C/C++ (procedural programming) • Contoh: tipe bentukan titik, tipe bentukan mahasiswa • Class dan Object: • Class adalah suatu kelompok • Object adalah instansiasi kelas (harus “dilahirkan” dulu dengan menggunakan Constructor)

  9. Ingat lagi: Struct di C++ • Ingat kembali typedef struct di C++ (contoh: kasus titik) • Class: Titik • Property/Atribut: x, y, z (dgn tipedata float) • Ini perbandingannya antara di C++ dengan di OOP/Java struct titik { float x; float y; float z; };

  10. Praktikum Pertama Kita: Helloworld • Buat file Helloworld.java: • Nama kelas harus sama dengan nama file (case sensitive) • Isi filenya: • Bandingkan file helloworld.cpp dan Helloworld.java • Sama-sama punya “main” • Tapi di Java, main itu harus ada di dalam kelas

  11. Tentang Java • Java adalah: • Bahasa pemrograman • Nama software yang menjalankan program Java • Diambil dari nama kopi Jawa yg terkenal di kalangan programmer (C/C++, yg melahirkan Java) • Oak (diganti karena udah ada yang memakai nama ini) • Kelebihan OOP/Java: • Pemodelan lebih mudah dan akurat (mirip dunia nyata) • Membuat program/software lebih cepat • Write once, run everywhere (bisa di Windows, Linux, Mac) • J2ME: mobile di handphone, consumer device, dsb

  12. Kesimpulan: Konsep Penting di OOP • Everything in OOP/Java is class and object (tidak boleh ada 1 variabel atau fungsi/prosedur apa pun yg didefinisikan secara ‘mengambang’/tidak ada di dalam kelas tertentu)

More Related