Pertanyaan yang diberi tag «composition»


5
Mengapa saya lebih suka komposisi daripada warisan?
Saya selalu membaca bahwa komposisi lebih disukai daripada warisan. Sebuah posting blog tentang jenis yang berbeda , misalnya, advokat menggunakan komposisi lebih dari warisan, tetapi saya tidak bisa melihat bagaimana polimorfisme tercapai. Tetapi saya merasa bahwa ketika orang mengatakan lebih suka komposisi, mereka benar-benar lebih suka kombinasi komposisi dan implementasi …

3
Apakah "komposisi atas warisan" melanggar "prinsip kering"?
Sebagai contoh, pertimbangkan saya memiliki kelas untuk kelas lain untuk diperluas: public class LoginPage { public String userId; public String session; public boolean checkSessionValid() { } } dan beberapa subclass: public class HomePage extends LoginPage { } public class EditInfoPage extends LoginPage { } Bahkan, subclass tidak memiliki metode untuk …

5
Bagaimana mendefinisikan bahwa suatu metode dapat ditimpa komitmen yang lebih kuat daripada mendefinisikan bahwa suatu metode dapat dipanggil?
Dari: http://www.artima.com/lejava/articles/designprinciples4.html Erich Gamma: Saya masih berpikir itu benar bahkan setelah sepuluh tahun. Warisan adalah cara yang keren untuk mengubah perilaku. Tetapi kita tahu bahwa itu rapuh, karena subclass dapat dengan mudah membuat asumsi tentang konteks di mana metode yang ditimpa dipanggil. Ada hubungan erat antara kelas dasar dan subkelas, …

2
Apa arti dari "tidak menulis"?
Saya melihat banyak teks, terutama teks pemrograman fungsional, mengklaim bahwa konsep CS tertentu "tidak menulis" . Contohnya adalah: kunci tidak menulis, monad tidak menulis. Saya mengalami kesulitan melacak dengan tepat arti dari frasa ini. Ketika saya memikirkan komposisi, saya memikirkan komposisi fungsi atau agregasi objek (seperti dalam "komposisi yang disukai …

8
"Lebih suka komposisi daripada warisan" - Apakah satu-satunya alasan untuk bertahan terhadap perubahan tanda tangan?
Halaman ini menganjurkan komposisi atas warisan dengan argumen berikut (diucapkan ulang dengan kata-kata saya): Perubahan tanda tangan dari metode superclass (yang belum ditimpa dalam subclass) menyebabkan perubahan tambahan di banyak tempat ketika kita menggunakan Inheritance. Namun, ketika kami menggunakan Komposisi, perubahan tambahan yang diperlukan hanya di satu tempat: Subkelas. Apakah …



3
Komposisi atas warisan tetapi
Saya mencoba mengajari diri saya sendiri rekayasa perangkat lunak dan menghadapi beberapa informasi yang saling bertentangan yang membingungkan saya. Saya telah belajar OOP dan apa kelas abstrak / Antarmuka dan bagaimana menggunakannya, tapi kemudian saya membaca bahwa orang harus 'lebih menyukai komposisi daripada warisan'. Saya mengerti komposisi adalah ketika satu …

4
Apakah injeksi ketergantungan dengan tangan merupakan alternatif yang lebih baik untuk komposisi dan polimorfisme?
Pertama, saya seorang programmer tingkat pemula; Bahkan, saya menyelesaikan gelar AS dengan proyek batu penjuru akhir selama musim panas. Dalam pekerjaan baru saya, ketika tidak ada proyek yang harus saya kerjakan (mereka sedang menunggu untuk mengisi tim dengan lebih banyak karyawan baru), saya telah diberikan buku untuk dibaca dan dipelajari …


5
Haruskah saya lebih suka komposisi atau warisan dalam skenario ini?
Pertimbangkan sebuah antarmuka: interface IWaveGenerator { SoundWave GenerateWave(double frequency, double lengthInSeconds); } Antarmuka ini diimplementasikan oleh sejumlah kelas yang menghasilkan gelombang dengan bentuk yang berbeda (misalnya, SineWaveGeneratordan SquareWaveGenerator). Saya ingin menerapkan kelas yang menghasilkan SoundWaveberdasarkan pada data musik, bukan data suara mentah. Itu akan menerima nama catatan dan panjang dalam …

1
Apakah ada situasi di mana akan lebih baik menggunakan referensi yang lemah daripada komposisi sederhana?
Meskipun dokumen Java menentukan, bahwa referensi Lemah terutama untuk pemetaan kanonik, Anda akan menemukan banyak , banyak , banyak orang di internet yang menyatakan, bahwa WeakHashMap sangat cocok untuk menyimpan metadata objek selama masa pakainya. Namun, tidak ada yang mengganggu untuk membuat contoh yang komprehensif DAN tepat . Menggunakan WeakHashMap …

4
Mengurangi boilerplate di kelas yang mengimplementasikan antarmuka melalui komposisi
Saya punya kelas: Aitu adalah gabungan dari sejumlah kelas yang lebih kecil B,, Cdan D. B, C, Dan Dmengimplementasikan interface IB, ICdan IDmasing-masing. Karena Amendukung semua fungsionalitas B, Cdan D, Aimplementasi IB, ICdan IDjuga, tetapi sayangnya hal ini menyebabkan banyak perutean ulang dalam implementasiA Seperti itu: interface IB { int …

9
Warisan vs Komposisi Untuk Potongan Catur
Pencarian cepat dari stackexchange ini menunjukkan bahwa secara umum komposisi umumnya dianggap lebih fleksibel daripada warisan tetapi seperti biasanya tergantung pada proyek dll dan ada kalanya pewarisan adalah pilihan yang lebih baik. Saya ingin membuat permainan catur 3D di mana setiap bagian memiliki jala, animasi yang mungkin berbeda dan sebagainya. …

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.