«oop» etiketlenmiş sorular

Nesneye yönelik programlama, "nesneler" kullanan bir programlama paradigmasıdır: etkileşimleriyle birlikte veri alanları ve yöntemlerinden oluşan veri yapıları.

10
Bir sınıftaki özel alanın değiştirilmesini nasıl önleyebilirim?
Bu sınıfa sahip olduğumu düşünün: public class Test { private String[] arr = new String[]{"1","2"}; public String[] getArr() { return arr; } } Şimdi, yukarıdaki sınıfı kullanan başka bir sınıf var: Test test = new Test(); test.getArr()[0] ="some value!"; //!!! İşte sorun şu: Dışarıdan bir sınıfın özel alanına eriştim! Bunu …
165 java  arrays  oop  class 

11
PImpl deyimi pratikte gerçekten kullanılıyor mu?
Herb Sutter'in "Olağanüstü C ++" kitabını okuyorum ve bu kitapta pImpl deyimini öğrendim. Temel olarak, fikir, a'nın privatenesneleri için bir yapı oluşturmak classve bunları derleme süresini azaltmak için dinamik olarak ayırmaktır (ve ayrıca özel uygulamaları daha iyi gizlemek). Örneğin: class X { private: C c; D d; } ; şu …
165 c++  oop  pimpl-idiom 


8
Python'da nesne nitelikleri üzerinde yineleme
Birkaç öznitelik ve yöntem ile bir python nesnesi var. Nesne öznitelikleri üzerinde yineleme yapmak istiyorum. class my_python_obj(object): attr1='a' attr2='b' attr3='c' def method1(self, etc, etc): #Statements Tüm nesne özniteliklerini ve geçerli değerlerini içeren bir sözlük oluşturmak istiyorum, ancak dinamik bir şekilde yapmak istiyorum (daha sonra başka bir öznitelik eklerseniz işlevimi de …


9
Fonksiyonel ve zorunlu programlama dilleri arasındaki fark nedir?
C #, Visual Basic, C ++ ve Java gibi nesne yönelimli programlama (OOP) dilleri de dahil olmak üzere ana akım dillerin çoğu öncelikli olarak zorunlu (yordamsal) programlamayı desteklemek üzere tasarlanmıştır, oysa Haskell / gofer benzeri diller tamamen işlevseldir. Herkes bu iki programlama yolu arasındaki farkın ne olduğunu açıklayabilir mi? Programlamanın …

22
C'de nesne yönelimi
C'de çirkin (ancak kullanılabilir) bir nesne yönelimi sağlayan bir dizi şık önişlemci kesmek (ANSI C89 / ISO C90 uyumlu) ne olurdu? Birkaç farklı nesne yönelimli dile aşinayım, bu yüzden lütfen "C ++ öğrenin!" " ANSI C ile Nesneye Yönelik Programlama " (dikkat: PDF formatında ) ve diğer bazı ilginç çözümler …
157 c  oop  object 

8
Javascript alt sınıftan bir üst yöntemi nasıl çağırılır?
Son birkaç saatimi sorunuma bir çözüm bulmaya çalışarak geçirdim ama umutsuz görünüyor. Temelde bir alt sınıftan bir ebeveyn yöntemi çağırmak için bilmek gerekir. Şimdiye kadar denedim tüm şeyler ya çalışma ya da üst yöntemi yazarak sona erer. Javascript OOP kurmak için aşağıdaki kodu kullanıyorum: // SET UP OOP // surrogate …



13
Delege nedir? [kapalı]
Kapalı . Bu sorunun daha fazla odaklanması gerekiyor . Şu anda cevapları kabul etmiyor. Bu soruyu geliştirmek ister misiniz? Soruyu, yalnızca bu yayını düzenleyerek tek bir soruna odaklanacak şekilde güncelleyin . 6 yıl önce kapalı . Bu soruyu geliştir Bir delegenin asıl rolü nedir? Bu soruya röportajlarımda birçok kez soru …
152 oop  delegates 

18
Yöntem zinciri - neden iyi bir uygulama ya da değil?
Yöntem zincirleme , sonucun başka bir yöntem için çağrılması için nesnenin kendisini döndüren nesne yöntemlerinin uygulanmasıdır. Bunun gibi: participant.addSchedule(events[1]).addSchedule(events[2]).setStatus('attending').save() Bu, okunabilir kod veya bir "akıcı arayüz" ürettiği için iyi bir uygulama olarak görülüyor. Bununla birlikte, bana göre, nesne yönünün kendisi tarafından ima edilen gösterimi çağıran nesneyi kırıyor gibi görünüyor - …

12
Kalıtım ve Toplama Karşılaştırması [kapalı]
Şu anda olduğu gibi, bu soru Soru-Cevap formatımıza uygun değil. Yanıtların olgular, 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 . 8 yıl önce kapalı . …

14
'Kuplajda düşük ve yüksek uyumda' ne anlama geliyor
İfadeyi anlamada sorun yaşıyorum low in coupling and high in cohesion. Google'la ilgili çok şey okudum ve okudum, ancak yine de anlaşılması zor. Anladığım kadarıyla, High cohesionbelirli bir işlevi yerine getirmek için uzmanlaşmış sınıflara sahip olmamız gerektiği anlamına gelir. Umarım bu doğru mu? Sadece kredi kartlarını doğrulamak için uzmanlaşmış bir …
151 oop  ooad 

4
ActiveRecord öznitelik yöntemlerini geçersiz kılma
Neden bahsettiğime bir örnek: class Person < ActiveRecord::Base def name=(name) super(name.capitalize) end def name super().downcase # not sure why you'd do this; this is just an example end end Bu işe yarıyor gibi görünüyor, ama sadece öznitelik yöntemleri geçersiz kılma bölümü okudum ActiveRecord :: Base belgelerinde ve read_attributeve write_attributeyöntemlerini kullanmanızı …

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.