Laman

Minggu, 21 Agustus 2011

Alasan pentingnya menggunakan FRAMEWORK di C# (C Sharp)

Bagi para programer pasti sudah tidak asing lagi dengan yang namanya FRAMEWORK, apa itu FRAME WORK? jika diterjemahkan dalam bahasa indonesia artinya adalah kerangka kerja, terus maksudnya? Kerangka kerja merupakan sekumpulan script atau code program yang telah ditata sedemikian rupa sehingga memudahkan kita dalam proses pemanggilan dan penggunaanya. Jadi dengan kata lain FRAMEWORK adalah sekumpulan function fucntion. Mengapa membutuhkan FRAMEWORK? banyak jawaban untuk menjawab pertanyaan ini. Pertama dengan menggunakan framerwork program lebih simple, programer tidak lagi memikirkan algoritma melainkan fokus memikirkan konsep, misalnya saja jika seorang programer harus membuat suatu algortima tentang solver quadratic programing programer akan kesulitan, kedua dengan menggunakan FRAMEWORK proses pengerjaan project semakain cepat dan semakin mudah dan yang lebih penting hasilnya semakin akurat. Beberapa algoritma dan metode dalam sebuah framework sudah diuji hasil akurasinya. Masih bingung.? Akan saya contohkan bagaimana perlunya kita menggunakan FRAMEWORK. Berikut ini adalah framework  FRAMEWORK yang direkomendasikan Accord, Aforge dan Zed Grap dimana kesemua FRAMEWORK ini dikembangkan dengan lisensi Free dan di prakasai oleh GOOGLE. Sekarang perhatikan prevew project dibawah ini

Gambar 1. Preview program membuat histogram

Waupun grafik histogram diatas bisa dibuat tanpa menggunakan FRAMEWORK (secara manual) programer akan kesulitan mengatur tata letak, nilai dan parameter parameter lainnya yang berhubungan dengan grafik tersebut. tetapi kita lihat bedanya jika menggunakan FREMEWORK. Berikut source code untuk membuat grafik diatas




Untuk downlaod source lengkapnya silahkan download di http://www.csharp-indonesia.com/2011/05/membuat-histogram-di-c-c-sharp.html

Sekarang bandingkan dengan membuat grafik diatas tanpa menggunakan FRAMEWORK, jika ditotal ada sekitar 1000 baris lebih source code untuk membuat grafik seperti diatas, menggunakan FRAMEWORK hanya sekitar kurang dari 25 baris.

Contoh kasus kedua, Mengapa penting menggunakan FRAMEWORK?
Pada contoh kasus kedua akan saya tunjukan bagaimana FRAMEWORK sangat efektif untuk menyelesaiakan pekerjaan kita, contoh kasus pada proses deteksi tepi citra, bagi yang suka ilmu komputasi silahkan perhatikan contoh berikut ini

                                                  (a)                           (b)                        (c)
Gambar 2. Preview hasil deteksi tepi
(a) citra asli (b) deteksi tepi canny (c) deteksi tepi sobel

Pada gambar diatas merupakan contoh proses deteksi tepi pada citra digital, gambar a adalah gambar asli sedangkan gambar (b) dan gambar (c) merupakan deteksi tepi dengan kernel CANNY dan juga kernel SOBEL. Pada proses deteksi tepi menggunakan kernel Canny sedikit agak rumit dibangdingkan dengan metode lain, akan tetapi silahkan lihat source code deteksi tepi canny menggunakan FRAMEWORK Aforge

Source code deteksi canny dengan Aforge

    

Source code deteksi tepi dengan kernel Sobel

   

Begitu simple dan begitu mudah kan mengimplementasikan deteksi tepi menggunakan FRAMEWORK. sekedar catatan saja bahwasanya kemampuan Aforge dan Accord ini tidak hanya sebatas itu saja FRAMEWORK ini bisa menangani Audio, Control, Audition, Direct Sound, Image Filter, Machine Learning, Math Decompotion, Optimization, Learning, Analysis, Statistics, Komputer VIsion, Wavelet dan masig banyak lagi untuk lebih detailnya klik di http://accord-net.origo.ethz.ch/download/2887
Dan bandingkan dengan source code deteksi tepi menggunakan kernel Sobel jika membuat algoritmanya sendiri, kurang lebih seperti berikut ini

Source Code Deteksi tepi


Bisa kita lihat bahwasanya menggunakan FRAMEWORK lebih mudah dari pada memprogram sendiri, selain itu jika kita memprogram sendiri kita masih dipusingkan dengan memanage source code, memanage memori dan sebagainya dan yang terpenting kita melakukan uji coba terhadap source code kita. Akan teteapi di FRAMEWORK semua itu sudah dilakukan oleh si pembuat source code tersebut. sehingga kita dimudahkan karena tidak harus melakukan proses proses seperti ditas. Sekarang diberikan contoh yang lebih rumit. Perhatikan ilustrasi berikut ini (Contoh Kasus Pengenalan Wajah)

Dalam pengenalan wajah banyak hal yang harus dilakukan mulai dari preprosesing citra, ektraksi citra, dan klasifikasi citra. Masing masing proses diatas banyak macam varian metodenya, dan jika diimplemtasikan dalam source code pasti menjadi beribu ribu baris.  Anggap saja kita memprogram sendiri, setelah project selesai tentunya kita melakukan testing atau uji coba terhadap sistem yang telah kita buat. Hasilnya..?????? saya yakin jika pengalaman  kurang dalam hal pengenalan pola, presentasi keberhasilanya dibawah 50%.

mari kita lihat jika kita menggunakan FRAMEWORK (Contoh kasus sama, pengenalan Wajah)
berikut ini preview program saat pertama kali dirunning

Gambar 3. Preview Program pengenalan wajah
                   
 Gambar 4. Preview Running Program Pengenalan Wajah Setelah di Klik Button Detect

untuk Download Program pengenalan wajah silahkan download di  
Binary File    :  http://www.ziddu.com/download/16125807/BinariFile.rar.html 
Full Project   :  http://www.ziddu.com/download/16125848/FaceDetection.rar.html


Berikut ini adalah source code program pengenalan wajah diatas


Simple bukan..?, Walau simple tapi akurasinya tinggi. Sebenarnya source nya tidak sesimple itu, banyak sekali source codenya bahkan jumlahnya sampai puluhan ribu. Akan tetapi jumlah baris yang begitu besarnya ditata dan dikonver ke beberapa file DLL, sehingga kita hanya perlu menambahkan file dll tersebut kita busa melakukan akses ke function fucntion yang telah disediakan oleh si pembuat FRAMEWORK tersebut. Bayangkan jika program pengenalan wajah harus ditulis sendiri. Pasti akan memerlukan waktu.  Itulah beberapa alasan pentingnya menggunakan FRAMEWORK dalam pekerjaan kita.

For more informastion contact us on
Informasi@csharp-indonesia.com

Artikel Terkait


27 komentar:

  1. mantab mantab ^__^

    BalasHapus
  2. hehe ada si mbah...
    piye full.... baik baik sajakah..?

    BalasHapus
  3. Rifkyfamee0076 Juli 2012 01.42

    sayangnya dikampus saya lebih diajarkan bagaimana membuat sebuah framewok, tidak diperkenankan menggunakan library yang sudah disediakan di mbah google.

    BalasHapus
  4. BelajarCsharp25 Juli 2012 18.32

    library ini adalah library opecsource jadi kita bisa mengambil sourcode bagian bagian yang kita inginkan. dengan kata lain, kita bisa menganbil algoritma dari librari ini selayaknya kita program dari awal,
    terimakasih, semoga bisa membantu dan bermanfaat

    BalasHapus
  5. Arie Liem Tie San21 Januari 2014 08.40

    Gan untuk Download Program pengenalan wajah yang Binay File kok ga ada? Mohon di reupload lag gan

    BalasHapus
  6. link download untuk full project masih aktif..silahkan download dari full projectnya saja. habis itu silahkan di run..

    BalasHapus
  7. saefudin arif21 Maret 2014 04.35

    Gan untuk Download Program pengenalan wajah yang Binay File kok ga ada ya?

    BalasHapus