Langsung ke konten utama

Windows Presentation Foundation Vs Windows Forms


Dari sekian banyak lingkungan pengembang untuk platform windows beberapa pengembang mungkin akan memilih .NET sebagai framework untuk membuat aplikasi, selain kemudahan yang diberikan dalam proses pembuatan aplikasi dan banyaknya komponen pihak ketiga yang dapat Anda gunakan dalam proyek Anda. Framework .NET sendiri memliki beberapa GUI Framework yang berbeda.

Tapi apa itu GUI Framework? GUI adalah singkatan dari Graphical User Interface, dan Anda mungkin melihatnya sekarang. Windows memiliki GUI untuk bekerja dengan PC Anda, dan browser yang Anda gunakan untuk membaca artikel ini memiliki GUI yang memungkinkan Anda untuk menjelajahi web.

Sebuah GUI Framework memungkinkan Anda untuk membuat aplikasi dengan berbagai elemen GUI, seperti label, teks dan lain sebagainya. Tanpa GUI Framework Anda harus membuat elemen antar muka ini secara manual dan menangani semua skenario interaksi pengguna seperti input teks dan mouse. Ini pekerjaan yang sangat banyak, selain membuat proses aplikasi Anda juga harus membuat semua elemen GUI dan penanganan interkasinya secara manual, jadi sebagian besar pengembang akan lebih memilih untuk menggunakan GUI Framework yang akan melakukan semua pekerjaan dasar dan memungkinkan pengembang untuk fokus pada pembuatan aplikasi.

Dari beberapa GUI Framework yang disebutkan sebelumnya, yaitu WPF (Windows Presentation Foundation) dan Windows Forms, WPF merupakan GUI Framework terbaru dari Microsoft. Terdapat beberapa perbedaan diantara kedua GUI Framework ini namun tujuannya adalah sama yaitu untuk mempermudah pembuatan aplikasi dengan menggunakan komponen GUI yang baik.

Perbedaan yang paling penting antara WinForms dan WPF adalah fakta bahwa WinForms hanyalah sebuah lapisan di atas kontrol standar Windows (misalnya TextBox), sedangkan WPF dibangun dari awal dan tidak bergantung pada kontrol standar Windows. Hal ini mungkin tampak seperti perbedaan yang halus, tetapi sebenarnya tidak, yang pasti Anda akan melihat jika Anda pernah bekerja dengan framework yang bergantung pada Win32 / WinAPI.

Sebuah contoh yang bagus dari hal ini adalah tombol dengan gambar dan teks di atasnya. Ini bukan kontrol Windows standar, sehingga WinForms tidak menawarkan kemungkinan ini. Sebaliknya Anda harus membuat gambar sendiri, menerapkan tombol Anda sendiri yang mendukung gambar atau menggunakan kontrol pihak ke-3. Dengan WPF, tombol dapat berisi apapun karena tombol dasarnya hanyalah sebuah garis batas dengan konten dan berbagai state/keadaan (mis untouched, hovered, pressed). Tombol di WPF kurang-lebih, seperti kontrol WPF yang lain, yang berarti bahwa tombol dapat berisi berbagai kontrol lain di dalamnya. Anda ingin tombol dengan gambar dan beberapa teks? Anda hanya perlu menempatkan sebuah gambar dan kontrol TextBlock di dalam tombol dan Anda selesai! Anda tidak mendapatkan fleksibilitas semacam ini dari kontrol standar WinForms, itu sebabnya mengapa ada banyak market yang menjual komponen dengan implementasi sederhana seperti tombol dengan gambar dan sebagainya.

Kelemahan fleksibilitas ini adalah bahwa kadang-kadang Anda harus bekerja extra keras untuk mencapai sesuatu yang sangat mudah dengan WinForms, karena WPF diciptakan hanya untuk skenario yang Anda butuhkan. Setidaknya itulah bagaimana rasanya di awal, di mana Anda menemukan diri Anda membuat template untuk membuat ListView dengan gambar dan beberapa teks selaras, sesuatu yang WinForms ListViewItem lakukan dalam satu baris kode.

Ini hanya satu perbedaan, tetapi saat Anda bekerja dengan WPF, Anda akan menyadari bahwa itu sebenarnya alasan yang mendasari untuk banyak perbedaan lainnya - WPF hanya melakukan hal-hal dengan caranya sendiri, untuk lebih baik dan buruk. Anda tidak lagi dibatasi untuk melakukan hal-hal dengan cara Windows.

Berikut ini adalah daftar subjektif dari keuntungan utama untuk WPF dan WinForms.

Keuntungan WPF

  • WPF masih terbilang baru dan dengan demikian lebih selaras dengan standar saat ini, serta Microsoft juga menggunakannya untuk banyak aplikasi baru, misalnya Visual Studio.
  • WPF lebih fleksibel, sehingga Anda dapat melakukan lebih banyak hal tanpa harus menulis atau membeli kontrol baru dan menggunakan kontrol pihak ke-3.
  • XAML mempermudah untuk membuat dan mengedit GUI Anda, dan memungkinkan pekerjaan yang dibagi antara desainer (XAML) dan program (C #, VB.NET dll).
  • Penyatuan data, yang memungkinkan Anda untuk mendapatkan pemisahan yang lebih bersih dari data dan tata letak Menggunakan akselerasi hardware dalam menggambar GUI, untuk kinerja yang lebih baik.
  • WPF memungkinkan Anda membuat user interface untuk aplikasi Windows dan aplikasi web (Silverlight / XBAP)

Keuntungan WinForms

  • Lebih teruji
  • Sudah banyak kontrol pihak ke-3 yang dapat Anda beli atau dapatkan secara gratis

Komentar

Postingan populer dari blog ini

Menampilkan Gambar Pada PictureBox Di Visual Basic .Net

Pada kesempatan kali ini saya akan menunjukkan bagaimana cara menampilkan gambar pada PictureBox di Visual Basic .NET. Terdapat beberapa cara untuk menampilkan gambar pada PictureBox dan disini saya akan memberikan beberapa cara yang saya ketahui serta kelebihan dan kekurangan dalam menggunakan cara tersebut. Pertama-tama buatlah sebuah project baru dengan memilih File > New > New Project . Kemudian Drag And Drop PictureBox dari jendela Toolbox ke form. Menampilkan Gambar Dengan Cara Standar Yang saya maksud dengan cara standar disini adalah cara yang biasa dilakukan oleh programmer atau developer dan yang dianjurkan oleh MSDN pada artikel How to: Set Pictures at Run Time dan  How to: Load a Picture Using the Designer Kelebihan Mudah diimplementasikan terutama bagi programmer/developer pemula. Kekurangan Ada kemungkinan gambar yang diload/ditampilkan ke PictureBox akan dilock/dikunci untuk digunakan oleh user yang mengakses gambar tersebut, sehingga user lain tidak dapat men...

Membuat Situs Traffic Exchange

Membuat Situs Traffic Exchange Pada saat ini situs-situs traffic exchange semakin marak di dunia internet. Karena semakin berkembangya teknologi sehingga membuat hal lain pun ikut berkembang. Situs Traffic Exchange ini misalnya, saat ini banyak situs-situs traffic exchange yang tidak hanya menyediakan layana traffic exchange namun sekarang  telah ada situs traffic exchange yang menawarkan Social Exchange seperti twitter followers, facebook like, google+ circle dan lain sebagainya. Dan bahkan ada juga situs traffic exchange yang menyediakan layanan SEO seperti Directory Submission.  Pada postingan ini saya tidak akan berbicara banyak kepada Anda, karena saya tahu saat Anda masuk ke halaman ini berarti Anda sedang mencari cara Membuat Situs Traffic Exchange. Mungkin Anda sampai ke halaman ini karna mungkin hanya sedikit blog/website lain yang membahas tentang hal ini. Dan mungkin niat Anda adalah Membuat Situs Traffic Exchange secara gratis sehingga Anda tidak perlu mengeluarkan...

Dua Startup Indonesia yang Berangkat ke Google Amerika

Dua perusahaan rintisan (startup) asal Indonesia berkesempatan diboyong ke markas Google yang bertempat di Mountain View, California, Amerika Serikat. Selain Indonesia, ada satu lagi startup dari negara lain yang dibawa untuk menghadiri konferensi tahunan Google I/O yang digelar pada 16-18 Mei 2017 mendatang. Yaitu dari Meksiko. STARTUP MENJAMUR DI INDONESIA, HANYA SEDIKIT YANG SUKSES Startup yang dimaksud adalah Pasienia (Indonesia) , Reblood (Indonesia) , dan Croquetero (Meksiko). Ketiganya yang terpilih dari 469 pelamar dari anggota Google Business Groups (GBG) dan para enterprenir independen di 26 negara. Disebutkan, pengajuan tersebut merepresentasikan ide-ide besar dari enterpreneur di seluruh dunia, termasuk di antaranya Brasil, Mesir, Maroko, Nigeria, Pakistan, Peru, hingga Uganda. "Sebagai bentuk usaha Google dalam menginspirasi para entrepreneur untuk dapat mengarahkan bisnis mereka ke ranah online, Google mengundang para anggota GBG global untuk dapat berpartisipasi dal...