«object-oriented-design» etiketlenmiş sorular

Nesne yönelimli tasarım, bir yazılım problemini çözmek için etkileşen nesneler sistemini planlama sürecidir.

4
Özel alıcılar yerine kamu finalini kullanmak
Bu şekilde yazılmış çoğu değişmez POJO'yu görüyorum: public class MyObject { private final String foo; private final int bar; public MyObject(String foo, int bar) { this.foo = foo; this.bar = bar; } public String getFoo() { return foo; } public int getBar() { return bar; } } Yine de onları …

7
Zincirleme ayarlayıcıları neden sıra dışı?
Fasulyelerde zincirleme yapılması çok kullanışlıdır: aşırı yüklenicilere, mega yapıcılara, fabrikalara gerek yoktur ve okunabilirliği arttırır. Nesnenizin değişmez olmasını istemediğiniz sürece herhangi bir olumsuz tarafı düşünemiyorum, bu durumda zaten herhangi bir ayarlayıcı bulunmayacak. Öyleyse bunun bir OOP sözleşmesi olmaması için bir neden var mı? public class DTO { private String foo; …

4
İstisna yayılımı: İstisnaları ne zaman yakalamalıyım?
MethodA, sırayla MethodC'yi çağıran bir MethodB'yi çağırır. MethodB veya MethodC'de işlem istisnası yoktur. Ancak MethodA'da istisna kullanımı var. MethodC'de bir istisna oluşur. Şimdi, bu istisna, uygun şekilde işleyen Yöntem A'ya yansıyor. Bundaki sorun ne? Aklımda, bir noktada arayan bir kişi MetotB veya MetotC'yi yürütecek ve bu metotlarda istisnalar meydana geldiğinde, …

3
MVC tasarımında iş mantığını nereye koymak?
Veri formlarıyla kayıtları bir veritabanına ekleyen basit bir MVC Java uygulaması oluşturdum. Uygulamam veri toplar, doğrular ve saklar. Bunun nedeni, verilerin çevrimiçi olarak farklı kullanıcılardan edinilmesidir. Veriler doğada çoğunlukla sayısaldır. Şimdi veritabanına depolanan sayısal verilerde (SQL server), uygulamamın hesaplamalar yapmasını ve sonuçları görüntülemesini istiyorum. Kullanıcı hesaplamaların nasıl yapıldığına ilgi duymuyor, …

10
Birim testleri tasarımı nasıl kolaylaştırır?
Meslektaşımız, ünite testleri yazmamızı, tasarımımızı ve refactor işlerimizi geliştirmemize gerçekten yardımcı olduğunu söylüyor, ancak nasıl olduğunu bilmiyorum. Bir CSV dosyası yüklüyor ve onu ayrıştırıyorsam, birim testi (alanlardaki değerleri doğrulayarak) tasarımımı doğrulamama nasıl yardımcı olur? Bağlanma ve modülerlikten bahsetti, ancak bana göre pek bir anlam ifade etmiyor - ama yine de …

8
Hiçbir şeyi temsil etmeyen sınıf - doğru mu?
Uygulamamı tasarlıyorum ve SOLID ve OOP'yi doğru bir şekilde anladığımdan emin değilim. Sınıflar 1 şeyi yapmalı ve iyi yapmalı ancak diğer taraftan birlikte çalıştığımız gerçek nesneleri temsil etmelidir. Benim durumumda veri setinde bir özellik çıkarımı yapıyorum ve ardından makine öğrenimi analizi yapıyorum. Üç sınıf oluşturabileceğimi farz ediyorum FeatureExtractor DataSet analizör …

9
Arayüzlerin gelecekteki kullanımı için programlama
Böyle bir arayüz tasarlayan yanımda oturan bir meslektaşım var: public interface IEventGetter { public List<FooType> getFooList(String fooName, Date start, Date end) throws Exception; .... } Sorun şu ki, kodumuzda bu "end" parametresini kullanmıyoruz, tam orada, çünkü gelecekte biraz zaman kullanmak zorunda kalabiliriz. Şu anda kullanımda olmayan arayüzlere parametreler koymanın kötü …

6
Eğer fonksiyonum karmaşıksa ve çok fazla değişken varsa, bir sınıf oluşturmalı mıyım?
Nesne yönelimli programlama (OOP), örneğin, birinci sınıf işlevlere sahip olmayan Java'da Python'da olduğundan farklı olduğundan, bu soru biraz agnostiktir, ancak tamamen değildir . Başka bir deyişle, Java gibi bir dilde gereksiz sınıflar oluşturduğum için kendimi daha az suçlu hissediyorum, ancak Python gibi daha az dil bilen dillerde daha iyi bir …

5
Fonksiyonları parametre olarak diğer fonksiyonlara geçirmek, kötü uygulama?
AS3 uygulamamızın arka ucumuzla konuşma şeklini değiştirme sürecindeyiz ve eskisinin yerine geçmek için REST sistemini uygulama sürecindeyiz. Ne yazık ki, çalışmaya başlayan geliştirici şimdi uzun süreli hastalık izninde ve bana devredildi. Son bir haftadır çalışıyorum ve sistemi anlıyorum, ama beni endişelendiren bir şey var. İşlevlerin işlevlere geçmesi çok görünüyor. Örneğin, …

6
Neden Java Kalıtımından “Genişletilmiş”
Jame Gosling dedi. “Mümkün olduğunda uygulama devralmasından kaçınmalısınız.” ve bunun yerine, arabirim devralmayı kullanın. Ama neden? "Extends" anahtar sözcüğünü kullanarak bir nesnenin yapısını devralmayı nasıl önleyebiliriz ve aynı zamanda kodumuzu Nesne Yönelimli yapabilir mi? Birisi lütfen bu kavramı “bir kitapçıda kitap sipariş etmek” gibi bir senaryoda gösteren Nesneye Yönelik bir …


13
Değerleri belirlemek için bir boolean parametresi kullanmak yanlış mı?
Göre bu davranışını belirlemek için bir boolean parametresini kullanmak yanlış mı? , Bir davranışı belirlemek için boolean parametreleri kullanmaktan kaçının önemini biliyorum, örneğin: Orijinal versiyon public void setState(boolean flag){ if(flag){ a(); }else{ b(); } c(); } Yeni sürüm: public void setStateTrue(){ a(); c(); } public void setStateFalse(){ b(); c(); } …


8
OOP kolaylaşıyor mu yoksa zorlaşıyor mu? [kapalı]
Nesneye Yönelik Programlama kavramları, programcılara yıllar önce tanıtıldığında ilginç görünüyor ve programlama daha temizdi. OOP böyleydi Stock stock = new Stock(); stock.addItem(item); stock.removeItem(item); Kendini açıklayıcı bir adla anlamak daha kolaydı. Ancak, Veri Transferi Nesneleri, Değer Nesneleri, Havuz, Bağımlılık Enjeksiyonu vb. Yukarıdakileri elde etmek için birkaç sınıf (örneğin, özet, fabrika, DAO …

6
Nesnelerin alay edilmesinin zor olduğu bir sistemi nasıl test ederim?
Aşağıdaki sistemle çalışıyorum: Network Data Feed -> Third Party Nio Library -> My Objects via adapter pattern Geçenlerde, kullandığım kütüphanenin sürümünü güncellediğimde, başka şeylerin yanı sıra, zaman damgasının (üçüncü taraf kütüphanesinin döndüğü long) dönemin ardından milisaniyeden devir sonrası nanosaniye olarak değiştirilmesine neden olan bir sorun yaşadık . Sorun: Üçüncü şahıs …

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.