Saya sering menemukan sesuatu yang disebut Prism baru-baru ini. Microsoft, yang menjalankan proyek tersebut, menggambarkannya sebagai
Panduan untuk aplikasi komposit di WPF dan Silverlight.
Bahkan setelah membaca deskripsi yang lebih rinci di luar sana, saya hampir tidak tahu tentang apa sebenarnya itu, saya khawatir.
Saya berharap di sini seseorang dapat memberi saya penjelasan singkat yang jelas tentang apa itu Prism sebenarnya dan mengapa saya harus mempelajarinya. Saya telah menjadi pengembang WPF selama beberapa tahun sekarang, menggunakan MVVM yang adil, dan baru-baru ini bertemu orang-orang yang menggunakan Prism, tetapi secara pribadi merasa sedikit keluar dari lingkaran di sini.
Secara khusus, saya bertanya-tanya tentang poin-poin berikut:
Apakah Prism secara harfiah hanya (atau terutama) sebuah buklet, seperti yang diberikan di situs MSDN ? Apakah itu termasuk perpustakaan, jika demikian untuk apa sebenarnya?
Apakah Prism merupakan kerangka kerja MVVM? Haruskah saya menggunakannya sebagai "kerangka kerja Microsoft MVVM resmi" di atas orang lain di luar sana atau milik saya?
Apakah itu memberikan injeksi ketergantungan? Apakah itu terkait dengan MEF sama sekali dengan cara ini?
Ada lagi yang harus saya ketahui tentang apa yang dilakukan Prism, sebagai pengembang WPF / Silverlight.
Jawaban:
Prism adalah panduan resmi Microsoft Patterns and Practices Team untuk membangun "aplikasi komposit" di WPF dan Silverlight.
Ini dimaksudkan untuk memberikan panduan tentang praktik terbaik untuk membangun aplikasi skala besar yang fleksibel dalam hal pengembangan dan pemeliharaan.
Ini termasuk panduan tentang injeksi ketergantungan (melalui Unity atau MEF), tata letak (termasuk menggunakan MVVM), penanganan kejadian komposit, dll.
Ini adalah sebuah buku, tetapi juga termasuk perpustakaan untuk dukungan (di situs GitHub ).
Iya dan tidak. Ini mencakup panduan untuk menggunakan MVVM, tetapi lebih dari sekadar kerangka kerja MVVM. Ini sebenarnya bukan, dengan sendirinya, sebuah "kerangka kerja MVVM" - meskipun itu menyertakan panduan MVVM.
Iya. Ini awalnya termasuk Unity, tetapi rilis terbaru menyertakan penggunaan MEF untuk DI.
Ada baiknya melihat bagaimana mereka melakukan sesuatu. Mereka memiliki konsep "wilayah" yang sangat rumit, serta dukungan agregasi acara yang baik. Ini juga mencakup praktik yang baik untuk mengembangkan terhadap WPF, Silverlight, dan Windows Phone secara bersamaan.
sumber
Ini adalah kerangka kerja untuk membangun aplikasi WPF dan Silverlight.
http://compositewpf.codeplex.com/
Dulu disebut "Prism" sebelum Microsoft mengganti namanya menjadi "CompositeWPF."
Jawaban:
1) Prism adalah kerangka kerja MVVM untuk digunakan sebagai dasar untuk aplikasi Anda
2) Saya menyarankan agar tergantung pada kebutuhan spesifik Anda. Anda harus memposting pertanyaan lain dengan detail spesifik sehingga Anda bisa mendapatkan jawaban yang spesifik.
3) Prism menggunakan injeksi ketergantungan (Unity) tetapi tidak "menyediakan" nya
4) Imo, Prism menyediakan banyak fungsi tetapi berat pada kurva pembelajaran. Untuk proyek kecil dengan Anda sebagai satu-satunya pengembang, Anda mungkin tidak memerlukan abstraksi dan alat yang disediakannya.
sumber