Pemrograman

Berorientasi Obyek

(Object-oriented Programming)

M. Saad Nurul Ishlah, M.Comp.

Dept. Ilmu Komputer - FMIPA Univ. Pakuan

Riwayat Pendidikan

  • S1: S.Komp. - Ilmu Komputer (Institut Pertanian Bogor)
  • S2: M.Comp. - College of Engineering & Computer Science (the Australian National University)

Kontak

Himbauan Terkait COVID-19

  • Jangan anggap sepele penyebaran COVID-19
  • 3M
    • Memakai masker
    • Mencuci tangan pakai sabun
    • Menjaga jarak
  • Jaga kondisi tubuh:
    • Makan bergizi
    • Berolah raga
    • Vitamin
  • Aku sehat, Kamu sehat

Standar Kompetensi

Mampu menjelaskan konsep berpikir berorientasi obyek

Mampu memodelkan obyek; menjelaskan langkah-langkah pengembangan berorientasi obyek, beserta alasan, tujuan, dan keuntungan berorientasi
obyek

Mampu menjelaskan Pemodelan Berorientasi Obyek menggunakan UML (the Unified Modelling Language)

Metode standar untuk memvisualisasikan perancangan sistem

Mampu menjelaskan kegunaan Use Case Diagram, Activity Diagrams, Class Diagrams, Interaction Diagrams, State Diagrams, dan Package
Diagrams, dan membuatnya dalam studi kasus.

Penilaian

  • Kehadiran - 10% *

    • ~20 keterlambatan
  • Tugas/Quis (Individual/Kelompok) - 20%

    • Tugas mingguan
    • Quiz
  • UTS - 20%

  • Praktikum - 20% **

  • UAS - 30%

 

Catatan: 

* minimum 80%

** 100%

Status: Tentatif

Rencana Perkuliahan

  • Gambaran Umum Berfikir Obyek
  • OMT (Object Modeling Technique)
  • Pengembangan Berorientasi Obyek
  • Object Oriented Modelling Using UML
  • Pengenalan Use Case Diagram
  • Penerapan Use Case Diagram pada kasus
  • Quiz
  • UJIAN TENGAH SEMESTER (UTS)

Awal Semester

  • Pengenalan Activity Diagram
  • Pengenalan Class Diagram
  • Pengenalan Interaction Diagram
  • Pengenalan State Diagram
  • Pengenalan Package Diagram
  • Penerapan Studi Kasus menggunakan UML
  • Quiz
  • UJIAN AKHIR SEMESTER (UAS)

Akhir Semester

Etika Perkuliahan

Object-oriented Programming

  • Object orientation: Ide, Paradigma, Konsep, cara berpikir memecahkan masalah komputasi dengan pendekatan berpikir obyek
  • Program dipecah menjadi bagian-bagian kecil (obyek) yang saling berkomunikasi
  • Merepresentasikan bagaimana sebuah obyek berpikir, berperilaku, dll

Terminologi

  • Class (Kelas)
    • Blueprint (cetak biru, cetakan), Ide, Abstraksi
    • Mendefiniskan ATRIBUT (data) dan PERILAKU (logika) sebuah obyek
      • Atribut: Karakteristik dari sebuah obyek
      • Perilaku: Apa yang dapat sebuah obyek lakukan
    • Dalam bahasa pemrograman
      • Atribut == Properti
      • Perilaku == Metode

Terminologi

  • Object (Obyek)
    • Dibentuk berdasarkan Class (instantiate)
    • Satu Class dapat mencetak banyak Obyek

Terminologi

  • Class (Kelas)
public class Puppy {
   int puppyAge;

   public Puppy(String name) {
      // This constructor has one parameter, name.
      System.out.println("Name chosen is :" + name );
   }

   public void setAge( int age ) {
      puppyAge = age;
   }

   public int getAge( ) {
      System.out.println("Puppy's age is :" + puppyAge );
      return puppyAge;
   }

}

Terminologi

  • Instance
  public static void main(String []args) {
      /* Object creation */
      Puppy myPuppy = new Puppy( "tommy" );

      /* Call class method to set puppy's age */
      myPuppy.setAge( 2 );

      /* Call another class method to get puppy's age */
      myPuppy.getAge( );

      /* You can access instance variable as follows as well */
      System.out.println("Variable Value :" + myPuppy.puppyAge );
   }

Konsep Penting (A PIE)

  • A: Abstraction
  • P: Polymorphism
  • I: Inheritance
  • E: Encapsulation

Perangkat Lunak

Pendukung

Pemodelan

  • Astah (Student Version)
  • Visual Paradigm (Community version)
  • StarUML (Evaluate version)
  • Draw.IO
  • dll

Pemrograman

  • Java (Bahasa pemrograman)
  • Netbeans
  • Intellij IDE - Jet Brains (Student Version)

Terima Kasih

PBO-1

By M. Saad Nurul Ishlah