Pola-Pola Perancangan/ Design Patterns
|
|
|
- Djaja Agusalim
- 9 tahun lalu
- Tontonan:
Transkripsi
1 Pola-Pola Perancangan/ Design Patterns Observer Design Pattern Imam Cholissodin, S.Si., M.Kom UBmail : [email protected] Blog :
2 Outline Introduction to Observer General Example Motivation for Using Example of the Problem Aspects of Observer Design Generalized Structure Two Ways to Implement Updates General Implementation Benefits of the Observer Pattern Trouble Spots
3 Introduction to Observer A Gang of Four (GoF) design pattern, salah satu pola yang dibahas dalam Desain Pattern : Elements of Reusable Object- Oriented Software by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Observer mendefinisikan kebergantungan antar objek dalam bentuk one-to-many atau many-to-many. Ketika kondisi suatu objek mengalami perubahan, maka semua objek lain yang bergantung pada objek tersebut akan diperbarui secara otomatis. Digunakan untuk penanganan event (event handling) di mana diperlukan konsistensi antara objek, misalnya Swing Framework untuk pengembangan GUI.
4 General Example Misalkan Anda memiliki beberapa data yang dapat ditampilkan dalam tabel, grafik batang atau pie chart. Perubahan data yang mendasari harus tercermin/tergambar dalam semua tiga tampilan tersebut. Di sinilah Observer Desain Pattern digunakan (sangat berguna).
5 Motivation for Using Diperlukan untuk memelihara konsistensi antara obyek terkait ketika suatu sistem berisi kumpulan kelas yang saling bekerja sama. Konsistensi ini tidak boleh dilakukan melalui kelas yang berhubungan sangat erat karena ini mengurangi usabilitas/penggunaan kembali dari kelas-kelas erat yang telah digabungkan. Kebutuhan yang terukur. Di sini harus ada batasan yang jelas terkait dengan jumlah objek yang bergantung pada satu atau lebih dengan obyek lainnya.
6 Example of the Problem: Misalkan anda meng-coding sebuah aplikasi di mana stasiun cuaca (weather station) meng-update tiga obyek, yang satu menampilan kondisi saat ini (current conditions,), yang satunya lagi menghitung data secara statistik dari waktu ke waktu (up to date), dan satu lainnya yang membuat prakiraan (forecast). Berikut ini adalah contoh pendekatan yang cukup jelas/ The Obvious Approach : public class WeatherData { [declarations and getters/setters diabaikan/dihilangkan] public void measurements changed(){ float temp = gettemperature(); float humidity = gethumidity(); float pressure = getpressure(); } } currentconditionsdisplay.update(temp, humidity, pressure); statisticsdisplay.update(temp, humidity, pressure); forecastdisplay.update(temp, humidity, pressure); Elisabeth Freeman, Eric Freeman, Sierra, and Bates, Head First Design Patterns,O Reilly 2004
7 Problems With The Obvious Approach public void measurementschanged(){ float temp = gettemperature(); float humidity = gethumidity(); float pressure = getpressure(); } currentconditionsdisplay.update(temp, humidity, pressure); statisticsdisplay.update(temp, humidity, pressure); forecastdisplay.update(temp, humidity, pressure); Problems base/ Permasalahan : Bagian program yang cenderung berubah dijadikan satu dengan bagian program yang tidak mungkin berubah. update() panggilan yang dikodekan untuk objek nyata, bukan type. Perlu mengubah koding program jika pelanggannya (subscribers) berubah. Observer akan mengatasi masalah ini
8 Three Major Aspects of Observer 1. The Subject, yang merupakan objek yang diamati. 2. The Observer, yang mengamati Subyek. 3. Hubungan antara 1 dan 2 : Melampirkan (attach) / melepaskan (detach) atau Berlangganan (subscribe) / tidak berlangganan (unsubscribe). Pembaruan (update).
9 Generalized Structure
10 Generalized Structure (cont.) Subject Interface untuk ConcreteSubjects Membutuhkan implementasi untuk menyediakan setidaknya metode berikut : subscribe / attach. unsubscribe / detach. notify untuk semua observer dariperubahan kondisi yang ada. ConcreteSubject Mengimplementasikan antarmuka Subyek (Subject interface). Mengelola referensi (references) baik langsung atau tidak langsung dengan satu atau lebih ConcreteObservers. Terus melacak keadaannya (state) sendiri. Ketika terjadi perubahan keadaan (state), maka state tersebut akan mengirimkan pemberitahuan (notification) kepada semua Observers dengan memanggil (call) metode update() mereka.
11 Generalized Structure (cont.) Observer Interface untuk ConcreteObserver objects Membutuhkan suatu update method ConcreteObserver Ini adalah objek yang sebenarnya (actual object) yang mengamati keadaan (state) ConcreteSubject tersebut. State yang dikelola harus selalu konsisten dengan keadaan Subjectnya. Mengimplementasikan metode update().
12 Generalized Structure (cont.)
13 Two Ways to Implement Updates The Push Model Subject mengirimkan semua informasi yang diperlukan terkait apapun perubahan yang terjadi kepada semua Observers. memberi (pushes) informasi kepada Observer sebagai parameter dengan metode update(). Membutuhkan asumsi tentang apa yang Observers perlu tahu. Mungkin perlu untuk memberikan ijin berlangganan (subscription) untuk perubahan yang relevan saja, tetapi ini akan menambah kompleksitas dari progam. The Pull Model Subject mengirimkan indikasi kepada Observer bahwa perubahan telah terjadi. Observers menggunakan public methods dari Subject untuk melakukan query information yang mereka inginkan. Hal ini terserah dari Observer untuk menarik semua informasi yang diperlukan dari Subject dalam rangka untuk memberikan efek perubahan yang relevan. Subject membutuhkan beberapa asumsi tentang apa saja yang ingin diketahui oleh Observers.
14 General Implementation Subjects dapat melacak Observers melalui ArrayLists atau struktur data lainnya. Observers dapat melacak beberapa Subjects dan mendapatkan data yang berbeda dari masing-masing. Pull model menggunakan metode pembaruan yang mengambil referensi ke Subjects sebagai parameter. Subjects harus memicu (men-trigger) metode update ketika state-nya berubah.
15 General Implementation Metode yang mengubah keadaan (state) dengan memanggil (call) metode statechanged() : public void notifyobservers(){ for(observer o: observers) } o.update(); public void statechanged(){ // do other things / melakukan hal-hal yang lainnya notifyobservers(); } // do whatever else still needs doing / melakukan apa saja yang masih perlu dilakukan. public void setmeasurements(arguments.) { // set instance variables first / mengatur variabel tingkat pertama } statechanged();
16 Simple Example: Swing Button With Listeners Swing JButtons adalah Subjects; Listeners adalah Observers JButton extends AbstractButton, suatu abstract class yang memerlukan methods to add and remove listeners, serta beberapa types of notify() methods. ActionListener mengharuskan pelaksana program (implementers) memiliki metode actionperformed() (update()). Dapat menambahkan sebanyak listeners yang anda ingin terhadap JButton, selama mereka mengimplementasikan ActionListener.
17 Familiar Example: Swing Button With Listeners public class SwingObserverExample{ Jframe frame; [stuff omitted] public void go() { frame = new JFrame(); JButton button = new JButton("Should I do it?"); button.addactionlistener(new AngelListener()); button.addactionlistener(new DevilListener()); frame.getcontentpane().add(borderlayout.center, button); [frame property code omitted] } // using inner classes in this very simple example class AngelListener implements ActionListener { public void actionperformed(actionevent event) { System.out.println("Don't do it"); } } class DevilListener implements ActionListener { public void actionperformed(actionevent event) { System.out.println("Come on, do it!"); } } } When we click the button, both listeners are notified and take action. Elisabeth Freeman, Eric Freeman, Sierra, and Bates, Head First Design Patterns,O Reilly 2004, p. 73
18 Implementation in Java Java telah built-in untuk mendukung konsep Observer. java.util.observable class dapat di-extended oleh Subject. java.util.observer interface dapat diimplementasikan oleh kelas yang ingin mengamati (observe) Subject.
19 UML Diagram for Observable/Observer Classes
20 Methods in java.util.observable Observable() Membuat Observable object(subject) tanpa melakukan inisialisasi Observers. setchanged() Mengindikasikan bahwa suatu Subject telah berubah dalam beberapa cara. haschanged() Returns True jika metode setchanged() sudah dipanggil kembali (recently) daripada metode clearchanged(). Returns False jika sebaliknya. clearchanged() Menunjukkan bahwa objek ini telah melakukan pemberitahuan kepada semua observers terhadap perubahan-perubahan terbaru. Hal ini akan dilakukan call secara otomatis oleh metode notifyobservers(). countobservers() Mengembalikan jumlah objek yang Observing Subject.
21 Methods in java.util.observable (cont.) addobserver(observer o) Menambahkan Observer object dikirimkan ke daftar Observers untuk disimpan oleh Subject. deleteobserver(observer o) / deleteobservers() Menghapus Observer object yang dilalui atau semua Observer object dari masing-masing daftar Observers yang disimpan oleh Subject.
22 Methods in java.util.observable (cont.) notifyobservers(object arg) / notifyobservers() Jika suatu Subject telah berubah, metode ini memberitahu semua Observers dan kemudian memanggil metode clearchanged(). Ketika diberikan suatu arg sebagai parameter dalam pemanggilan fungsi, Observer dapat mengetahui mana saja atribut Subject yang telah berubah, jika sebaliknya Observer bisa diberikan notifikasi tanpa menentukan arg-nya.
23 Methods in java.util.observer update(observable o, Object arg) Dipanggil (called) ketika Subject telah berubah. o adalah Subject yang dimaksud/ bersangkutan, dan arg adalah argumen yang dapat dikirimkan untuk memberitahu Observer mana saja yang atribut Subject-nya telah berubah.
24 Limitations of Built-In Implementation Observable is a class, not an interface Tidak dapat menambahkan perilaku (behavior ) ke kelas nyata yang subclass-nya memiliki suatu perilaku yang lain dan berbeda. Karena tidak ada Observable interface, Anda tidak dapat membuat implementasi yang bekerja dengan Observer tetapi tidak termasuk subclass yang Observable. Tidak dapat menulis/membentuk kelas lain yang memiliki suatu Observable (kelas yang dapat diamati) karena setchanged() yang ada bersifat protected.
25 Limitations of Built-In Implementation
26 Benefits of the Observer Pattern Penghubung antara Subject dan Observer Objects. Banyak Observers dapat ditambahkan ke Subject tanpa harus memodifikasi Subject. Menggunakan kembali Subject tanpa perlu menggunakan kembali siapapun Observers mereka sebelumnya. Hal sebaliknya juga berlaku. Subject mampu melacak daftar dari Observers. Subject tidak perlu mengetahui kelas konkret Observers-nya, tetapi cukup hanya dengan mengimplementasikan masingmasing antarmuka Observer (Observer interface).
27 Trouble Spots Harus memberikan banyak notifikasi jika Observers memperbarui klien/ pelanggan mereka sendiri atau jika mereka juga membuat perubahan terhadap Subject-nya. Mengulangi pemberitahuan bila terjadi perubahan secara berurutan/ beruntun. "Menggantung di referensi / Dangling references untuk Subjects atau Observers ketika salah satu jenis/tipenya dihapus secara manual dalam non-garbage collected environments. Maka diharuskan perlu memberitahu Observers ketika Subjects tersebut dihapus, dan sebaliknya. keadaan subjek (Subject state) harus konsisten (self-consistent) sebelum memanggil (calling) notify(), terutama yang menggunakan Pull Model. Harus berhati-hati untuk tidak melakukan push irrelevant information pada observers dengan Push Model. Jika update() gagal, Observer tidak bisa mengetahui apakah informasi yang hilang tersebut penting ataukah tidak penting.
28 Terima kasih Imam Cholissodin, S.Si., M.Kom Mail : [email protected] Blog :
Pemrograman Berbasis. Strategy dan Observer Pattern
Pemrograman Berbasis Komponen 2 Strategy dan Observer Pattern Background Programming is always change But this changes are sometime the same So, there will be something - a pattern to be used in programming
Sendy Ferdian Sujadi
Sendy Ferdian Sujadi Sebutkan 1 layout manager yang sudah dipelajari, jelaskan! 2 Event Handling Event Listener Latihan 3 Event merupakan sebuah objek yang di-generate oleh user pada saat sesuatu terjadi
Slide 6: Writing Classes
Slide 6: Writing Classes Bank Account Class 1. File Account.java berisi sebagian hal yang diperlukan untuk merepresentasikan sebuah bank account. Ketik dan simpan program tersebut serta pelajari methods
Pemrograman Lanjut. Intro to GUI (Graphical User Interface)
Pemrograman Lanjut Intro to GUI (Graphical User Interface) PTIIK - 2014 2 Objectives Memahami struktur hirarki class GUI Mampu menjelaskan setiap komponen (class) yang terdapat pada struktur hirarki GUI
Teknik Informatika S1
Teknik Informatika S1 Object Oriented Analysis and Design Interaction Diagram dan State Diagram Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS [email protected] +6285740278021
Membuat User Interface dengan Swing. Program yang dibuat sebelumnya selalu berbasis console User lebih senang berinteraksi dengan
Topik Memahami komponen dasar swing Memahami implementasi swing dalam program Mengimplementasikan button, check box, dan radio button dalam program Mengimplementasikan label,text Field dan Password Field
- Setiap pola yang menggambarkan permasalahan yang terjadi secara berulang, serta
MODUL 1 IMPLEMENTASI MODEL VIEW CONTROLLER (MVC) DESIGN PATTERN Design Pattern dapat didefinisikan : - Setiap pola yang menggambarkan permasalahan yang terjadi secara berulang, serta menjelaskan cara utama
Pemrograman Lanjut. Interface
Pemrograman Lanjut Interface PTIIK - 2014 2 Objectives Interfaces Defining an Interface How a class implements an interface Public interfaces Implementing multiple interfaces Extending an interface 3 Introduction
Teknik Informatika Universitas Wijaya Kusuma Surabaya
TUGAS POLA-POLA PERANCANGAN Sistem Informasi Peminjaman Buku (Implementasi factory method pada JInternalFrame Java) Nama Kelompok : Erfan Rachmat Santosa ( 09120073 ) Untari Kristina ( 09120065 ) Teknik
Pola-Pola Perancangan/ Design Patterns
Pola-Pola Perancangan/ Design Patterns Introduction Imam Cholissodin, S.Si., M.Kom UBmail : [email protected] Blog : http://imamcs.lecture.ub.ac.id Outline Latar Belakang Filosofi & Sejarah Design Pattern
1. Keyword mana yang memiliki fungsi sama dengan keyword this dan menyediakan reference ke atribut turunan dari objek? super
Your browser does not support inline frames or is currently configured not to display inline frames. Waktu Sisa : 1:58:53 1. Keyword mana yang memiliki fungsi sama dengan keyword this dan menyediakan reference
PENERAPAN JAVA SERVER FACES UNTUK DESIGN PATTERN WEB
PENERAPAN JAVA SERVER FACES UNTUK DESIGN PATTERN WEB Yanto (1) Abstrak: J2EE Pattern adalah kumpulan pola-pola yang digunakan dalam menyelesaikan masalah yang umumnya dihadapi oleh setiap programmer Java
SYLLABUS DAN PENDAHULUAN. Astrid Lestari Tungadi, S.Kom., M.TI.
SYLLABUS DAN PENDAHULUAN Astrid Lestari Tungadi, S.Kom., M.TI. PENDAHULUAN Kode Mata Kuliah : Nama Mata Kuliah: Perancangan Sistem II Kredit : 4 sks Dosen : Astrid Lestari Tungadi, S.Kom., M.TI. Bahan
1. Manakah jawaban yang benar,pada saat Anda mengcompile dan menjalankan class berikut ini:
1. Manakah jawaban yang benar,pada saat Anda mengcompile dan menjalankan class berikut ini: Program dapat di-compile dan output-nya adalah 5 Program dapat di-compile dan output-nya adalah 6 Program akan
CONTOH IMPLEMENTASI DESIGN PATTERN
CONTOH IMPLEMENTASI DESIGN PATTERN Armadyah Amborowati STMIK AMIKOM Yogyakarta [email protected] Abstraksi Design pattern merupakan komponen yang diperlukan dalam proses reusable-code pada pemrograman
Teknik Informatika S1
Teknik Informatika S1 Object Oriented Analysis and Design Class Diagram dan Object Diagram Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS [email protected] +6281329571612
Pemrograman Lanjut. Instance Variable Access Modifier Set dan Get Method
Pemrograman Lanjut Instance Variable Access Modifier Set dan Get Method PTIIK - 2014 Objectives Mampu mendeklarasikan class dan menggunakannya untuk membuat object. Mampu mendeklarasikan methods dalam
Materi 5 Pemrograman Visual
Materi 5 Pemrograman Visual Pada materi ini akan dipelajari tentang pemberian aksi pada komponen swing (listener), terutama ActionListener. Sesi Materi ActionListener merupakan salah satu listener yang
ABSTRACT CLASS DAN INTERFACE
ABSTRACT CLASS DAN INTERFACE 1. Kompetensi Setelah menempuh materi percobaan ini, mahasiswa mampu mengenal: 1. Konsep abstract class 2. Abstract method 3. Notasi UML untuk abstract class 4. Konsep interface
Pemrograman Berorientasi. Inheritance
Pemrograman Berorientasi Obyek Inheritance [email protected] Inheritance Silsilah Pohon Keluarga Relasi is-a Selain melakukan kategorisasi terhadap objek yang memiliki sekumpulan atribut dan perilaku yang
GUI & Event Handling. Viska Mutiawani, M.Sc
GUI & Event Handling Viska Mutiawani, M.Sc GUI pada Java GUI (Graphical User Interface) pada Java umumnya menggunakan kelas dari package javax.swing dan java.awt. AWT dan Swing dapat dipergunakan untuk
Pemrograman Lanjut. Constructor. Aryo Pinandito, ST, M.MT Team Teaching Pemrograman Lanjut
Pemrograman Lanjut Constructor Aryo Pinandito, ST, M.MT Team Teaching Pemrograman Lanjut Objectives Mengetahui dan memahami constructor Mampu mendeklarasikan dan menggunakan constructor untuk memastikan
Apa yang menjadi output potongan kode diatas? Error karena tidak ada String yang di-passing kedalam konstruktor Bapak
Waktu Sisa : 0:59:57 1. Apa yang menjadi output potongan kode diatas? Error karena tidak ada String yang di-passing kedalam konstruktor Bapak Output: Bapak null Anak Error karena constructor Bapak(String
Pemrograman Lanjut Class and Object PTIIK
Pemrograman Lanjut Class and Object PTIIK - 2013 Objectives Memahami tentang classes, objects, methods dan instance variables. Mampu memberikan contoh object beserta atribut dan tingkah laku nya. Konsep
Pemrograman Berorientasi Obyek Lanjut (IT251) Ramos Somya, S.Kom., M.Cs.
Pemrograman Berorientasi Obyek Lanjut (IT251) Ramos Somya, S.Kom., M.Cs. Applet adalah program Java sederhana yang dapat dijalankan melalui web browser. Applet berbeda dengan aplikasi Java pada umumnya,
Pemograman Berorientasi Objek
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 [email protected]
DIK-020 Pemograman Berorientasi Objek 5/24/2012
Topik JAVA Education Network Indonesia GUI Event Handling Pengenalan Pemrograman 2 Class-class Event Event Listeners Method ActionListener Method MouseListener Method MouseMotionListener Method WindowListener
GUI Event Handling. minggu 13. Wednesday, 16 May 12
GUI Event Handling minggu 13 Objectives / Tujuan Mengenal The Delegation Event Model Mengenal Event Classes Mengenal Event Listener: ActionListener Method MouseListener Method MouseMotionListener Method
Membuat Menu Login Sederhana [Full Coding]
Membuat Menu Login Sederhana [Full Coding] Oleh: Yudi Setiawan Pada tutorial, ini saya berusaha mengajari Anda secara lebih keras lagi agar Anda mempunyai bekal ilmu dasar yang kuat di ilmu pemrograman
Object OOP. Polymor phism
Nama = Dony Aditya Saputra NRP = 7412040516 Jurusan = D4 LJ T.INFORMATIKA Tugas 1 Praktek Basis Data 1. Buatlah Mind Mapping untuk OOP? Oriented Programming atau OOP adalah merupakan paradigma pemrograman
5.4. Analisis dan Perancangan Sistem Informasi. dinamakan dengan Unified Modeling Language (UML). UML merupakan bahasa
162 5.4. Analisis dan Perancangan Sistem Informasi Analisis dan perancangan sistem informasi berikut menggunakan alat bantu yang dinamakan dengan Unified Modeling Language (UML). UML merupakan bahasa permodelan
Algoritma Pemrograman [BS204]
Algoritma Pemrograman [BS204] [1.2] Data Abstraction Robert Sedgewick, Kevin Wayne, Algorithms 4 th Ed., Chapter 1, Addison-Wesley Professional, 2011 1 Tujuan Perkuliahan Mata kuliah ini mengajarkan tentang
PENERAPAN DESIGN PATTERNS UNTUK PERANCANGAN BERBASISKAN OBJEK ORIENTED
PENERAPAN DESIGN PATTERNS UNTUK PERANCANGAN BERBASISKAN OBJEK ORIENTED Kusnawi ABSTRAKSI Dalam mendesain suatu perangkat lunak cara penyelesainya biasanya didasari dari pemahaman secara pribadi atau bersifat
MODUL 3. Classes and Objects (part I)
MODUL 3 Classes and Objects (part I) I. GUIDED : Create new Object Pada praktikum kali ini, mengimplementasikan bagaimana membuat objek baru dari class, baik memanfaatkan class yang sudah ada, maupun membangun
STEPHANIE BETHA R.H,S.ST
STEPHANIE BETHA R.H,S.ST Ian Somerville, Software Engineering, 6 th Edition, Addison Wesley, 2001 Roger R. Pressman, Software Engineering, 6 th Edition McGraw-Hill, 2005 Erich Gamma, Richard Helm, Ralph
PENERAPAN DESIGN PATTERNS UNTUK PERANCANGAN BERBASISKAN OBJEK ORIENTED. Kusnawi Dosen STMIK AMIKOM Yogyakarta
PENERAPAN DESIGN PATTERNS UNTUK PERANCANGAN BERBASISKAN OBJEK ORIENTED Kusnawi Dosen STMIK AMIKOM Yogyakarta Abstraksi Dalam mendesain suatu perangkat lunak cara penyelesainya biasanya didasari dari pemahaman
Understanding Class Definition. Viska Mutiawani, M.Sc
Understanding Class Definition Viska Mutiawani, M.Sc Konsep penting fields constructors methods parameters assignment statements conditional statements Ticket machines an external view Menyelidiki perilaku
06/03/2018. Tidak memiliki parameter. Melakukan inisialisasi semua variabel private dengan nilai awal.
Pemrograman Berorientasi Object constructor operator new garbage collection and finalizers this constructor untuk inisialisasi suatu nilai 1 2 Class adalah template/blueprint untuk instant/object dari
Konsep Dasar Pemrograman Berorientasi Objek
Konsep Dasar Pemrograman Berorientasi Objek CLASS & OBJECT Kita dapat membuat banyak OBJECT dari satu CLASS Untuk membuat banyak OBJECT, kita cukup gunakan keyword new berulang kali Misal: Rekening CLASS
PEMOGRAMAN APLIKASI BERGERAK (Java ME) Yoannita
PEMOGRAMAN APLIKASI BERGERAK (Java ME) Yoannita Daur Hidup MIDlet kehidupan MIDlet dimulai ketika di-instantiate oleh AMS. MIDlet pada awalnya masuk status Pause setelah perintah baru dibuat. AMS memanggil
IF PEMROGRAMAN LANJUT EVENT. Oleh : Andri Heryandi, M.T.
IF34348 - PEMROGRAMAN LANJUT EVENT 13 Oleh : Andri Heryandi, M.T. EVENT Event adalah suatu kejadian dimana kondisi dari suatu objek berubah. Event dibuat sebagai hasil interaksi user dengan komponen GUI.
FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2
No. LST/EKA/PTI208/07 Revisi : 01 April 2009 Hal 1 dari 9 A. Kompetensi Setelah mengikuti praktikum ini, mahasiswa diharapkan mampu menggunakan class JButton dengan berbagai Event Handling. B. Dasar Teori
BAB 2 COLLECTION & THREAD
BAB 2 COLLECTION & THREAD 2.1 Pendahuluan Didalam pembuatan game java sering kali kita mendefinisikan banyak object seperti gambar, dan grafik geometri yang begitu banyak, untuk itu dibutuhkan suatu manajemen
Pada pembuatan game di java, sering kali para programer. mendefinisikan banyak object seperti suara, gambar, dan grafik geometri yang
BAB 2 COLLECTION & THREAD 2.1 Pendahuluan Pada pembuatan game di java, sering kali para programer mendefinisikan banyak object seperti suara, gambar, dan grafik geometri yang begitu banyak, untuk itu dibutuhkan
Pemrograman Berorientasi. Class Diagram
Pemrograman Berorientasi Obyek Class Diagram [email protected] What is UML? Sebuah bahasa pemodelan terstandar untuk bahasa pemrograman berorientasi obyek UML merupakan perpaduan dari tiga paradigma pemodelan
Teknik Informatika S1
Teknik Informatika S1 Object Oriented Analysis and Design Requirement and Use Case Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS [email protected] +6285740278021 SILABUS
RENCANA PEMBELAJARAN SEMESTER (RPS)
RENCANA PEMBELAJARAN SEMESTER (RPS) CSG2H3 PEMROGRAMAN BERORIENTASI OBJEK Disusun oleh: Tim Dosen Pemrograman Berorientasi Objek PROGRAM STUDI S1 TEKNIK INFORMATIKA FAKULTAS INFORMATIKA TELKOM UNIVERSITY
Monitor. Process Synchronization. SISTIM OPERASI (IKI-20230) ProcessSynchronization Ch. 6. Johny Moningka
Monitor SISTIM OPERASI (IKI-20230) ProcessSynchronization Ch. 6 Johny Moningka ([email protected]) Fakultas Ilmu Komputer Universitas Indonesia Semester 2000/2001 Process Synchronization Background
Overriding, Overloading, Polymorphism. Pertemuan 10 Pemrograman Berbasis Obyek Dr. Rodiah
Overriding, Overloading, Polymorphism Pertemuan 10 Pemrograman Berbasis Obyek Dr. Rodiah Topik Overriding Overloading Constructor overloading Polymorphism Virtual Method Invocation Polymorphic arguments
Pemrograman Lanjut. Class dan Object. Aryo Pinandito, ST, M.MT Team Teaching Pemrograman Lanjut
Pemrograman Lanjut Class dan Object Aryo Pinandito, ST, M.MT Team Teaching Pemrograman Lanjut Objectives Memahami tentang classes, objects, methods dan instance variables. Mampu memberikan contoh object
Mudafiq R. Pratama
Implementasi MVC (Model-View-Controller) Dengan DAO (Data Access Object) Pada Java Desktop Application Mudafiq R. Pratama [email protected] http://mudafiqriyan.com Lisensi Dokumen: Copyright 2012
BAB 2. Class Thread. Setelah mempelajari modul ini peserta diharapkan dapat: Mengenal Kelas Thread Menggunakan Kelas Thread dalam aplikasi
2.1 Tujuan: BAB 2 Class Thread Setelah mempelajari modul ini peserta diharapkan dapat: Mengenal Kelas Thread Menggunakan Kelas Thread dalam aplikasi 2.2 Mengenal Kelas Thread Salah satu fitur yang tertanam
visit : www.marisharingilmu.wordpress.com
Lisensi Pocket Book Pocket Book ini dapat anda copy dan distribusikan dengan gratis untuk kegiatan pembelajaran. Selamat datang di Pocket Book edisi selanjutnya yaitu Pocket Book : Membuat Aplikasi Java
GUI & Event Handling. Viska Mutiawani, M.Sc. 1 Viska Mutiawani - Informatika FMIPA Unsyiah
GUI & Event Handling Viska Mutiawani, M.Sc 1 Viska Mutiawani - Informatika FMIPA GUI pada Java GUI (Graphical User Interface) pada Java umumnya menggunakan kelas dari package javax.swing dan java.awt.
E-Book PEMROGRAMAN BERORIENTASI OBJEK. Disusun Oleh: Arfian Hidayat, S.Kom
E-Book PEMROGRAMAN BERORIENTASI OBJEK Disusun Oleh: Arfian Hidayat, S.Kom http://arfianhidayat.com FAKULTAS ILMU KOMPUTER UNIVERSITAS DIAN NUSWANTORO SEMARANG 2013 Daftar Isi Daftar Isi... i Daftar Gambar...
FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2
No. LST/EKA/PTI208/09 Revisi : 01 April 2009 Hal 1 dari 7 A. Kompetensi Setelah mengikuti praktikum ini, mahasiswa diharapkan mampu memahami Grapichal User Interface (GUI) dan mendesain GUI menggunakan
BAB 2 LANDASAN TEORI. bersama-sama untuk mencapai tujuan tertentu. bersatu untuk mencapai tujuan yang sama.
BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Pengertian Sistem Menurut Mulyadi (2001, p2) Sistem pada dasarnya adalah sekelompok unsur yang berhubungan erat antara satu dengan yang lainnya, yang berfungsi
BEKERJA DENGAN JAVA CLASS LIBRARY
MK. Pemrograman Berorientasi Objek BEKERJA DENGAN JAVA CLASS LIBRARY (CLASS-METHOD-OBJECT) KARMILASARI ANALOGI OBJEK DALAM DUNIA NYATA Objek di dunia nyata = Objek dalam perangkat lunak Atribut di dunia
Class & Object 2. Imam Fahrur Rozi
Class & Object 2 Imam Fahrur Rozi Materi * Enkapsulasi * Access Modifier * Konstruktor * Atribut/Method Klass * Atribut/Method Instansiasi Enkapsulasi * Merupakan konsep dasar OOP dimana atribut dan method
PRAKTIKUM OBJECT ORIENTED PROGRAMING
PRAKTIKUM OBJECT ORIENTED PROGRAMING Class, Object dan Elemen dalam Class Pada Java Disusun oleh: KELOMPOK 1 STMIK STIKOM INDONESIA (STIKI)-BALI 2016 KATA PENGANTAR Puji syukur penulis panjatkan kehadiran
Pemrograman Web Lanjut
Session 04 JSF Event Handling Pemrograman Web Lanjut 2015 Niko Ibrahim, MIT Fakultas Teknologi Informasi Universitas Kristen Maranatha Tujuan Mahasiswa memahami jenis-jenis event handling yang ada pada
UNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGE UML (Unified Modeling Language) adalah metode pemodelan secara visual sebagai sarana untuk merancang dan atau membuat software berorientasi objek. Karena UML ini merupakan bahasa
Objek Terdistribusi dan Remote Invocation. I Made Andhika, S.Kom
Objek Terdistribusi dan Remote Invocation I Made Andhika, S.Kom Middleware Remote Procedure Call (RPC) client memanggil sebuah prosedur dan menjalankan pada komputer lain Pemanggilan tersebut sama seperti
OBJECT ORIENTED PROGRAMMING. Day 3 : Operator dan Assignment
OBJECT ORIENTED PROGRAMMING Day 3 : Operator dan Assignment TOPIK Membedakan antara instance dan local l variabel. Urutan pemrosesan Unary operator Arithmetic operator Shift operator: , dan >>> Comparison
Pemrograman Lanjut Tipe Data dan Constructor PTIIK
Pemrograman Lanjut Tipe Data dan Constructor PTIIK - 2013 Objectives Mengetahui perbedaan antara tipe data primitive dan reference. Mampu mendeklarasikan dan menggunakan constructor untuk memastikan bahwa
Bahasa Pemograman II. Object Oriented Programming
Bahasa Pemograman II Object Oriented Programming Pemograman Berorientasi Objek Salah satu paradigma pemograman Usaha untuk merepresentasikan perangkat lunak lebih dekat dengan cara pandang manusia terhadap
2. Pilih instruksi yang dapat digunakan dalam method actionperformed untuk membedakan antara tombol buttonone dan buttontwo.
Waktu Sisa : 2:14:53 1. Dari pilihan berikut ini, item manakah yang memiliki atribut dan behaviour? object class attribute data type method behavior 2. Pilih instruksi yang dapat digunakan dalam method
Understanding Class Definition
Understanding Class Definition Viska Mutiawani, M.Sc 1 Viska Mutiawani - Informatika FMIPA Konsep penting fields constructors methods parameters assignment statements conditional statements 2 Viska Mutiawani
Mudafiq R. Pratama
Implementasi MVC (Model-View-Controller) Dengan DAO (Data Access Object) Pada Java Desktop Application Mudafiq R. Pratama [email protected] http://www.mudafiqriyan.net Lisensi Dokumen: Seluruh dokumen
PEMROGRAMAN BERORIENTASI OBJEK LANJUT
RENCANA PEMBELAJARAN SEMESTER (RPS) PEMROGRAMAN BERORIENTASI OBJEK LANJUT Disusun oleh: PROGRAM STUDI S1 TEKNIK INFORMATIKA FAKULTAS ILMU KOMPUTER (FILKOM) UNIVERSITAS PUTRA INDONESIA YPTK PADANG LEMBAR
BAB II LANDASAN TEORI
BAB II LANDASAN TEORI 2.1 Manajemen Proyek 2.1.1. Pengertian Manajemen Menurut James A.F. Stoner (2006) Manajemen adalah suatu proses perencanaan, pengorganisasian, kepemimpinan, dan pengendalian upaya
LAPORAN RESMI PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK MODUL 3 ABSTRAKSI
LAPORAN RESMI PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK MODUL 3 ABSTRAKSI Disusun Oleh : TANGGAL PRAKTIKUM : 02 NOVEMBER 2015 NAMA : IMAM HASAN NRP : 140411100099 KELOMPOK : D 2 DOSEN PENGAMPU : HERMAWAN, S.T.,
Membuat dan Menggunakan Class
Pertemuan 3 Halaman 1/1 Membuat class pada java : Untuk mendefinisikan suatu class pada java digunakan : class ClassName { suatu class dapat terdiri dari - attribute / data field - method Attribute Attribute
PEMBUATAN SISTEM INFORMASI DENGAN ANALISIS DAN PERANCANGAN BERORIENTASI OBJEK
PEMBUATAN SISTEM INFORMASI DENGAN ANALISIS DAN PERANCANGAN BERORIENTASI OBJEK Dewan Pelawi Information Systems Department, School of Information Systems, Binus University Jl. K.H. Syahdan No. 9, Palmerah,
Praktikum Minggu VI 1 dan 2 Dasar-dasar Object Oriented Programming PHP
Praktikum Minggu VI 1 dan 2 Dasar-dasar Object Oriented Programming PHP 6.1. Tujuan Mahasiswa dapat membuat aplikasi web base dengan menggunakan pendekatan OOP. 6.2. Bahan 1. Dreamweaver 2. Browser 3.
Bab Tujuan. 8.2 Delegation Event Model
Bab 8 GUI Event Handling 8.1 Tujuan Pada modul ini, Anda akan belajar bagaimana mengendalikan events triggered ketika user berinteraksi dengan aplikasi GUI Anda. Setelah menyelesaikan modul ini, Anda akan
PERANCANGAN SISTEM INFORMASI MANAJEMEN PERPUSTAKAAN MENGGUNAKAN POLA MODEL-VIEW- CONTROLLER (MVC)
PERANCANGAN SISTEM INFORMASI MANAJEMEN PERPUSTAKAAN MENGGUNAKAN POLA MODEL-VIEW- CONTROLLER (MVC) Rangga Sanjaya Fakultas Teknik, Universitas BSI Jalan Sekolah Internasional No. 1-6, Bandung 40282, Indonesia
BAB 4 PERANCANGAN SISTEM INFORMASI. Sistem yang dirancang bertujuan untuk mendukung persediaan bahan yang
127 BAB 4 PERANCANGAN SISTEM INFORMASI 4.1 The Task 4.1.1 Purpose Sistem yang dirancang bertujuan untuk mendukung persediaan bahan yang dimulai dari pendataan bahan yang baru, bahan masuk yang dimulai
CLASS PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM JOGJAKARTA
CLASS PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM JOGJAKARTA OBJEK Contoh : Meja, Kursi, Orang, dll Karakteristik yang utama pada sebuah objek, yaitu : Setiap objek memiliki atribut sebagai
Object Oriented Analysis and Design -Pendahuluan- Nisa ul Hafidhoh
Object Oriented Analysis and Design -Pendahuluan- Nisa ul Hafidhoh [email protected] 08156114760 Agenda Kontrak Kuliah Silabus Referensi Materi Pendahuluan @NH2017 2 Kontrak Kuliah Penilaian: UTS 30%
GUI Event Handling 1
1 GUI Event Handling Pengantar Event Handling Aplikasi GUI bersifat event driven Saat user berinteraksi dengan komponen GUI, interaksi tsb dikenal sbg event, akan memicu program untuk melaksanakan sebuah
Pemrograman Lanjut. Class and Object
Pemrograman Lanjut Class and Object PTIIK - 2014 Objectives Memahami tentang classes, objects, methods dan instance variables. Mampu memberikan contoh object beserta atribut dan tingkah laku nya. What
Operator dan Assignment. Pertemuan 3 Pemrograman Berbasis Obyek
Operator dan Assignment Pertemuan 3 Pemrograman Berbasis Obyek Topik Unary operator Arithmetic operator Shift operator: , dan >>> Comparison operator Bitwise operator: &, ^, dan. Short Circuit operator
GRAPHICAL USER INTERFACE (GUI)
GRAPHICAL USER INTERFACE (GUI) Pokok Bahasan 1. komponen dasar swing 2. JButton,JCheckBox, dan JRadioButton 3. JLabel, JTextField dan JPassword Field 4. JTextArea, JComboBox, JList 5. Memahami tentang
9/26/2011. Tujuan. Bekerja dengan Java Class Library. Pengenalan OOP. Pengenalan OOP. Class dan Object. Enkapsulasi
Tujuan Pada akhir pembahasan, siswa diharapkan dapat : JAVA Education Network Indonesia Bekerja dengan Java Class Library Pengenalan Pemrograman 1 Menjelaskan OOP dan beberapa konsepnya Membedakan antara
Inheritance dan Kata Kunci static
Inheritance dan Kata Kunci static PEWARISAN (INHERITANCE) Salah satu fitur yang paling kuat dalam OOP adalah penggunaan kode kembali (code reuse). Sekali sebuah prosedur dibuat, maka kita bisa menggunakannya
Adam Hendra Brata Teknik Informatika FILKOM UB Semester Genap 2015/2016
Adam Hendra Brata Teknik Informatika FILKOM UB Semester Genap 2015/2016 TUJUAN PERKULIAHAN Memahami pemodelan perancangan dengan pendekatan berorientasi objek AGENDA PERKULIAHAN Pemodelan perancangan berorientasi
BAB 4 METODOLOGI PEMECAHAN MASALAH
52 BAB 4 METODOLOGI PEMECAHAN MASALAH Metodologi pemecahan masalah adalah langkah-langkah sistematis yang akan menjadi pedoman dalam penyelesaian masalah. Dengan berdasarkan pada metodologi ini, penelitian
(INHERITANCE) Nurochman
PEWARISAN (INHERITANCE) Nurochman Inheritance Adding functionality to existing classes Re use of code Refining a general solution to a specific Rapid development of solutions What is Inheritance? Subclass
BAB IX. USER INTERFACE
BAB IX. USER INTERFACE 9.1.Dasar GUI Program GUI (Graphical User Interface) merupakan metode pendesainan program ke dunia nyata (real world) atau visual bukan dalam bentuk console. Paket yang dapat digunakan
BAB 4 METODOLOGI PEMECAHAN MASALAH
BAB 4 METODOLOGI PEMECAHAN MASALAH Metodologi pemecahan masalah adalah model yang menggambarkan sistem dan terdapat langkah-langkah sistematis yang akan menjadi pedoman dalam penyelesaian masalah. Diharapkan
MATERI 3a Pemrograman Berorientasi Objek (S3)
MATERI 3a Pemrograman Berorientasi Objek (S3) STK372 KOMPUTASI STATISTIK II Agus Mohamad Soleh Outline Object dan Classes Konsep pemrograman berorientasi object (OOP) OOP dalam R: Sistem S3 dan Sistem
Encapsulation (Encapsulasi) Minggu 5 Pemrograman Berorientasi Objek Alfa Faridh Suni
Encapsulation (Encapsulasi) Minggu 5 Pemrograman Berorientasi Objek Alfa Faridh Suni Enkapsulasi u Dapat dikatakan sebagai penyembunyian data/informasi (Information hiding). u Implementasi ke bahasa Pemrograman
Sistem Informasi OOAD dengan UML (1) Teknik Informatika UNIKOM
Sistem Informasi OOAD dengan UML (1) Teknik Informatika UNIKOM OOAD dengan UML (1) 1. OOAD 2. Pengenalan UML 3. CRC cards 4. Tipe Diagram UML 5. Structural Diagram 6. Behavioral Diagram 7. Relasi pada
KONTRAK KULIAH. A. Deskripsi. Mata kuliah ini menjelaskan konsep pemrograman berbasis objek, dengan menggunakan class.
KONTRAK KULIAH Nama Mata Kuliah : Pemrograman Berorientasi Objek Kode Mata Kuliah : TIF117 SKS : 3/1 SKS Semester : 3 Prasyarat : Stuktur Data Dosen : Yonathan Ferry Hendrawan Sem/thn akademik : Ganjil
Pemrograman Berorientasi Obyek (IT251) Ramos Somya, S.Kom., M.Cs.
Pemrograman Berorientasi Obyek (IT251) Ramos Somya, S.Kom., M.Cs. Thread adalah sebuah pengontrol aliran program dengan menggunakan kendali tunggal. Suatu proses dikontrol oleh paling sedikit satu thread.
PEMROGRAMAN BERORIENTASI OBJEK
MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK NINF615 SEMESTER GASAL 2016/2017 PROGRAM STUDI S1 TEKNIK INFORMATIKA MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK DISUSUN OLEH: Tim Asisten Praktikum Jurusan
Pemrograman Lanjut. Class : Deeper Look 2
Pemrograman Lanjut Class : Deeper Look 2 PTIIK - 2013 Objectives Mampu menggunakan variabel dan method static dan final. Mampu meng-import static member dari sebuah kelas. Mampu membuat package dan meng-import
