Pemograman Berorientasi Objek

dokumen-dokumen yang mirip
IT210 - Pemrograman Visual. Ramos Somya

Konsep Pemrograman Berbasis Obyek

Praktikum. PBO (Kelas K) Oleh : MOHAMMAD SHOLIKIN

Pendahuluan Rekayasa Perangkat Lunak II. Alif Finandhita. Teknik Informatika UNIKOM

REKAYASA PERANGKAT LUNAK II

Pemograman Berorientasi Objek

Konsep Pemrograman Berorientasi Obyek. Maria Ulfah S Nurochman

Pemrograman Web Berbasis Framework. Pertemuan 2 : OOP Dalam Pemrograman Web. Hasanuddin, S.T., M.Cs. Prodi Teknik Informatika UAD

Pemograman Berorientasi Objek. Week 3 Abstrak dan Interface dalam suatu kelas

BAB III PERANCANGAN PROGRAM

Teknik Informatika S1

Oleh : RAHMADY LIYANTANTO

UML (Unified Modelling Language)

PRAKTIKUM REKAYASA PERANGKAT LUNAK MODUL KE - 2 PENGENALAN UML dengan RATIONAL ROSE OLEH: ANISA ISTIQOMAH (KELAS 5 B)

BAB III METODOLOGI PENELITIAN

Konsep Pemrograman Berorientasi Obyek. Pertemuan 1

BAB III METODOLOGI PENELITIAN

MAKALAH ANALISIS & PERANCANGAN SISTEM II USE CASE DIAGRAM

Konsep Pemrograman Berorientasi Obyek

BAB II LANDASAN TEORI. pengenalan komputer aplikasi merupakan sistem yang dirancang dan disusun

PertemuanI. Object Oriented

Pemrograman Berorientasi Obyek. Konsep OOP

KONSEP Pemrograman Berorientasi Objek KARMILASARI

PERTEMUAN 13 PERANCANGAN BERORIENTASI OBJEK UNTUK MULTI KELAS

Konsep Pemrograman Berorientasi Obyek

VISUAL BASIC Pengenalan VB NET

UNIFIED MODELING LANGUAGE

Pemrograman Berorientasi

Paradigma Pemrograman Berorientasi Objek

ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM

Jawaban Tugas Akhir Matrikulasi Semester Ganjil 2009/2010

Object Oriented Programming 1

Object Oriented Analysis and Design -Pendahuluan- Nisa ul Hafidhoh

Introduction Object Oriented Analysis & Design. Chapter I

JOBSHEET 3 CLASS DAN OBJEK

BAB II TINJAUAN PUSTAKA

Bab III METODOLOGI PENELITIAN. Pada penelitian ini menggunakan ala penelitian berupa perangkat keras

BAB II LANDASAN TEORI

IMPLEMENTASI ALGORITMA MINIMAX PADA PERMAINAN TIC-TAC-TOE SKALA 9X9

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

BAB II LANDASAN TEORI. Unified Modeling Language (UML) merupakan sistem arsitektur yang bekerja dalam

E-Book PEMROGRAMAN BERORIENTASI OBJEK. Disusun Oleh: Arfian Hidayat, S.Kom

Unified Modelling Language UML

1. Analisis Desain 2. UML Sebagai Tools OOA

Polymorphism. Materi ke-8 Pemrograman Berbasis Objek

BAB III OBJEK DAN METODOLOGI PENELITIAN. sesuai dengan pendapat Sugiyono (2003:58) mendefinisikan bahwa:

1 BAB III METODE PENELITIAN

Kebutuhan dan Spesifikasi Perangkat Lunak

Bagian 7 ANALISIS DESAIN PADA PEMROGRAMAN BERORIENTASI OBJECT DENGAN UML

Unified Modelling Language (UML)

Disain System Berorientasi Objek (Unified Modeling Language) ( Studi Kasus : Sistem Informasi Manajemen Perpustakaan )

Pengenalan Obyek. Arna Fariza. Materi

BAB I PENDAHULUAN. peran penting diantaranya adalah mengkoordinasikan, memfasilitasi, dan memberikan

Pertemuan 11 Object Oriented Program

Praktikum 4 Konsep Inheritance, Polymorphism, dan Encapsulation

BAB II LANDASAN TEORI

BAB IV ANALISIS DAN PERANCANGAN SISTEM

BAB II LANDASAN TEORI. Sistem Pendukung Keputusan (SPK) merupakan sistem informasi

Rahmady Liyantanto Blog : liyantanto.wordpress.com

MEMAHAMI PENGGUNAAN UML

Bab 3 Metoda dan Perancangan Sistem

PEMROGRAMAN BERORIENTASI OBJEK. Nurochman

BAB III METODOLOGI PENELITIAN

OBJECT ORIENTED PROGRAMMING

Object OOP. Polymor phism

BAB II LANDASAN TEORI

MODUL 1 PRAKTIKUM PEMROGRAMAN BERORIENTASI OBYEK(PBO) KELAS DAN OBJEK. TGL PRAKTIKUM : 24 September 2012 :ACHMAD FAJAR NORULLAH NRP :

KONSEP OBJEK ORIENTASI PROGRAM

BAB II TINJAUAN PUSTAKA

KARAKTERISTIK PEMROGRAMAN BERORIENTASI OBJEK (OOP) Pemrograman berorientasi Objek mempunyai karakterisitik sebagai berikut:

Adam Hendra Brata Teknik Informatika FILKOM UB Semester Genap 2015/2016

DAFTAR ISI... LEMBAR JUDUL LEMBAR PENGESAHAN... SURAT PERNYATAAN... ABSTRAK... ABSTRACT... KATA PENGANTAR... DAFTAR TABEL... DAFTAR GAMBAR...

PEMROGRAMAN BERORIENTASI OBJEK

II.3.5 Statechart Diagram... II-14 II.3.6 Activity Diagram... II-15 II.3.7 Component Diagram... II-16 II.3.8 Deployment Diagram... II-16 II.3.

BAB II LANDASAN TEORI

BAB II TINJAUAN PUSTAKA. permintaan pengguna dengan tujuan tertentu. Jenis program ini mempunyai sifat

DAFTAR ISI HALAMAN JUDUL PERTAMA

PERANCANGAN BERORIENTASI OBJEK

PEMROGRAMAN BERORIENTASI OBJEK KONSEP PBO

MEDIA PEMBELAJARAN PENGENALAN BAGIAN-BAGIAN OTAK MANUSIA

BAB 1 PEMROGRAMAN BERORIENTASI OBJEK

Tabel 1. Instruksi untuk menampilkan teks No. Bahasa Pemrograman Instruksi 1. Pascal WRITE ( Bahasa pemrograman itu mudah );

METODOLOGI BERORIENTASI OBJEK IIM ABDURROHIM, S.T.,M.T

INTRODUCTION OBJECT ORIENTED ANALYSIS & DESIGN

Rancang Bangun Aplikasi Manajemen Data Siswa (Studi Kasus SMK Negeri 1 Karawang)

Sanksi Pelanggaran Pasal 72 Undang-undang Nomor 19 Tahun 2002 Tentang Hak Cipta 1. Barangsiapa dengan sengaja melanggar dan tanpa hak melakukan

Pemrograman Berbasis Objek (Polimorfisme)

PENGANTAR RUP & UML. Pertemuan 2

Metode Coad -Yourdon

BAB II LANDASAN TEORI. Sistem dapat diartikan sebagai serangkaian komponen-komponen yang

Pengantar Pemrograman

Pemrograman Lanjut. Class dan Object. Aryo Pinandito, ST, M.MT Team Teaching Pemrograman Lanjut

SILABUS MATAKULIAH. Indikator Pokok Bahasan/Materi Aktifitas Pembelajaran

Pemrograman Berbasis Objek 2. Java Programming Fery Updi,M.Kom

BAB I PENDAHULUAN. I.1 Latar Belakang

BAB II LANDASAN TEORI

Rancang Bangun Aplikasi Latihan Ujian Nasional pada Sekolah SMP Ambia

LEMBARAN SOAL ULANGAN KENAIKAN KELAS Tahun 2014/ Komunikasi Paket Keahlian

Modul II Object Oriented Programming

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM. Perancangan program aplikasi dalam skripsi ini menggunakan aturan linear sequential

Transkripsi:

Pemograman Berorientasi Objek C# #1 Konsep Dasar PBO 2017

Pemograman Berorientasi Objek OOP Lecturer Susmini Indriani L, M.T Sistem Komputer Sri Nurhayati, S.Si, M.T Teknik Komputer susmini.indriani@email.unikom.ac.id sri.nurhayati@email.unik 2

Kompetensi Dasar Setelah mengikuti mata kuliah ini diharapkan mahasiswa memiliki kemampuan untuk: 1. Menguraikan konsep dasar PBO 2. Mengimplementasikan kelas (class) dan metode (method) untuk mewakili obyek-obyek dalam sistem 3. Mengimplementasikan abstrak dan interface dalam suatu kelas 4. Menggunakan initialization dan instance dalam class 5. Menerapkan konsep orientasi objek : Inheritance dalam sistem 6. Menerapkan konsep Polimorfisme 7. Menguraikan dasar UML 8. Mengindentifikasi Permasalahan menggunakan Use Case Diagram 9. Mengindentifikasi Permasalahan menggunakan Activity Diagram 10. Mengindentifikasi Permasalahan menggunakan Sequence Diagram 11. Menyusun Class Diagram dari permasalahan 12. Mewujudkan Object Oriented Design (OOD) dan Object Oriented Programing (OOP) menjadi sebuah aplikasi (Studi Kasus) 3

Konsep PBO Pemrograman Procedural Murni Pemrograman Basis Objek Variabel_1. Variabel_n Konstranta_1 Konstranta_n Fungsi_1. Fungsi_n Objek 4

Konsep Object Oriented Ide dasarnya adalah menggabungkan data dan fungsi menjadi satu kesatuan unit yang dikenal sebagai obyek (object) Di dunia nyata, tiap obyek memiliki ciri (atribut) dan tingkah laku (behavior). Misalnya : Obyek: mahasiswa Ciri bisa dilihat dari warna kulit, suara, jenis kelamin. Tingkah laku : berlari, menulis, makan. 5

Konsep Object Oriented Contoh: - Objek sebuah mobil mempunyai atribut tipe transmisi, warna dan manufaktur. Mempunyai tingkah laku berbelok, mengerem dan berakselerasi. Dengan cara yang sama pula kita dapat mendefinisikan perbedaan sifat dan tingkah laku dari singa. 6

Yang harus diperhatikan adalah Object Class Attribute Method Encapsulation/data hiding Inheritance Polymorphism 7

Object vs Class Pada dunia perangkat lunak, sebuah obyek adalah sebuah komponen perangkat lunak yang strukturnya 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. Class adalah struktur dasar dari OOP. Class terdiri dari dua tipe dari anggota dimana disebut dengan 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. 8

Contoh Class vs Object Kita memiliki sebuah class mobil dimana dapat digunakan untuk mendefinisikan beberapa obyek mobil. Pada tabel dibawah, mobil A dan mobil B adalah obyek dari class mobil. Class memiliki field nomor, plat, warna, manufaktur dan kecepatan yang diisi dengan nilai pada obyek mobil A dan mobil B. Mobil juga dapat berakselerasi, berbelok dan melakukan rem. 9

Object-oriented Analysis (OOA) OOA adalah sebuah pendekatan yang digunakan untuk : 1. Menggunakan obyek yang sudah ada untuk digunakan kembali (reuse) atau diadaptasi untuk penggunaan baru 2. Mendefinisikan obyek baru atau obyek yang dimodifikasi dan digabungkan dengan obyek yang sudah ada untuk membangun suatu aplikasi bisnis. Object Modeling (Pemodelan Obyek) Teknik untuk mengidentifikasi obyek yang ada dalam sistem dan relasi diantara obyek-obyek tersebut. 10

Mengapa harus Object Oriented? Beberapa Alasan: 1. Pengembangan perangkat lunak itu sulit karena perangkat lunak mudah diimpikan 2. Kompleksitas pengembangan perangkat lunak yang terus bertumbuh 3. membutuhkan dukungan konsep yang lebih handal, guna ulang (reusable) dan natural 4. OO menawarkan tipe data abstrak, modularitas, pemodelan informasi, proses software untuk mengatasinya 5. Walaupun demikian, OO bukan jaminan sukses pengembangan perangkat lunak 11

Kapan dan Dimana OO? Beberapa Situasi Umum: 1. Jika perangkat lunak (PL) yang dibangun cukup kompleks 2. Jika PL yang dibangun diperkirakan akan tumbuh makin kompleks di masa mendatang 3. Jika kita ingin membangun PL yang: Berdasar pada komponen yang telah pernah ada sebelumnya (daur ulang) Dapat dipergunakan kembali di masa mendatang (reusable) 4. Dan mungkin, kapanpun dan di manapun 12

Pembungkusan (Encapsulation) Dalam sistem berorientasi objek kita menggabungkan potonganpotongan informasi dan perilaku-perilaku spesifik yang bekerja pada informasi tersebut, kemudian mengemasnya menjadi apa yang disebut dengan objek. Inilah yang disebut dengan pembungkusan (encapsulation). 13

Pewarisan (Inheritance) Pewarisan (Inheritance) konsep yang menyatakan bahwa metode atau atribut dalam kelas dapat diturunkan atau digunakan kembali oleh kelas lain. 14

15

Polimorfisme (Polymorfism) Polimorfisme diturunkan dari bahasa latin yaitu poly yang berarti banyak dan morph yang berarti bentuk Polimorfisme sendiri berarti sesuatu yang memiliki banyak bentuk Polimorfisme mengijinkan kelas induk untuk mendefiniskan sebuah method general (bersifat umum) untuk semua kelas turunannya, dan selanjutnya kelas-kelas turunan dapat memperbaharui implementasi dari method tersebut secara lebih spesifik sesuai dengan karakteristiknya masing-masing. 16

Overriding & Overloading Overriding : terjadi ketika deklarasi method subclass sama ( termasuk parameter ) dengan method pada superclass. Overloading : yaitu penggunaan satu nama untuk beberapa method yang berbeda ( berbeda parameter ) 17

MakhlukHidup -Nama : char -Rumpun : char +MakhlukHidup(in Nama : char) +Bernafas() Binatang +Binatang(in Nama : char) +Bertumbuh() +Berjalan() +Kecepatan(in Nilai : int) Tumbuhan +Tumbuhan(in Nama : char) +Bertumbuh() Karnivora +Karnivora(in Nama : char) +Memakan(in Binatang : Binatang) +Kecepatan(in nilai : int) +Kecepatan(in nilai : double) Overloading Overriding Herbivora +Herbivora(in Nama : char) +Memakan(in Tumbuhan : Tumbuhan) +Kecepatan(in nilai : int) +Kecepatan(in nilai : double) 18

Keuntungan Menggunakan Pemodelan OO Kemampuan untuk menangani tipe-tipe data dan masalah-masalah yang lebih kompleks dan lebih sulit. Memperbaiki komunikasi antara pengguna, analisis, perancangan dan pemrogram. Meningkatkan derajad konsistensi antara tahap analisis, perancangan, serta kegiatan pemrograman karena sama untuk setiap tahap itu. Ketangguhan dan ketegaran sistem (robustness). Kemampuan untuk menggunakan ulang hasil-hasil analisis, perancangan serta pemrograman (reusable component) pada suatu proyek ke proyek lainnya. Meningkatkan konsistensi antara model-model yang dikembangkan selama analisis, perancangan, serta pemrograman berorientasi objek. 19

Unified Modelling Language (UML) Unified Modelling Language (UML) adalah sebuah "bahasa" yg telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML juga menggunakan class dan operation dalam konsep dasarnya, maka ia lebih cocok untuk penulisan piranti lunak dalam bahasa bahasa berorientasi objek seperti C++, Java, C# atau VB.NET. Walaupun demikian, UML tetap dapat digunakan untuk modeling aplikasi prosedural dalam VB atau C. 20

UML Diagram: use case diagram conceptual Diagram class diagram object diagram state chart diagram activity diagram sequence diagram collaboration diagram component diagram deployment diagram 21

Pengenalan C# C# (C sharp) adalah sebuah bahasa pemograman berorientasi objek yang didukung oleh microsoft.net Framework. Diciptakan Microsoft (Anders Hejlsberg) Aplikasi yang bisa dibuat dengan C#: - Aplikasi Console - Aplikasi Windows (Dekstop) - Aplikasi Web - Aplikasi Web Services 22

Mengapa menggunakan C#? Sederhana (simple) 23

Modern exception handling, garbage collection, extensible data types, dan code security. Object-Oriented Language encapsulation, inheritance, dan polymorphism. Powerfull dan fleksibel C# bisa digunakan untuk membuat berbagai macam aplikasi, seperti aplikasi pengolah kata, grafik, spreadsheets, atau bahkan membuat kompiler untuk sebuah bahasa pemrograman Efisien jumlah kata-kata (keywords) yang tidak terlalu banyak. Modular terdapat class yang terdiri dari method. Memiliki sifat reusable code. C# akan menjadi populer 24

Editor C# Notepad Visual Studio 6 Visual Studio.NET Editor-editor Lainnya: Visual SlickEdit dari MicroEdge, WebMatrikx untuk aplikasi C# berbasis web, editor text seperti UltraEdit, Macromedia Homesite, dll 25

Struktur Penulisan Program C# using System; using System.Collections.Generic; using System.Text; namespace Latihan1 { public class HelloWorld { // Bagian utama program C# public void Main() { Console.WriteLine("Hello, World"); } } } 26

Using Library Namespace menyatakan aplikasi kita atau lebih dikenal dengan paket aplikasi (application package). Output berupa tulisan Hello, World yang akan tampil pada mode console (mode dos prompt), Komentar menggunakan //komentar, /* komentar */ 27

Tugas Tulislah beberapa contoh class, object dan method dari kehidupan anda sehari-hari! minimal 5 jenis! 28