Pertanyaan yang diberi tag «multiple-inheritance»

9
Apakah ada alasan "nyata" mengapa pewarisan berganda dibenci?
Saya selalu menyukai gagasan memiliki banyak warisan yang didukung dalam suatu bahasa. Paling sering meskipun itu sengaja dilupakan, dan seharusnya "penggantian" adalah antarmuka. Antarmuka tidak mencakup semua tanah yang sama dengan pewarisan berganda, dan pembatasan ini kadang-kadang dapat menyebabkan lebih banyak kode boilerplate. Satu-satunya alasan dasar yang pernah saya dengar …

1
Bagaimana mixin atau sifat-sifat lebih baik daripada pewarisan berganda?
C ++ memiliki multiple inheritance, banyak desain bahasa melarangnya berbahaya. Tetapi beberapa bahasa seperti Ruby dan PHP menggunakan sintaks aneh untuk melakukan hal yang sama dan menyebutnya mixin atau traits. Saya mendengar berkali-kali bahwa mixin / traits lebih sulit untuk disalahgunakan daripada multiple inheritance. Apa yang secara khusus membuat mereka …

6
Apakah pewarisan berganda melanggar Prinsip Tanggung Jawab Tunggal?
Jika Anda memiliki kelas yang mewarisi dari dua kelas yang berbeda, bukankah ini berarti bahwa subkelas Anda secara otomatis melakukan (setidaknya) 2 hal, satu dari setiap superclass? Saya percaya tidak ada perbedaan jika Anda memiliki beberapa antarmuka warisan. Sunting: Agar jelas, saya percaya bahwa jika subkelas banyak kelas melanggar SRP, …

2
Bagaimana Traits in Scala menghindari "kesalahan intan"?
(Catatan: Saya menggunakan 'kesalahan' alih-alih 'masalah' dalam judul karena alasan yang jelas ..;)). Saya melakukan bacaan dasar tentang Traits in Scala. Mereka mirip dengan Antarmuka di Java atau C #, tetapi mereka memungkinkan untuk implementasi metode standar. Saya bertanya-tanya: tidak bisakah ini menyebabkan "masalah berlian", yang mengapa banyak bahasa menghindari …

5
Solusi yang tepat untuk multi inheritence di Java (Android)
Saya memiliki masalah konseptual dengan implementasi kode yang tampaknya membutuhkan banyak pewarisan, yang tidak akan menjadi masalah dalam banyak bahasa OO, tetapi karena proyek ini untuk Android, tidak ada yang namanya multiple extends. Saya memiliki banyak kegiatan, yang berasal dari kelas dasar yang berbeda, seperti sederhana Activity, TabActivity, ListActivity, ExpandableListActivity, …

7
Berbagai kasus penggunaan pewarisan
Java menghilangkan banyak pewarisan dengan alasan bahwa ia menghilangkan tujuan desain untuk menjaga bahasa tetap sederhana . Saya ingin tahu apakah Java (dengan sistem ramah lingkungannya) benar-benar "sederhana". Python tidak kompleks dan memiliki banyak pewarisan. Jadi tanpa terlalu subjektif, pertanyaan saya adalah ... Apa pola masalah khas yang mendapat manfaat …




1
Menggunakan Orde Resolusi Metode Python untuk Injeksi Ketergantungan - apakah ini buruk?
Saya menonton pembicaraan Pycon karya Raymond Hettinger, "Super Considered Super" dan belajar sedikit tentang Python MRO (Method Resolution Order) yang membuat linearkan kelas "induk" kelas dengan cara deterministik. Kita dapat menggunakan ini untuk keuntungan kita, seperti dalam kode di bawah ini, untuk melakukan injeksi ketergantungan. Jadi sekarang, tentu saja, saya …

2
Apakah pewarisan Python merupakan gaya pewarisan "is-a" atau gaya komposisi?
Mengingat bahwa Python memungkinkan pewarisan berganda, seperti apa pewarisan idiomatik dalam Python? Dalam bahasa dengan pewarisan tunggal, seperti Java, pewarisan akan digunakan ketika Anda bisa mengatakan bahwa satu objek "adalah-a" dari objek lain dan Anda ingin berbagi kode antara objek (dari objek induk ke objek anak). Misalnya, Anda dapat mengatakan …
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.