Pertanyaan yang diberi tag «solid»

Mnemonik untuk serangkaian prinsip desain: Tanggung jawab tunggal, Terbuka-tertutup, penggantian Liskov, Pemisahan antarmuka, Pembalikan ketergantungan


8
Apa tanggung jawab nyata sebuah kelas?
Saya terus bertanya-tanya apakah sah menggunakan kata kerja yang didasarkan pada kata benda di OOP. Saya menemukan artikel yang brilian ini , meskipun saya masih tidak setuju dengan poin yang dibuatnya. Untuk menjelaskan masalahnya sedikit lebih banyak, artikel itu menyatakan bahwa seharusnya tidak ada, misalnya, FileWriterkelas, tetapi karena menulis adalah …


11
Pastikan bahwa setiap kelas hanya memiliki satu tanggung jawab, mengapa?
Menurut dokumentasi Microsoft, artikel prinsip Wikipedia SOLID, atau sebagian besar arsitek TI kita harus memastikan bahwa setiap kelas hanya memiliki satu tanggung jawab. Saya ingin tahu mengapa, karena jika semua orang tampaknya setuju dengan aturan ini, tidak ada yang tampaknya setuju tentang alasan aturan ini. Beberapa mengutip pemeliharaan yang lebih …



6
Baris tambahan di blok vs parameter tambahan dalam Kode Bersih
Konteks Dalam Clean Code , halaman 35, katanya Ini menyiratkan bahwa blok dalam pernyataan if, statement lain, sedangkan statement, dan seterusnya harus sepanjang satu baris. Mungkin saluran itu harus menjadi pemanggilan fungsi. Ini tidak hanya menjaga fungsi penutup tetap kecil, tetapi juga menambah nilai dokumenter karena fungsi yang disebut di …
33 clean-code  solid 




3
Apakah kelas statis dengan metode statis dianggap SOLID?
SOLID termasuk prinsip substitusi Liskov yang berpendapat bahwa "objek dalam suatu program harus diganti dengan instance subtipe mereka tanpa mengubah kebenaran program itu". Karena kelas statis dengan metode statis (sedikit seperti Mathkelas) tidak memiliki instance sama sekali, apakah sistem saya dianggap SOLID jika saya memiliki kelas statis dengan metode statis?

12
SOLID vs. Menghindari Abstraksi Dini
Saya mengerti apa yang seharusnya dicapai oleh SOLID dan menggunakannya secara teratur dalam situasi di mana modularitas penting dan tujuannya jelas berguna. Namun, dua hal mencegah saya menerapkannya secara konsisten di basis kode saya: Saya ingin menghindari abstraksi dini. Dalam pengalaman saya menggambar garis abstraksi tanpa kasus penggunaan konkret (jenis …


11
Pilih upaya desain kode atau kemalasan di dunia Bank
Saya telah bekerja selama dua tahun di Bank Investasi yang hebat. Saya membuat beberapa proyek teknis dengan keinginan membuat kode yang paling optimal, dengan menghormati pola desain yang baik, prinsip SOLID, hukum demeter dan menghindari segala macam kode duplikat ... Ketika pengiriman dalam produksi => nol bug, semua telah terjadi …

5
Apakah kasus khusus dengan fallback melanggar Prinsip Pergantian Liskov?
Katakanlah saya memiliki antarmuka FooInterfaceyang memiliki tanda tangan berikut: interface FooInterface { public function doSomething(SomethingInterface something); } Dan kelas konkret ConcreteFooyang mengimplementasikan antarmuka itu: class ConcreteFoo implements FooInterface { public function doSomething(SomethingInterface something) { } } Saya ingin ConcreteFoo::doSomething()melakukan sesuatu yang unik jika melewati jenis SomethingInterfaceobjek khusus (katakanlah itu disebut …

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.