Saya ingin menerima jawaban untuk pertanyaan ini, tetapi saya tidak dapat memutuskan satu jawaban untuk melimpahkan tanda centang. Karena itu saya telah mengangkat penulis asli dan membuat ini sebagai jawaban ringkasan. Terima kasih kepada semua orang yang meluangkan waktu beberapa menit, saya menemukan bahwa wawasan yang Anda berikan memberi saya arahan yang baik dan sedikit kepastian bahwa saya tidak keluar dari jalur.
@ nightcracker
Ya, yang pertama adalah perangkap mengungkapkan terlalu banyak informasi. Defaultnya harus pribadi, bukan publik. Setelah itu muncul terlalu banyak getter / setter.
Saya merasa bahwa saya telah mengamati masalah ini di masa lalu. Komentar Anda membuat saya juga ingat bahwa dengan menyembunyikan variabel yang mendasarinya dan implementasinya, saya bebas untuk mengubah implementasinya tanpa merusak apa pun yang bergantung padanya.
Dominic Gurto
Rancang antarmuka bahkan sebelum Anda mulai memikirkan implementasinya. Desain dan implementasi Antarmuka Gene Bushuyev sering berjalan beriringan dalam iterasi berurutan sampai antarmuka final dikristalisasi.
Saya pikir komentar Dominic adalah cita-cita yang bagus untuk dicita-citakan, tetapi saya pikir komentar Gene benar-benar menyentuh kenyataan situasi. Sejauh ini saya sudah melihat ini dalam aksi ... dan merasa sedikit lebih baik bahwa itu tidak biasa. Saya pikir bahwa ketika saya dewasa sebagai programmer saya akan condong ke arah desain yang lebih lengkap, tetapi sekarang saya masih menderita melompat dan mendapatkan beberapa kode yang ditulis-itis.
wantTheBest
Saya mulai lambat, dengan aplikasi prosedural ukuran kecil / menengah, dan tidak ada hal-hal penting di tempat kerja. dalam kode prosedural asli, pisahkan struktur data dari kode pengamat / pengubah
Ini sangat masuk akal ... Saya menyukai gagasan menjaga hal-hal bekerja di tempat kerja, tetapi untuk memperbaiki beberapa hal yang tidak kritis dengan kelas.
jpm
Satu hal yang pasti tidak ingin Anda lakukan adalah memiliki bidang yang harus diperiksa untuk konsistensi dalam mutator, dan biarkan publik
Saya sudah tahu sebentar bahwa ini adalah salah satu kekuatan merangkum data ... mampu menegakkan konsistensi dan dalam hal ini kondisi / rentang / dll.
Eddie yang gila
Seseorang yang berpikir bahwa mereka harus berpegang teguh pada paradigma OO dan memperlakukan yang lain pada urutan pernyataan kebohongan dalam tingkat amoralitas benar-benar hilang dengan tidak melihat paradigma ini. Kapasitas metaprogramming template juga cukup mengesankan.
Saya awalnya sangat merindukan jawaban Crazy Eddie, saya pikir karena saya belum membaca beberapa topik yang disebutkan ... seperti metaprogramming. Saya pikir pesan besar dalam posting CE adalah bahwa C ++ adalah perpaduan antara kemampuan dan gaya yang masing-masing harus digunakan untuk potensi terbaik mereka ... termasuk keharusan jika itu yang masuk akal.
Jadi sekali lagi, terima kasih kepada semua orang yang merespons!