Tak pernah isi blog saya lagi...
Jumat, 15 Januari 2016
Selasa, 10 Juli 2012
Modul 10 - Behavioral Patterns (Template Method, Visitor)
10.1. Template Method Pattern
Tujuan dari template method adalah:
Menggambarkan kerangka algoritma dalam sebuah operasi sehingga meminimalisir beberapa langkah subclass. Subclasss dapat mendefinisikan algoritma tertentu tanpa harus mengubah struktur algoritmanya.
Method template pattern mendefinisikan kerangka program algoritma. Satu atau lebih dari langkah-langkah algoritma dapat diganti oleh subclass yang berbeda untuk memungkinkan perilaku sambil memastikan bahwa algoritma menyeluruh masih diikuti.
Dalam pemrograman berorientasi obyek, pertama kelas yang dibuat yang menyediakan langkah-langkah dasar dari desain algoritma. Langkah-langkah ini diimplementasikan dengan menggunakan metode abstrak. Kemudian, subclass mengubah metode abstrak untuk melaksanakan tindakan nyata. Dengan demikian, algoritma umum disimpan di satu tempat namun langkah-langkah konkret dapat diubah oleh subclass.
Kamis, 21 Juni 2012
Modul 9 - Behavioral Patterns (State, Strategy)
9.1. State Pattern
State pattern merupakan salah
satu design pattern yang tergolong ke dalam behavioral pattern. State pattern
muncul akibat adanya kondisi-kondisi (states) yang muncul pada saat pembuatan
perangkat lunak. Pattern ini mengijinkan state transition logic untuk disatukan
dengan sebuah state object daripada berada dalam kondisional atau switch
statement. Pada tugas akhir kali ini, dibuat sebuah perangkat lunak yang
mengimplementasikan state pattern untuk menyelesaikan sebuah kasus yang
memiliki beberapa kondisi. Untuk mengevaluasi state pattern, dilakukan
pengujian serta perhitungan terhadap object-oriented metrics. Sedangkan untuk
mengetahui kelebihan dan kekurangan yang ada pada state pattern, akan
dibandingkan hasil perhitungan object-oriented metrics perangkat lunak yang menerapkan
state pattern dengan perangkat lunak yang tidak menerapkan state pattern untuk
sebuah kasus yang serupa. Berdasarkan hasil analisis dan pengujian, jika
dilihat dari perhitungan object-oriented metrics, perangkat lunak dengan state
pattern memiliki kompleksitas yang lebih tinggi dan membutuhkan usaha yang
lebih besar ketika dilakukan maintenance dibandingkan perangkat lunak tanpa
state pattern. Namun, jika dilihat dari penanggulangan state yang ada,
perangkat lunak dengan state pattern memiliki cara penanggulangan state yang
lebih optimal dibandingkan perangkat lunak tanpa state pattern.
Rabu, 20 Juni 2012
Modul 8 - Behavioral Patterns (Mementto, Observer)
8.1. Momento Pattern
Maksud dari pola ini adalah untuk
menangkap keadaan internal suatu objek tanpa melanggar enkapsulasi dan sehingga
memberikan rata-rata untuk mengembalikan objek ke keadaan awal bila diperlukan.
Kadang-kadang perlu untuk menangkap keadaan internal suatu objek pada titik
tertentu dan memiliki kemampuan untuk mengembalikan objek untuk menyatakan
bahwa di kemudian waktu. Kasus seperti ini berguna jika terjadi kesalahan atau
kegagalan. Pertimbangkan kasus suatu objek kalkulator dengan operasi undo
seperti kalkulator hanya dapat mempertahankan daftar semua operasi sebelumnya
yang telah dilakukan dan dengan demikian akan mampu mengembalikan perhitungan
sebelumnya telah dilakukan. Hal ini akan menyebabkan objek kalkulator untuk
menjadi lebih besar, lebih kompleks, dan kelas berat, sebagai objek kalkulator
akan harus menyediakan tambahan membatalkan fungsi dan harus memelihara daftar
semua operasi sebelumnya. Fungsi ini dapat pindah dari kelas kalkulator,
sehingga eksternal (sebut saja membatalkan kelas manajer) dapat mengumpulkan
keadaan internal kalkulator dan menyimpannya. Namun menyediakan akses eksplisit
untuk setiap variabel keadaan kalkulator kepada manajer restore akan tidak
praktis dan akan melanggar prinsip enkapsulasi.
Kamis, 14 Juni 2012
Modul 7 - Behavioral Patterns (Interpreter, Iterator, Mediator)
Modul 7 - Behavioral Patterns (Interpreter,
Iterator, Mediator)
Pada Modul ke 7 ini kita akan
membahas tentang pola Behavioral pattern yaitu kelas interpreter, iterator,
mediator pattern.
7.1. Interpreter Pattern
Sebuah masalah kelas terjadi berulang kali dalam sebuah
domain yang jelas dan dipahami dengan baik. Jika domain yang ditandai dengan
"bahasa", maka masalah bisa dengan mudah dipecahkan dengan
"mesin" interpretasi. Pola Interpreter mendefinisikan bahasa domain
(yaitu karakterisasi masalah) sebagai tata bahasa bahasa yang sederhana, yang
mewakili aturan domain sebagai kalimat bahasa, dan menafsirkan kalimat-kalimat
ini untuk memecahkan masalah. Pola ini menggunakan kelas untuk mewakili setiap
aturan tata bahasa. Dan karena tata bahasa biasanya hirarkis dalam struktur,
hirarki pewarisan kelas aturan memetakan dengan baik. Kelas dasar abstrak
menentukan metode interpret(). Setiap subclass beton mengimplementasikan interpret() dengan menerima (sebagai argumen) kondisi saat ini dari
aliran bahasa, dan menambahkan kontribusinya terhadap proses pemecahan masalah.
Interpreter menunjukkan pemodelan domain dengan tata bahasa
rekursif. Setiap aturan dalam tata bahasa yang bersangkutan merupakan
'komposit' (aturan bahwa referensi aturan lain) atau terminal (simpul daun
dalam struktur pohon). Juru bergantung pada traversal rekursif dari pola
Komposit untuk menafsirkan 'kalimat' itu diminta untuk diproses.
Selasa, 12 Juni 2012
Modul 6 - Behavioral Patterns (Chain of Responbility, Command Pattern)
6.1.Chain of responsibility
Dalam
menulis sebuah aplikasi dalam bentuk apapun, sering terjadi bahwa peristiwa
yang dihasilkan oleh satu objek perlu ditangani oleh objek yang satu lagi. Dan,
untuk membuat pekerjaan lebih sulit lagi, ketika terjadi penolakan akses ke
objek yang perlu menangani hal tersebut. Chain of responsibility pattern
memungkinkan objek untuk mengirim perintah tanpa tahu apa objek akan menerima
dan menanganinya. Permintaan yang dikirim dari satu objek ke objek lainnya
membuat bagian rantai dan setiap objek dalam rantai ini dapat menangani
perintah, menyebarkannya atau melakukan keduanya.
Berikut diagram UML untuk pola
Chain of Responsibility:
Dalam
diagram di atas beberapa penjelasan diperlukan pada apa peran dari setiap
kelas:
Senin, 07 Mei 2012
Modul 5 - Structural Patterns (Flyweight Pattern, Proxy Pattern)
5.1. Flyweight Pattern
Flyweight Pattern adalah sebuah
perangkat lunak desain pattern. Flyweight
pattern adalah sebuah objek yang meminimalkan penggunaan memori dengan berbagi
data sebanyak mungkin dengan objek sejenis, yang merupakan cara untuk
menggunakan benda-benda dalam jumlah besar ketika representasi diulang
sederhana akan menggunakan jumlah yang dapat diterima dari memori. Seringkali
beberapa bagian dari negara objek dapat dibagi, dan itu adalah praktek umum
untuk menahan mereka dalam struktur data eksternal dan meneruskannya ke objek
kelas flyweight sementara ketika mereka digunakan.
Sebuah contoh klasik dari
penggunaan pola flyweight adalah struktur data untuk representasi grafis dari
karakter dalam pengolah kata. Mungkin diinginkan untuk memiliki, untuk setiap
karakter dalam dokumen, sebuah flyweight objek yang mengandung outline font,
metrik font, dan data format lain, tapi ini akan berjumlah ratusan atau ribuan
byte untuk setiap karakter. Sebaliknya, untuk setiap karakter mungkin ada
referensi ke objek mesin flyweight kelas flyweight bersama oleh setiap contoh
karakter yang sama dalam dokumen, hanya posisi masing-masing karakter (dalam
dokumen dan / atau halaman) akan perlu disimpan secara internal.
Maksud dari pola ini adalah dengan menggunakan berbagi untuk
mendukung sejumlah besar objek yang memiliki bagian dari keadaan internal mereka
yang sama di mana bagian lain dapat bervariasi.
Langganan:
Postingan (Atom)
SIMULASI UASPBK SMK ASWAJA
Anda bisa klik teks berikut untuk akses soal Simulasi UASPBK SMK ASWAJA 👉👉👉: KLIK DISINI UNTUK AKSES SOAL atau scan barcode berikut ...
-
Design Pattern adalah sebuah solusi untuk menyelesaikan masalah...
-
8.1. Momento Pattern Maksud dari pola ini adalah untuk menangkap keadaan internal suatu objek tanpa melanggar enkapsulasi dan sehingg...
-
Bagi pengguna photoshop yang masih pemula pasti bingung fungsi-fungsi tools pada photoshop berikut akan say ulas mengenai fungsi-fungsi to...