«object-oriented» etiketlenmiş sorular

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


6
OOP dili ile önyargılı olduktan sonra bir C programcısı olarak nasıl düşünülür? [kapalı]
Önceden, yalnızca Nesne Yönelimli Programlama dillerini kullandım (C ++, Ruby, Python, PHP) ve şimdi C öğreniyorum. Konsepti olmayan bir dilde işleri yapmanın doğru yolunu bulmakta zorlanıyorum. 'Nesne, cisim'. C'deki OOP paradigmalarını kullanmanın mümkün olduğunu anladım, ancak C-deyimsel yolu öğrenmek istiyorum. Bir programlama problemini çözerken, ilk yaptığım problemi çözecek bir nesne …

6
“Fonksiyonlar ve veriler arasında sıkı bağlantı” neden kötü?
Bu alıntıyı " Clojure'nin Sevinci" sinde p. 32, ancak birileri geçen hafta akşam yemeğinde bana aynı şeyi söyledi ve ben de başka yerlerde duydum: Nesne yönelimli programlamanın dezavantajı [A], fonksiyon ve veri arasındaki sıkı bağlantıdır. Bir uygulamada gereksiz eşlemenin neden kötü olduğunu anlıyorum. Ayrıca değişken durum ve kalıtımın, Nesneye Yönelik …

7
Yalnız bir küçük geliştirici olarak ilerlememi nasıl gözden geçirebilirim [kapalı]
Şu anda yalnız birincil geliştirici olarak 2 kişilik bir şirkette çalışıyorum. Patronum müşterileri alır, bazı png tasarım şablonlarını hazırlar ve onları bana teslim eder. Bu sistem iyi çalışıyor ve gerçekten hoşuma gidiyor. Çalıştığım proje türleri küçük ve orta ölçekli işletmeler için ve genellikle bir CMS sistemi istiyorlar. Sıfırdan geliştirilen, müşterinin …

5
Kimlik veya Nesne Geçiş?
Bir etki alanı varlığı elde etmek için bir iş mantığı yöntemi sağlarken, parametre bir nesneyi mi yoksa bir kimliği mi kabul etmeli? Örneğin, şunu yapmalı mıyız: public Foo GetItem(int id) {} veya bu: public Foo GetItem(Foo foo) {} Nesnelerin etrafından dolaşmalarına, bütünlüklerine inanıyorum, peki ya bu nesneyi elde ettiğimiz ve …

11
Yalnızca yapıcı alt sınıflar: Bu bir kalıp karşıtı mı?
Bir iş arkadaşınızla bir tartışma yapıyordum ve alt sınıflamanın amacı hakkında çelişkili sezgiler yaşadık. Sezgim, eğer bir alt sınıfın birincil işlevi, üst öğesinin sınırlı bir değer değer aralığını ifade etmesiyse, o zaman muhtemelen bir alt sınıf olmamalıdır. Ters sezgi için savundu: alt sınıflamanın bir nesnenin daha "spesifik" olduğunu gösterir ve …


11
Soyut sınıflar / yöntemler eski midir?
Bir sürü soyut sınıf / yöntem yaratırdım. Sonra arayüzleri kullanmaya başladım. Şimdi, arayüzlerin soyut sınıfları modası geçmiş kılmadığından emin değilim. Tamamen soyut bir sınıfa mı ihtiyacınız var? Bunun yerine bir arayüz oluşturun. İçinde bazı uygulamalar olan soyut bir sınıfa mı ihtiyacınız var? Bir arayüz oluşturun, bir sınıf oluşturun. Sınıfı devralın, …

17
Programlama becerilerim konusunda kendime nasıl daha güvenirim? [kapalı]
Programlama bana yabancı değil. İlk önce 12 yaşındayken işaretleme yapmaya başladım (HTML, şimdi lütfen bana gülme) ve 13 yaşındayken biraz BASIC yaptım (bu noktada Akış Şemaları, Sözde Kodlar hakkında çok şey biliyordum), ama sonra öğrendim Lisede biyoloji ve dolayısıyla C, Java, vs. gibi dillerin "gerçek" programlama bilgisini kaçırdım. UG BE'm …

5
Bir yöntemin geçersiz sayılabileceğini, bir yöntemin çağrılabileceğini tanımlamaktan daha güçlü bir bağlılık olarak tanımlamak nasıl olabilir?
Gönderen: http://www.artima.com/lejava/articles/designprinciples4.html Erich Gamma: Hala on yıl sonra bile doğru olduğunu düşünüyorum. Kalıtım, davranışı değiştirmek için harika bir yoldur. Ancak bunun kırılgan olduğunu biliyoruz, çünkü alt sınıf, geçersiz kıldığı bir yöntemin çağrıldığı bağlam hakkında kolayca varsayımlarda bulunabilir. Taktığım alt sınıf kodunun çağrılacağı dolaylı bağlam nedeniyle, temel sınıf ve alt sınıf …

8
Bir nesnenin yetenekleri, yalnızca uyguladığı arabirimler tarafından tanımlanmalı mı?
C # isoperatörü ve Java'nın instanceofoperatörü, bir nesne örneğinin uyguladığı arabirime (ya da daha temel olarak, temel sınıfına) dal vermenize izin verir. Bir arayüzün sağladığı yeteneklere dayanarak bu özelliği yüksek seviye dallanma için kullanmak uygun mudur? Veya bir temel sınıf, bir nesnenin sahip olduğu yetenekleri tanımlayan bir arayüz sağlamak için …

2
Sınırsız miktarda parametre alan yöntemler neden daha az parametreye sahip aşırı yükleri tanımlar?
Örneğin, .NET'teki System.IO.Path.Combineyöntem aşağıdaki aşırı yüklemelere sahiptir: Combine(params String[]) Combine(String, String) Combine(String, String, String) Combine(String, String, String, String) Son üçün amacı ne? İlki hepsini kapsayacak, yakından bakarsanız, paramsanahtar kelimeyi kullanır . Geriye dönük uyumluluk argümanı yalnızca Combine(String, String)varyantı kapsayacaktır , çünkü .NET 4'e kadar olan tek sürümdü.

8
Gerçekten ne zaman nesne yönelimli programlama kullanıyoruz? [kapalı]
Python'da temel olarak dizeleri işleyen bir program yazıyorum ve OOP ilkelerini kullanarak yapıp yapmamam gerektiğini merak ediyordum. Müşteri kodu umursamadığını, sadece işin yapılmasını istediğini söyledi . Nesne yönelimli kodun tanımlayıcı temizleyici olmadığını ve tersine OO dışı kodun tanımsız crappy olmadığını biliyorum. Sorduğum soru az ya da çok görüşe dayalı olabilir, …

5
Java Swing sınıfını ne zaman genişletmeliyim?
Şu anki miras uygulama anlayışım, birinin sadece bir IS-A ilişkisi mevcutsa bir sınıfı genişletmesi gerektiği yönünde . Ebeveyn sınıfı ayrıca, farklı işlevselliğe sahip daha spesifik alt tipleri içerebilir ancak ebeveynde soyutlanmış ortak unsurları paylaşacaktır. Java profesörümün bize yapmamızı önerdiği şey yüzünden bu anlayışı sorguluyorum. JSwingSınıfta inşa ettiğimiz bir uygulama için …


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.