Pertemuan-1 (Konsep Dasar OOP)

Download Report

Transcript Pertemuan-1 (Konsep Dasar OOP)

UPI CONVENTION CENTER [UPI-CC]

UNIVERSITAS PUTRA INDONESIA “ YPTK “ PADANG, 08 Agustus 2012

ABOUT VISSION

Jika visi anda untuk 1 tahun, tanamlah bunga Jika visi anda untuk 10 tahun, tanamlah pohon Jika visi anda sepanjang masa, tanamlah di hati Ilmu, iman, dan Hikmah

MENATA MASA DEPAN

Taburlah pemikiran maka Anda akan menuai tindakan ; Taburlah tindakan dan Anda akan menuai kebiasaan ; Taburlah kebiasaan dan Anda akan menuai karakte r; Taburlah karakter dan Anda akan menuai masa depan .

1 2 3 4 5

MENJAGA HATI

BUKA

BERSIHKAN SEHATKAN LEMBUTKAN TAJAMKAN

BELAJAR ADALAH BERUBAH

1

1. Dari Tidak Mengerti Menjadi sangat Mengerti

2

2. Dari Tidak Menguasai Menjadi Trampil

3

Dari Ugal-ugalan Menjadi Sopan 1. Dari Tidak Bisa Bergaul Menjadi Presenter

4

PRINSIP MENCARI ILMU

Kualitas Lulusan Dalam Dunia Kerja

1 Kemampuan Komunikasi 2 Kejujuran/Integritas 3 Kemampuan Bekerja Sama 4 Kemampuan Interpersonal 5 Beretika 6 Motivasi/Inisiatif 7 Kemampuan Beradaptasi 8 Daya Analitik 9 Kemampuan Komputer 10 Kemampuan Berorganisasi 4.69

4.59

4.54

4.5

4.46

4.42

4.41

4.36

4.21

4.05

11 Berorientasi pada Detail 12 Kepemimpinan 13 Kepercayaan Diri 14 Ramah 15 Sopan 16 Bijaksana 17 Indeks Prestasi (>=3.0) 18 Kreatif 19 Humoris 20 Kemampuan Berwirausaha 4 3.97

3.95

3.85

3.82

3.75

3.68

3.59

3.25

3.23

Sumber : National Association of Colleges and Employers, USA, 2002 (disurvei dari 457 pimpinan)

1 2 3 4 REUVEN BAR ON

IQ rata-rata berpengaruh 6% dalam keberhasilan maksimal 20% EQ INVENTORY

INSTITUT TEKNOLOGI CARNEGIE

dari 10.000 orang sukses : 15% sukses karena kemampuan teknis 85% sukses karena faktor-faktor kepribadian

DR. ALBERT EDWARD WIGGAM

dari 4000 orang yang kehilangan pekerjaan : 400 orang (10%) karena kemampuan teknis 3600 orang (90%) karena faktor-faktor kepribadian

Hasil studi D.P. Beach, 1982

87% orang yang kehilangan pekerjaan atau macet karirnya adalah disebabkan karena tidak memiliki etika kerja yang baik

BAGAIMANA MANAJEMEN WAKTU

Jika Kita hidup 60 tahun, maka : 1. Tidur 8 jam sehari 2. Nonton sehari TV 2 jam 3. Makan (3 kali) 2 jam sehari 4. Terjebak macet 3 jam sehari

1. Totalnya hidup 20 tahun seumur

2. Totalnya 5 tahun seumur hidup 3. Totalnya 5 tahun seumur hidup 4. Totalnya hidup 7.5

tahun seumur

BERAPA WAKTU YANG TERSISA UNTUK IBADAH ?

1 2 SIAPAKAH TEMAN-TEMAN KITA ?.

Teman keempat adalah tubuh kita.

kita.

Kita menghabiskan banyak waktu untuk membuatnya kelihatan menarik, tetapi ketika maut menjemput ia tidak akan pernah ikut bersama

Teman ketiga adalah harta dan pangkat.

membanggakannya, namun ketika kita mati, semuanya menjadi milik orang lain.

Kita selalu

3

Teman kedua adalah keluarga dan sahabat.

pun mereka pada kita, paling jauh mereka akan mengantar kita ke pemakaman.

Sedekat apa

4

Teman pertama adalah jiwa kita.

memberi makanan, membersihkannya, tetapi dialah satu-satunya yang mengikuti kita ke mana pun kita pergi. Maka, jaga dan peliharalah dia sebelum terlambat.

kesenangan Sering kita lalai untuk kepadanya dan

MAU UNTUNG ATAU RUGI

1

MEREKA YANG PENUH PERJUANGAN

Sylvester Stallone. Untuk memasarkan Rocky dia ditolak 1855 kali.

2 Thomas Alfa Edison dalam proses menciptakan bola lampu gagal 9999 kali. “

Aku tidak gagal, aku berhasil membuktikan bahwa 9.999 jenis bahan mentah itu tidak bisa dipakai. Aku akan meneruskan percobaan ini sampai menemukan bahan yang cocok

”.

3 4

Walt Disney mengajukan proposal “Disneyland” kepada bank-bank di Amerika Serikat ia ditolak sebanyak 302 kali.

Sebelum menemukan elemen radium, penelitian Marie Curie gagal sebanyak 48 kali. “Sesungguhnya perlu 100

tahun lagi untuk menemukan elemen ini, dan selama saya masih hidup saya tidak akan menghentikan penyelidikan ini

”.

Minggu ke 1 2 Pokok Bahasan

Berfikir berorientasi objek dan Desain berorientasi objek Class dan Method

3 4 5

SILABUS OOP PRA-MASTER

Materi

Messages Instances dan Initialization

Inheritance,Subk elas dan subtype

           Pengertian objek Elemen objek Konsep Dasar mendesain berorientasi objek.

Pengertian Class & method Deklarasi Class dan method Pengertian message Contoh penggunaan message Pengertian instance Fungsi inisialisasi

Tiga pilar OOP Pengertian subclass dan subtype

Tujuan Instruksi Umum ( TIU )

Memahami dan mengetahui tentang konsep berpikir berorientasi objek.

Tujuan Instruksi Khusus ( TIK )

Mahasiswa akan dapat menjelaskan konsep berpikir berorientasi objek

    Mengetahui pengertian class dan deklarasi class.

Mengetahui message.

Memahami instances inisialisasi  konsep  konsep dan 

Mengetahui mamahami mengenai tiga pilar dan OOP, subclass, subtype

Mahasiswa akan dapat menjelaskan pengertian class dan deklarasi class Mahasiswa dapat akan menjelaskan konsep messages Mahasiswa akan dapat mengenai menjelaskan konsep instances dan inisialisasi Mahasiswa akan dapat menjelaskan mengenai tiga pilar pembentuk OOP, subclass dan subtype.

SILABUS OOP PRA-MASTER

Materi Tujuan Instruksi Khusus ( TIK ) Minggu ke-

6 & 7 8 9 & 10

Pokok Bahasan

Replacement dan Refinement    Implikasi inheritance Multiple inheritance    Pengertian Replacement dan refinement Konsep Overriding Konsep multithreading Konsep penanganan eksepsi Konsep Multiple inheritance Bagaimana membuat multiple inheritance 

Tujuan Instruksi Umum ( TIU )

Memahami konsep  replacement dan refinement.

Mengetahui konsep overriding.

  Memahami konsep penanganan eksepsi Mengetahui konsep multiple inheritance     Mahasiswa akan dapat menjelaskan mengenai konsep replacement dan refinement.

Mahasiswa akan dapat menjelaskan mengenai konsep overriding.

Mahasiswa akan dapat menjelaskan mengenai konsep penanganan eksepsi Mahasiswa akan dapat menjelaskan mengenai konsep multiple inheritance

SILABUS OOP PRA-MASTER

Minggu ke Pokok Bahasan

11,12,13 Polymorphis m & Studi – studi kasus   14 Templates dan STL    

Materi

Konsep polymorphism Studi kasus untuk OOP Konsep Template dan class template Namespace Assertion Throwing dan Catchin 

Tujuan Instruksi Umum ( TIU )

Mengetahui konsep polymorphism.

  Mengetahui pengertian templates.

Tujuan Instruksi Khusus ( TIK )

Mahasiswa akan dapat menjelaskan mengenai konsep Polymorphism Mahasiswa mampu menjelaskan konsep Templates dan STL.

Refferensi :

1. Herbert Schildt, The Complete Reference C++, Fourth Edition, Mc Graw-Hill/Osborne 2. Antony Pranata, Pemrograman Borland C++, Andi Offset,Yogyakarta 3. Online Reading, www://cplusplus.com 4. Herbert Schildt, Java2 : A beginner’s Guide, Second Edition, McGraw-Hill/osborne 5. Patrick naughyon, Java Handbook : Konsep dasar pemrograman java,McGraw-Hill/Osborne 6. Onno W.Purbo,Trik Pemrograman Java untuk jaringan dan internet,ElexMedia Komputindo 7. Mary Campione, Kathy Walrath, Alison Huml,The Java Tutorial, Third Edition : A Short Course on the Basics, Addison Wesley.

8. Cay S.Horstmann, Gary Cornell, the Sun Microsystem Press Java Series, Sun microsystem.

Refferensi :

1. UML Editor

http://argouml-downloads.tigris.org

http://staruml.sourceforge.net

2. Eclipse

www.eclipse.org/downloads

3. Netbeans7.x

http://netbeans.org/downloads/index.html

4. Java Software Development Kit (JDK)

http://java.sun.com/javase/downloads/widget/jdk6.jsp

5. JCreator

http://www.jcreator.com

Instruksional Umum Mahasiswa mampu membangun dan mengem bangkan perangkat lunak yang berorientasi obyek guna mendukung pembangunan Sistem Informasi.

Instruksional Khusus Mahasiswa pemrograman menjelaskan mampu pemrograman yang lain.

menjelaskan berorientasi perbedaan obyek pengertian dengan dan teknik mampu teknik-teknik

1. Macam-macam Teknik Pemrograman 2. Konsep Orientasi Obyek a. Object (obyek) b. Class (Kelas) c. Encapsulation (pengkapsulan) c. Inheritance (pewarisan) d. Polymorphisme 3. Analisa dan Desain berorientasi Obyek 4. Pengenalan PHP – MYSQL 5. OOP dalam PHP Programming 6. Proyek Pemrograman Berorientasi Obyek

Hardware Brainware Software

PEMROGRAMAN (PROGRAMMING) Kegiatan menulis kode-kode program (coding) dan mengkompilasinya agar dapat dimengerti oleh komputer dengan menggunakan suatu bahasa pemrograman (mis : PHP, Java, C ++, Pascal, dll)

BERORIENTASI

Orientasi (e: Orientation) dalam kamus artinya “ mengarahkan ” atau “ pendekatan ”

OBYEK

sesuatu yang mempunyai identitas yang uniq dan nilai atribut tertentu, atau sesuatu yang bisa kita cirikan padanya suatu sifat tertentu. (ciri khas)

OBYEK DAN KELAS

KELAS

Suatu koleksi konseptual/abstraksi dari obyek yang dapat dijelaskan dengan atribut dan metode yang sama

OBYEK – KELAS

adalah sekumpulan obyek yang mempunyai atribut dan metode yang sama MANUSIA BINATANG HP HP-NOKIA RAHAYU KUCING NOKIA 8210

PEMROGRAMAN BERORIENTASI OBYEK (PBO) Kegiatan yang berhubungan dengan pemrograman yang mempunyai pendekatan (mengarah) ke- obyek BAHAN DISKUSI : 1. Anggapan bahwa PBO adalah pemrograman dengan bahasa pemrograman visual 2. Mungkinkah pemrograman dengan bahasa pemrograman visual tidak berorientasi obyek

Beberapa jenis teknik pemrograman yang telah pernah ada :

1. unstructured programming 2. procedural programming 3. modular programming 4. object-oriented programming

unstructured programming

Teknik memrogram dengan cara menuliskan program hanya pada satu program utama. Di dalam program utama tersebut, keseluruhan baris programnya berisi urut-urutan perintah atau statemen untuk memodifikasi dan mengolah data.

Global data diolah secara langsung pada program utama

unstructured programming

.

teknik pemrograman ini yang pertama kali dikenal dan pelajari, teknik ini akan mendapati kesulitan dan kerugian ketika kita menuliskan program yang cukup besar.

Seringkali urutan-urutan statemen yang sama ditulis kembali pada penempatan yang berbeda di dalam program, utama, sehingga baris program menjadi sangat banyak sulit untuk pengembangan program.

di pelajari dan diadakan

procedural programming

Dengan teknik ini kita dapat mengatur urutan statemen program, mengembalikan urutan statemen program pada suatu tempat yang kita inginkan . Suatu pemanggilan prosedur digunakan untuk memohon prosedur tersebut berjalan, setelah diproses, arus kendali urutan akan dikembalikan pada urutan proses pemanggilnya.

procedural programming

Main program Procedure Procedure akan dipanggil oleh baris program program dan setelah selesai urutan dikembailkan di main

procedural programming

Dengan teknik ini program terlihat lebih tersusun dan kemungkinan kesalahan seperti di unstructured tidak ada.

Jika suatu prosedur benar, setiap kali digunakan pasti mengeluarkan hasil benar, dan begitu sebaliknya jika prosedur itu salah juga akan menghasilkan kesalahan jika dipanggil berulangkali.

Tetapi dengan teknik ini kita dapat membatasi tempat pencarian kesalahan, dan jika prosedur yang salah, kita cukup memperbaiki satu kali di baris program dalam prosedur tersebut.

procedural programming

Ada yang menggunakan teknik ini dengan cara program utama hanya berisi baris-baris perintah pemanggil prosedur dan menyediakan data yang akan diolah di prosedur, setelah selesai proses hasilnya akan di bawa ke program utama Program utama mengkoordinir panggilan ke prosedur dan penyerahan data sesuai parameter .

modular programming

Pada teknik pemrograman modular ini kita mengelompokkan beberapa procedure yang sama fungsinya ke dalam suatu modul yang terpisah dari program utama, modul yang dibuat mungkin lebih dari satu.

Dasar penciptaan modul ini, karena programer menilai prosedur di dalam modul akan banyak digunakan pada program program yang berlainan.

modular programming

Masing-masing Modul dapat mempunyai data sendiri dan mengijinkan masing-masing modul untuk mengatur suatu status internal untuk dimodifikasi oleh prosedur yang ada didalamnya.

Jadi, paradigma baru yang ditawarkan pada teknik ini adalah suatu program tidak lagi terdiri dari hanya satu bagian tunggal, tetapi dibagi ke dalam beberapa bagian yang lebih kecil saling berhubungan.

modular programming

Program utama mengkoordinir panggilan ke prosedur di dalam modul terpisah dan penyerahan data sesuai parameter .

object-oriented programming

Pada teknik OOP menjadikan kode lebih mudah dipelihara dibandingkan dengan teknik yang lain.

OOP menawarkan keistimewaan reusebility, kemampuan yang membuat kode mudah digunakan kembali pada pengembangan aplikasi yang lain, sehingga meningkatkan produktifitas programer.

Pada OOP di program utama terdapat kumpulan obyek yang saling berinteraksi.

object-oriented programming

Obyek merupakan hal terpenting dalam OOP, contoh mudah pada pemrograman Visual, form dan kotak teks merupakan sebuah obyek yang biasa dilibatkan dalam pembuatan program aplikasi.

Suatu obyek dapat dimanipulasi melalui properti (atribut) yang dimilikinya dan event (kejadian) yang dikenali obyek (contoh : DblClick) serta metode yang dijalankan jika tindakan kejadian dilakukan.

object-oriented programming

Object di dalam program saling berhubungan dengan saling mengirim pesan .

OBJECT ORIENTED PROGRAMMING (OOP)

1. Adalah paradigma pemrograman yang diorientasikan pada objek.

2. Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas kelas atau objek-objek.

3. Setiap objek dapat menerima pesan, memproses data, dan mengirim pesan ke objek lainnya.

OBJECT ORIENTED, APA OBJECT ?.

Object

adalah sebuah komponen perangkat lunak yang stukturnya mirip dengan obyek pada dunia nyata. Setiap obyek dibangun dari sekumpulan data (atribut) yang disebut variabel untuk menjabarkan karakteristik khusus dari obyek, dan juga terdiri dari sekumpulan method yang menjabarkan tingkah laku dari obyek.

CLASS vs OBJECT

Obyek

adalah sebuah komponen perangkat lunak yang stukturnya mirip dengan obyek pada dunia nyata. Setiap obyek dibangun dari sekumpulan data (atribut) yang disebut variabel untuk menjabarkan karakteristik khusus dari obyek, dan juga terdiri dari sekumpulan method yang menjabarkan tingkah laku dari obyek. Bisa dikatakan bahwa obyek adalah sebuah perangkat lunak yang berisi sekumpulan variabel dan method yg berhubungan. Variabel dan method dalam obyek Java atau C++ secara formal diketahui sebagai variabel instance dan method instance. Hal ini dilakukan untuk membedakan dari variabel class dan method class.

Class

adalah sturktur dasar dari OOP. Class terdiri dari dua tipe dari anggota dimana disebutdengan field (attribut/properti) dan method.

Field merupakan tipe data yang didefinisikan oleh class, sementara method merupakan operasi. Sebuah obyek adalah sebuah instance (keturunan) dari class.

PBO vs PT

1. Pemrograman Terstruktur (PT), prosedur dan data merupakan dua hal yang terpisahkan satu sama lain.

2. Contoh, untuk mengelola data waktu yang terdiri dari jam, menit, dan detik, dalam C dapat digroupkan dengan menggunakan struct sebagai berikut: 3. Namun meskipun demikian, untuk mengolah ketiga data tersebut, dibutuhkan prosedur yang disusun pada bagian yang terpisah.

PBO vs PT

1. Pemrograman Orientasi Obyek (PBO), prosedur dan data dapat dibungkus menjadi sebuah objek sehingga prosedur dan data tidak terpisah lagi melainkan menjadi satu kesatuan.

{ class Time int hour; // 0-24 int minute; // 0-59 int second; // 0-59 };

2. Ini merupakan salah satu konsep PBO yang disebut dengan “encapsulation”.

3. PBO didasarkan pada pemodelan objek – objek dunia nyata menjadi objek – objek dalam pemrograman

CLASS vs OBJECT

PROCEDURAL VS OBJECT ORIENTED PROCEDURAL

} { void main() int x, y; …..

…..

x = inisialisasi(); ….

Y = inisialisasi(); …..

Pemanggilan fungsi { inisialisasi() } return(0); Definisi fungsi

PROCEDURAL VS OBJECT ORIENTED

Berfikir berorientasi objek dan Desain berorientasi objek

Procedural Programming OOP

Variable_1 Variable_n Function_1 Function_n

Simplify

Object

PROCEDURAL VS OBJECT ORIENTED

Class Student Object Student_No Student_Name Address Instance 201211001 01312004 02311002 Ali Badu Charles Kerinci Pekanbaru Padang

PROCEDURAL VS OBJECT ORIENTED

Transportation Class Object Instance Garuda Mandala Lion SriWijaya Batavia Lorena ANS Merah Sari Jatra ALS Kerinci Kambuna Lambelu Tidar

PROCEDURAL VS OBJECT ORIENTED

Kata-kunci class mewakili pendeklarasian kelas Nama kelas Nama anggota data Deklarasi kelas diakhiri dengan titik koma Obyek

NEXT KARAKTERISTIK

PEMROGRAMAN BERORIENTASI OBYEK (PBO)