I'm mencari pola yang menyangkut coding bagian dari GUI. Tidak sebagai global MVC, aku'm cukup akrab dengan, tetapi pola dan baik ide-ide dan praktek-praktek terbaik mengenai single kontrol dan input.
Katakanlah saya ingin membuat sebuah kontrol yang menampilkan beberapa benda-benda yang mungkin tumpang tindih. Sekarang jika saya klik pada objek, saya perlu mencari tahu apa yang harus dilakukan (Hanya menemukan objek yang bisa saya lakukan dalam beberapa cara, seperti prosesor quad-pohon dan Z-order, itu tidak masalah). Dan juga aku bisa tahan tombol pengubah, atau beberapa objek aktif dari awal, membuat seleksi atau apa pun yang sedikit lebih rumit. Haruskah saya memiliki contoh objek yang mewakili sebuah layar objek, menangani pengguna-tindakan ketika diklik, atau guru kelas. dll.. Apa jenis pola atau solusi yang ada untuk masalah seperti ini?
Saya berpikir untuk menjadi jujur anda lebih baik hanya boning pada standar desain pola dan menerapkan mereka untuk individu masalah yang anda hadapi dalam mengembangkan UI anda.
Sementara ada yang umum UI "tema" (seperti berurusan dengan tombol pengubah) implementasi aktual dapat bervariasi secara luas.
Saya memiliki O'Reilly's Head First Design Patterns dan Posteryang saya temukan sangat berharga!
Desain Berorientasi objek dan Pola oleh Cay Horstmann memiliki bab yang berjudul "Pola dan Pemrograman GUI". Dalam bab itu, Horstmann sentuhan pada pola berikut:
Saya don't pikir bahwa manfaat dari pola desain yang datang dari mencoba untuk menemukan pola desain untuk menyesuaikan masalah. Namun anda dapat menggunakan beberapa heuristik untuk membantu membersihkan desain anda dalam hal ini cukup sedikit, seperti menjaga UI seperti yang dipisahkan dari sisa benda-benda di sistem anda.
Ada pola yang mungkin dapat membantu dalam kasus ini, Observer Pattern.
mungkin anda'kembali mencari sesuatu seperti 'perangkap Tikus' yang saya lihat di beberapa artikel di codeproject (pencarian untuk UI Platform)?
Saya juga menemukan seri ini sangat berguna http://codebetter.com/jeremymiller/2007/07/26/the-build-your-own-cab-series-table-of-contents/ mana anda mungkin telah melihat tertanam controller dll.
Micha.
Aku tahu kau bilang bukan sebagai global MVC, tetapi ada beberapa variasi pada MVC - khusus HMVC dan PAC - yang saya pikir dapat menjawab pertanyaan-pertanyaan seperti yang anda ajukan.
Lain dari itu, cobalah untuk menulis kode baru "dalam roh" dari pola yang ada bahkan jika anda don't menerapkannya secara langsung.
Anda melihat seorang profesional pemrograman aplikasi. Saya mencari tips dan trik waktu yang lama, tanpa keberhasilan. Sayangnya anda tidak akan menemukan sesuatu yang berguna, itu adalah topik yang rumit dan hanya dengan bertahun-tahun pengalaman yang anda akan dapat memahami bagaimana menulis efisien aplikasi. Misalnya, hampir setiap program membuka file, ekstrak informasi, menunjukkan hal itu dalam bentuk yang berbeda, memungkinkan pengolahan, hemat, ... tapi tidak ada yang menjelaskan apa strategi yang baik dan sebagainya. Selanjutnya, jika anda menulis sebuah aplikasi besar, anda perlu melihat beberapa strategi untuk mengurangi waktu kompilasi (jika tidak, anda akan menunggu berjam-jam di setiap kompilasi). Impls idiom dalam C++ membantu anda misalnya. Dan kemudian ada banyak lagi. Untuk alasan ini pengembang perangkat lunak yang berbayar dan ada begitu banyak pekerjaan :-)