Seberapa sering Anda atau Anda pernah melihat meta-pemrograman digunakan dalam proyek? Di uni saya belum pernah melihat ini diterapkan, tetapi saya sudah melihat ini pada pekerjaan saya sebelumnya (ketika saya melihatnya saya terpesona betapa efektifnya itu).
Tapi seberapa umum itu? Apakah ini digunakan sepanjang waktu, atau hanya sesekali?
meta-programming
Gablin
sumber
sumber
Jawaban:
Jika Anda menganggap refleksi semacam meta-pemrograman, itu relatif umum. Bagi sebagian orang bahkan pemrograman generik (templat dan generik) adalah bentuk meta-pemrograman, jadi itu bahkan lebih umum.
Namun, menurut saya, meta-pemrograman adalah sesuatu yang lebih kompleks, yang melibatkan pembuatan kode aktual, dan karenanya sangat jarang, bahkan dalam bahasa scripting.
sumber
Saya pikir ini sangat tergantung pada bahasa apa yang Anda gunakan. Orang umum Lisp mungkin memanfaatkannya secara adil - Meta-Object Protocol memungkinkan untuk hal-hal yang rapi, transparan / kegigihan ortogonal, misalnya - dan Smalltalkers sering menggunakannya.
sumber
Itu cenderung muncul secara umum dan konsisten dalam proyek-proyek Common Lisp. Lihat OnLisp dan Let Over Lambda untuk penjelasan / wawasan.
Jika Anda hanya mencari contoh (dan tahu CL), periksa repositori Antiweb ; ada banyak pemrograman meta terjadi di bawah selimut.
sumber
Selama dua tahun terakhir, bit pertama pemrograman pada tugas baru hampir selalu menulis kode untuk menulis kode. Ada satu ton boiler yang terkait dengan interaksi dengan database yang dapat disederhanakan menjadi pembuatan skrip otomatis. Pikirkan hal-hal di mana Anda perlu kueri 3 tabel untuk membentuk objek atau semacamnya. Mengapa menulis sendiri jika ada 10 hal yang mungkin berubah di masa depan?
sumber