Pertanyaan yang diberi tag «encapsulation»

6
Metode rantai vs enkapsulasi
Ada masalah OOP klasik dari metode chaining vs metode "single-access-point": main.getA().getB().getC().transmogrify(x, y) vs. main.getA().transmogrifyMyC(x, y) Yang pertama tampaknya memiliki keuntungan bahwa masing-masing kelas hanya bertanggung jawab untuk satu set operasi yang lebih kecil, dan membuat semuanya lebih modular - menambahkan metode ke C tidak memerlukan upaya apa pun dalam A, …

5
Bisakah saya menggunakan Injeksi Ketergantungan tanpa melanggar Enkapsulasi?
Inilah Solusi dan proyek saya: BookStore (solusi) BookStore.Coupler (proyek) Bootstrapper.cs BookStore.Domain (proyek) BuatBookCommandValidator.cs CompositeValidator.cs IValidate.cs IValidator.cs ICommandHandler.cs BookStore.Infrastructure (proyek) BuatBookCommandHandler.cs ValidationCommandHandlerDecorator.cs BookStore.Web (proyek) Global.asax BookStore.BatchProcesses (proyek) Program.cs Bootstrapper.cs : public static class Bootstrapper.cs { // I'm using SimpleInjector as my DI Container public static void Initialize(Container container) { container.RegisterManyForOpenGeneric(typeof(ICommandHandler<>), typeof(CreateBookCommandHandler).Assembly); …


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 …








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.