Intro to OOP Yesi Novia, S.Kom.

Slides:



Advertisements
Presentasi serupa
Konsep OOP di Java TRASPAC, Mei 2009 Oleh : Siwi Arie Widadi.
Advertisements

Pemrograman Berorientasi Objek
Object and All Things Related to It Viska Mutiawani, M.Sc.
PBO - PERTEMUAN 1- CLASS.
By : Rizky Yuniar Hakun. Konsep Pemrograman Berorientasi Object.
Object Oriented Programming
OBJECT ORIENTED PROGRAMMING in JAVA
PENGENALAN ANALISA SISTEM BERORIENTASI OBYEK
Pemrograman Lanjut Ratnokustiawan.wordpress.com.
DIKTAT PBO Oleh: Adam Mukharil B. S.Kom. BAB I – KONSEP PBO.
di OBJECT ORIENTED PROGRAMMING [OOP] Oleh H. SUMIJAN, Ir, M.Sc
Modul 1- Review Java.
7 Rekayasa Sistem Konsep Utama OOP Dedy Alamsyah, S.Kom.
Pertemuan 2 Konsep Aplikasi Berbasis Objek, UML dan Rational Rose
BAB 1 KONSEP OOP.
Pemrograman Berorientasi Objek
Inheritance (Pewarisan)
ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM
Class, Inheritance, Encapsulation & Interface
Pemrograman Berorientasi Obyek Oleh Tita Karlita
ALGORITMA DAN PEMROGRAMAN 2C MATERI MINGGU KE-2 Pengenalan Teknik-teknik Bahasa Pemrograman Henny Medyawati.
Pemrograman Berorientasi Obyek1 Sejarah C – Martin Richard -> Bahasa Pemrograman BCPL 1970 – Ken Thomson (Bell Lab) -> Bahasa B yang membuat Unix.
Class and Object Matakuliah : XXXX / Algoritma dan Metode Object Oriented Programming II Pertemuan : 2 Tahun : 2008 Versi : 1/0.
ANALISIS DAN PEMODELAN BERORIENTASI OBJEK DENGAN UML
Analisis dan Perancangan Berorientasi Objek (OOAD)
Rekayasa Perangkat Lunak Konsep Orientasi Objek
Introduction to object
11. Konsep Berbasis Object (Object-Oriented Concept)
PEMROGRAMAN BERORIENTASI OBJEK
OOidentity, state and behavior
Pemodelan Analisis.
Pengantar Object Oriented Analysis and Design
Object Oriented Programming
Intro to OOP Yesi Novia, S.Kom.
QUIZ PSBO Total : 35 PG.
Model Berorinetasi Data
BAB 1 KONSEP OOP.
PEMROGRAMAN BERORIENTASI OBJEK
Pemrograman Berorientasi Objek
Object Oriented Programming
PBO - PERTEMUAN 1- CLASS.
Inheritance.
Object Oriented Programming
Soal PSBO Pert.1-6.
Pemrograman Berorientasi Object
REKAYASA PERANGKAT LUNAK
INTRODUCTION.
Statechart , Class, Component & Deployment Diagram
PEMROGRAMAN BERORIENTASI OBYEK
Dasar-dasar Pemrograman Objek dg Java
Pemrograman Berorientasi Objek
ANALISA & DESAIN BERORIENTASI OBJEK
Pemrograman Berorientasi Objek
Pertemuan 4 CLASS DIAGRAM.
PEMROGRAMAN BERORIENTASI OBJEK
Algoritma dan Struktur Data
Model Berorinetasi Data
Iconix Process Doug Rosenberg.
ISTILAH-ISTILAH PENTING PEMROGRAMAN BERBASIS OBYEK
PEMODELAN ANALISIS RPL – PERTEMUAN 5&6.
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER (STMIK) PALANGKARAYA
Pemrograman Berorientasi Obyek
Pemrograman Berorientasi Objek
- PERTEMUAN 1- CLASS Mustazzihim Suhaidi,M.Kom
Pemrograman berorientasi objek
Dian Wahyuningsih, S.Kom., MMSI
Konsep Aplikasi Berbasis Objek
DPH1C4 Pemrograman berorientasi Obyek
FONDASI PEMROGRAMAN & STRUKTUR DATA #4 - 1
CLASS VS OBJECT INTRODUCTION OF CLASS. keyword class diikuti dengan nama class yang kita inginkan. Lebih baik digunakan kata yang diawali huruf.
Transcript presentasi:

Intro to OOP Yesi Novia, S.Kom

Perkembangan Orientasi Software 1960-1970 Process-Orientation – Process models – Data Flow Diagrams, Flow Charts 1980 Data-Orientation – Data models – Entity-Relationship (ER) Diagrams 1990 Object-Orientation – Object models – Class Diagrams, Event Diagrams 2000 –UML- standarisasi OOD

“An object is an encapsulation of state (data values) and behavior (operations). Thus an object is in many ways similar to a module, or an abstract data type." [Budd] ”An object has state, behavior, and identity; [Booch 91]

Car LightBulb BankAccount state/attributes state/attributes behavior on (true or false) behavior switch on switch off check if on state/attributes # of liters of gas in tank total # of km run so far efficiency (km/liter) behavior drive load gas change efficiency check gas check odometer reading Car LightBulb state/attributes balance behavior deposit withdraw check balance Note each object is an “instance” of that “class” of object each instance has its own values for its attributes e.g., different accounts can have different balances BankAccount

Representasi sebuah individu, benda, unit, entitas, real ataupun abstrak dengan peran yang jelas dalam domain permasalahan So, What objects are ?

Sebuah objek terdiri dari Atribut  know something Data yang dimiliki objek Cara untuk mendeskripsikan objek Operasi  do something Tindakan atau aksi yang dilakukan objek yang akan mempengaruhi atribut = +

Mengapa? Modularity Reusability Extensebility Dapat dipecah menjadi bagian-bagian kecil Reusability Komponen yang digunakan pada proyek sebelumnya dapat digunakan kembali Extensebility Komponen yang baru dapat dikembangkan dari komponen yang sudah ada

Prosedural VS OOP Prosedural OOP Mempunyai kemampuan untuk membangun proyek yang tangguh dan handal dalam skala besar Tidak bersifat reusable dan extensible Membutuhkan waktu dan biaya yang lebih besar untk memperluas atau menggunakan kembali komponen yang sudah ada OOP Bersifat reusable dan extensible

Prinsip-prinsip OOP Class Inheritance Enkapsulasi Polimorfisme

Class Cetak biru dari sebuah objek, atribut dn operasi yang dimilikinya Contoh : buku  bisa saja berupa kelas Objek : buku bahasa pemrograman java dengan no ISBN :…. Objek adalah perwujudan kelas  INSTANCE

Kelas dan objek

Kelas dan objek (2)

Kelas dan objek (3) public class BankAccount { private double balance; public BankAccount() balance = 0; } public double getBalance() return balance; public void deposit( double amount ) balance = balance + amount; … BankAccount.java Constructor: special method that handles initialization Java Example: BankAccount A constructor is invoked during object construction: BankAccount b; b = new BankAccount(); b.deposit( 100.00 ); Constructor call Method call

Enkapsulasi “Information hiding” Data dan cara untuk mendapatkan data (code) dibungkus dalam sebuah paket dan dilindungi dari intervensi luar

Inheritance A car is a vehicle A dog is an animal A teacher is a person Sebuah kelas menurunkan karakteristiknya ke kelas lain

OOP : Pewarisan 16

Polimorfisme Mempunyai beberapa bentuk / forms Memungkinkan objek yang berbeda untuk merespon sebuah pesan yang sama dengan cara masing-masing

Abstract vs Concrete Class ? Abstract class  class yang menyimpan aspek generic dari sub class  tanpa implementasi  tidak memiliki body, body digantikan dengan (;) Concrete class  subclass dari abstract class  mengimplementasikan abstract class

OOP : Polimorfisme abstract class concrete class bujur lingkaran getGeometri() luas() keliling() bujur lingkaran geometri persegi abstract class concrete class

Konsep ADBO ? Use case driven  saat analisa memperhatikan use case Architecture centric  saat desain memperhatikan arsitektur fungsional, static, dynamic dari sistem Iterative & Incremental (berulang dan bertambah )  mudah untuk dipakai ulang ataupun diupgrade

Great Software ? Customer : work, keep working, upgraded Programmer : well designed, easy to maintain, reuse “Give them what they want” Bagaimana caranya? Tergantung pada bagaimana mendecomposisikan, menguraikan, mengiris-iris problem