Pertanyaan yang diberi tag «object-oriented»

Metodologi yang memungkinkan suatu sistem dimodelkan sebagai sekumpulan objek yang dapat dikontrol dan dimanipulasi secara modular


6
Untuk menentukan pengambil dan setter mana? [Tutup]
Seperti yang ada saat ini, pertanyaan ini tidak cocok untuk format tanya jawab kami. Kami berharap jawaban didukung oleh fakta, referensi, atau keahlian, tetapi pertanyaan ini kemungkinan akan mengundang debat, argumen, polling, atau diskusi panjang. Jika Anda merasa bahwa pertanyaan ini dapat diperbaiki dan mungkin dibuka kembali, kunjungi pusat bantuan …

3
Mengapa Anda membutuhkan "diri". dalam Python untuk merujuk ke variabel instan?
Saya telah memprogram ke sejumlah bahasa seperti Java, Ruby, Haskell dan Python. Saya harus beralih di antara banyak bahasa per hari karena berbagai proyek yang saya kerjakan. Sekarang, masalahnya adalah saya sering lupa untuk menulis selfsebagai parameter pertama dalam definisi fungsi dalam Python yang sama adalah dengan memanggil metode pada …

3
Komposisi atas warisan tetapi
Saya mencoba mengajari diri saya sendiri rekayasa perangkat lunak dan menghadapi beberapa informasi yang saling bertentangan yang membingungkan saya. Saya telah belajar OOP dan apa kelas abstrak / Antarmuka dan bagaimana menggunakannya, tapi kemudian saya membaca bahwa orang harus 'lebih menyukai komposisi daripada warisan'. Saya mengerti komposisi adalah ketika satu …

8
Apakah antarmuka yang menampilkan fungsi async adalah abstraksi yang bocor?
Saya membaca buku Prinsip Ketergantungan Injeksi, Praktek, dan Pola dan saya membaca tentang konsep abstraksi bocor yang dijelaskan dengan baik dalam buku ini. Hari ini saya refactoring basis kode C # menggunakan injeksi dependensi sehingga panggilan async digunakan alih-alih memblokir yang. Melakukannya saya sedang mempertimbangkan beberapa antarmuka yang mewakili abstraksi …

2
Dalam DDD, apakah Layanan Domain pada dasarnya hanya Pola Fasad dan / atau Mediator?
Dalam Desain Berbasis Domain, Lapisan Domain dapat memiliki beberapa layanan (tradisional). Misalnya, untuk domain Pengguna, kami mungkin memiliki: UserFactory, yang membangun objek Pengguna dengan cara yang berbeda UserRepository, yang bertanggung jawab untuk berinteraksi dengan Layanan Kegigihan di Lapisan Infrastruktur Apakah Layanan Pengguna dalam Lapisan Domain hanyalah Mediator dan / atau …


6
DDD memenuhi OOP: Bagaimana menerapkan repositori berorientasi objek?
Implementasi khas dari repositori DDD tidak terlihat sangat OO, misalnya save()metode: package com.example.domain; public class Product { /* public attributes for brevity */ public String name; public Double price; } public interface ProductRepo { void save(Product product); } Bagian infrastruktur: package com.example.infrastructure; // imports... public class JdbcProductRepo implements ProductRepo { …

1
Menggunakan kelas teman untuk merangkum fungsi anggota pribadi di C ++ - praktik atau penyalahgunaan yang baik?
Jadi saya perhatikan mungkin untuk menghindari menempatkan fungsi pribadi di header dengan melakukan sesuatu seperti ini: // In file pred_list.h: class PredicateList { int somePrivateField; friend class PredicateList_HelperFunctions; public: bool match(); } // In file pred_list.cpp: class PredicateList_HelperFunctions { static bool fullMatch(PredicateList& p) { return p.somePrivateField == 5; // or …

4
struct dengan nilai default tidak masuk akal
Dalam sistem saya saya sering beroperasi dengan kode bandara ( "YYZ", "LAX", "SFO", dll), mereka selalu dalam format yang sama persis (3 huruf, direpresentasikan sebagai huruf besar). Sistem ini biasanya menangani 25-50 kode (berbeda) ini per permintaan API, dengan lebih dari seribu total alokasi, mereka diedarkan melalui banyak lapisan aplikasi …





6
Bagaimana cara menghindari downcasting?
Pertanyaan saya adalah tentang kasus khusus Hewan kelas super. Saya Animalbisa moveForward()dan eat(). Sealmeluas Animal. Dogmeluas Animal. Dan ada makhluk khusus yang juga Animaldisebut memanjang Human. Humanmengimplementasikan juga metode speak()(tidak diterapkan oleh Animal). Dalam implementasi metode abstrak yang menerima Animalsaya ingin menggunakan speak()metode ini. Tampaknya tidak mungkin tanpa melakukan downcast. …

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.