Facade
Pattern adalah desain perangkat lunak pola
umum yang digunakan dengan pemrograman berorientasi obyek. Nama ini dengan
analogi sebuah fasad arsitektur
.Fasad adalah sebuah objek yang menyediakan antarmuka yang disederhanakan untuk
tubuh yang lebih besar dari kode.Facade pattern ini berfungsi untuk menyediakan sebuah antar muka yang seragam
dalam sebuah sub sistem. Bisa dibilang Facade ini menyediakan sebuah antar muka
pada level yang sudah tinggi alias sudah berada pada level atas, tujuannya agar
sub sistem yang berada di bawahnya lebih mudah digunakan. Antar muka yang
nantinya dihadapkan pada pengguna akan terlihat lebih sederhana, dimana
pengguna tidak perlu mengetahui bagaimana sub sistem yang berada pada level
bawah.Facade pattern ini banyak kita temui di
kehidupan sehari-hari. Disini saya mencontohkan study kasus yang sederhana,
yaitu saat membeli barang di supermaket. Proses atau urutan seseorang membeli
barang hingga membayar.contoh :
using System;
namespace facade
{
class Pembeli
{
public void Lihat()
{
Console.WriteLine("Pembeli
--> Melihat-lihat Barang yang akan Dibeli");
}
public void Ambil()
{
Console.WriteLine("Pembeli
--> Memilih dan Mengambil Barang yang Dibeli");
}
public void Bawa()
{
Console.WriteLine("Pembeli
--> Membawa Barang ke Kasir");
}
public void Bayar()
{
Console.WriteLine("Pembeli
--> Melakukan Pembayaran");
}
}
class Kasir
{
public void Cek()
{
Console.WriteLine("Kasir
--> Menghitung Harga Barang");
}
public void Bayar()
{
Console.WriteLine("Kasir
--> Melakukan Transaksi Pembayaran");
}
public void Simpan()
{
Console.WriteLine("Kasir
--> Menyimpan Pembayaran");
}
}
class Program
{
public static void Main(string[]
args)
{
Beli();
Console.ReadKey(true);
}
public static void Beli()
{
Pembeli
pp = new Pembeli();
Kasir
kk = new Kasir();
pp.Lihat();
pp.Ambil();
pp.Bawa();
kk.Cek();
kk.Bayar();
pp.Bayar();
kk.Simpan();
}
}
}
No comments:
Post a Comment