«object-oriented» etiketlenmiş sorular

Bir sistemin modüler bir şekilde kontrol edilip manipüle edilebilen bir dizi nesne olarak modellenmesini sağlayan bir metodoloji


7
Örnek oluşturma neden olduğu gibi?
C # 'yı son altı ay boyunca öğrendim ve şimdi Java'ya giriyorum. Sorum, örnek oluşturma (gerçekten her iki dilde) hakkında ve daha da fazlası: Neden bu şekilde yaptıklarını merak ediyorum. Bu örneği ele alalım Person Bob = new Person(); Nesnenin iki kez belirtilmesi için bir neden var mı? Hiç var …

4
Java nesnesini neden uygulama yerine arabirim (örneğin Harita) kullanarak tanımlamanız gerekir?
Çoğu Java kodunda, insanların böyle Java nesneleri bildirdiklerini görüyorum: Map<String, String> hashMap = new HashMap<>(); List<String> list = new ArrayList<>(); onun yerine: HashMap<String, String> hashMap = new HashMap<>(); ArrayList<String> list = new ArrayList<>(); Java nesnesini gerçekte kullanılacak uygulama yerine arabirimi kullanarak tanımlamak neden tercih edilir?

5
Arayüzler ne zaman kullanılır (birim testi, IoC?)
Burada bir öğrenci hatası yaptığımı sanıyorum ve açıklama arıyorum. Benim çözüm (C #) sınıfların birçoğu - ben çoğunluk söylemeye cesaret - Ben karşılık gelen bir arayüz yazma sona erdi. Örneğin, bir "ICalculator" arayüzü ve onu uygulayan bir "Hesap Makinesi" sınıfı, bu hesap makinesini asla farklı bir uygulama ile değiştirmeme rağmen. …

6
Ördek bir polimorfizm alt kümesi yazıyor mu
WIkipedia Üzerinde Polimorfizm'den Bilgisayar biliminde, polimorfizm, farklı veri türlerinin değerlerinin tekdüze bir arayüz kullanılarak ele alınmasını sağlayan bir programlama dili özelliğidir. Wikipedia'da yazarak ördek Nesne yönelimli programlama dilleri ile bilgisayar programlamasında, ördek yazma, bir nesnenin geçerli yöntem ve özellik kümesinin, belirli bir sınıftan veya belirli bir arabirimin uygulanmasından miras almak …

5
SRP (Tek Sorumluluk İlkesi) objektif midir?
"Kullanıcı çekici" tasarımlar tasarlamak isteyen iki kullanıcı arayüzü tasarımcısını düşünün. "Kullanıcı cazibe" objektif olmayan ve sadece tasarımcıların zihninde bulunan bir kavramdır. Böylece tasarımcı A, örneğin kırmızı rengi alabilirken tasarımcı B maviyi seçebilir. Tasarımcı A, tasarımcı B'den tamamen farklı bir düzen oluşturur, vb. SRP (Tek Sorumluluk İlkesi) hakkında okudum ve anladığım …

5
deneyimli C ++ mühendisleri ekibine OOP / OOD'yi tanıtmanın en iyi yolu
Mevcut ekip üyelerine OOP kavramlarını tanıtmak için bir hakaret olarak ortaya çıkmayan verimli bir yol mu arıyorum? Takım arkadaşlarım OO dillerinde yeni değil. Uzun zamandır C ++ / C # yapıyoruz, bu yüzden teknolojinin kendisi tanıdık. Ancak, etrafına bakın ve büyük çaba infüzyonu olmadan (çoğunlukla kod incelemeleri şeklinde), ürettiğimiz şey …

6
Kapsülleme ve yöntem karşılaştırması
"Tek erişim noktası" yöntemlerine karşı yöntem zincirleme klasik OOP sorunu var: main.getA().getB().getC().transmogrify(x, y) vs main.getA().transmogrifyMyC(x, y) Birincisi, her sınıfın sadece daha küçük bir operasyon kümesinden sorumlu olması ve her şeyi çok daha modüler hale getirme avantajına sahip gibi görünüyor - C'ye bir yöntem eklemek A, B veya C'de onu ortaya …

11
Nesneye yönelik programlamayı başarılı yapan nedir? [kapalı]
Şu anda olduğu gibi, bu soru Soru-Cevap formatımıza uygun değil. Yanıtların gerçekler, referanslar veya uzmanlık tarafından desteklenmesini bekliyoruz, ancak bu soru muhtemelen tartışma, tartışma, oylama veya genişletilmiş tartışma talep edecektir. Bu sorunun çözülebileceğini ve muhtemelen yeniden açılabileceğini düşünüyorsanız, yardım için yardım merkezini ziyaret edin . 7 yıl önce kapalı . …


4
Java'da neden 'yalnızca alt sınıflar' erişim değiştiricisi yok?
Java'da, yöntemler için kullanılabilir dört erişim değiştirici vardır: public - herhangi bir sınıf bu yöntemi kullanabilir. protected - aynı paketteki sınıflar ve herhangi bir paketteki alt sınıflar bu yöntemi kullanabilir. private - yalnızca bu sınıf bu yöntemi kullanabilir. no modifier ("package private") - yalnızca aynı paketteki sınıflar bu yöntemi kullanabilir. …

4
Verilerimin ilişkisel veya nesne yönelimli olduğunu nasıl bilebilirim?
Sadece şu satırları okuyun- Verileriniz doğadaki bir nesne ise, nesne depolarını ("NoSQL") kullanın. İlişkisel bir veritabanından çok daha hızlı olurlar. Verileriniz ilişkisel nitelikte ise, ilişkisel veritabanının ek yükü buna değer. dan- http://seldo.com/weblog/2011/06/15/orm_is_an_antipattern Peki, verilerimin doğası gereği ilişkisel mi yoksa nesne odaklı mı olduğunu nasıl bilebilirim?

6
Numaralandırmalar ne zaman bir kod kokusu DEĞİLDİR?
İkilem Nesneye yönelik uygulamalar hakkında birçok iyi uygulama kitabı okudum ve okuduğum hemen hemen her kitabın, numaraların kod kokusu olduğunu söyledikleri bir parçası vardı. Sanırım sayılar geçerli olduğunda açıkladıkları kısmı kaçırmışlar. Gibi, enums bir kod kokusu DEĞİL ve aslında geçerli bir yapı DEĞİL yönergeleri ve / veya kullanım durumları arıyorum …

2
DDD: Bir kök toplamının başka bir kök toplamına referans tutması doğru mu?
Etki alanına dayalı tasarımı (DDD) izlerken, bir kök toplamı için ayrı bir toplamda kök varlık olan bir iç varlığa referans olması doğru mudur? Bunun doğru olmadığına inanıyorum, esas olarak mavi kitaptaki bu kural nedeniyle : AGGREGATE sınırının dışında hiçbir şey, kök ENTITY (kök ENTITY) dışında herhangi bir şeye referans veremez. …

5
MVC: Kontrolör Tek Sorumluluk İlkesini ihlal ediyor mu?
Tek Sorumluluk İlkesi "bir sınıfın değişimin bir nedeni olması gerektiğini" belirtir. MVC modelinde, Kontrolcünün işi Görünüm ve Model arasında aracılık etmektir. Kullanıcı tarafından GUI üzerinde yapılan eylemleri rapor etmek için Görünüm için bir arayüz sunar (örneğin, Görünüm'ün çağrı yapmasına izin vermek controller.specificButtonPressed()) ve verilerini değiştirmek veya işlemlerini başlatmak için Model …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.