Ringkasan Masalah:
Singkat cerita, saya mewarisi basis kode dan tim pengembangan yang tidak diizinkan untuk saya ganti dan penggunaan Obyek Allah adalah masalah besar. Ke depan, saya ingin meminta kami mempertimbangkan kembali faktor-faktor tetapi saya mendapat balasan dari tim-tim yang ingin melakukan segalanya dengan Objects God "karena lebih mudah" dan ini berarti saya tidak akan diizinkan untuk memasukkan kembali faktor. Saya mendorong kembali dengan mengutip pengalaman saya selama bertahun-tahun dalam pengembangan, bahwa saya adalah bos baru yang disewa untuk mengetahui hal-hal ini, dll, dan begitu juga dengan pihak ketiga dari perwakilan penjualan akun perusahaan luar negeri, dan ini sekarang berada di tingkat eksekutif dan pertemuan saya adalah besok dan saya ingin masuk dengan banyak amunisi teknis untuk mengadvokasi praktik terbaik karena saya merasa akan lebih murah dalam jangka panjang (Dan saya pribadi merasa itulah yang dikhawatirkan pihak ketiga) bagi perusahaan.
Masalah saya adalah dari tingkat teknis, saya tahu itu jangka panjang yang baik tetapi saya mengalami masalah dengan jangka pendek ultra dan jangka 6 bulan, dan sementara itu sesuatu yang saya "tahu" saya tidak bisa membuktikannya dengan referensi dan sumber daya yang dikutip di luar satu orang (Robert C. Martin, alias Paman Bob), karena itulah yang saya diminta untuk lakukan karena saya diberitahu memiliki data dari satu orang dan hanya satu orang (Robert C Martin) tidak cukup baik dari argumen .
Pertanyaan:
Apa sajakah sumber daya yang dapat saya kutip secara langsung (Judul, tahun diterbitkan, nomor halaman, kutipan) oleh para ahli terkenal di bidang yang secara eksplisit mengatakan bahwa penggunaan "Dewa" Objek / Kelas / Sistem ini buruk (atau baik, karena kami mencari untuk solusi yang paling valid secara teknis)?
Penelitian yang telah saya lakukan:
- Saya memiliki sejumlah buku di sini dan saya telah mencari indeks mereka untuk penggunaan kata-kata "objek dewa" dan "kelas dewa". Saya menemukan bahwa anehnya hampir tidak pernah digunakan dan salinan buku GoF yang saya miliki misalnya, tidak pernah menggunakannya (Setidaknya menurut indeks di depan saya) tetapi saya telah menemukannya di dua buku di bawah ini, tetapi saya ingin lebih Saya bisa menggunakan.
- Saya memeriksa halaman Wikipedia untuk "God Object" dan saat ini tulisan rintisan dengan sedikit tautan referensi jadi meskipun saya pribadi setuju dengan yang dikatakannya, itu tidak memiliki banyak yang bisa saya gunakan di lingkungan di mana pengalaman pribadi tidak dianggap valid. Buku yang dikutip juga dianggap terlalu tua untuk valid oleh orang-orang yang saya perdebatkan dengan poin-poin teknis dengan argumen yang mereka buat adalah bahwa "dulu dianggap buruk tetapi tidak ada yang bisa membuktikannya, dan sekarang perangkat lunak modern mengatakan" tuhan "Objek bagus untuk digunakan". Saya pribadi percaya bahwa pernyataan ini tidak benar, tetapi saya ingin membuktikan kebenaran, apa pun itu.
- Dalam Robert C Martin "Prinsip Agile, Pola, dan Praktek di C #" (ISBN: 0-13-185725-8, hardcover) di mana di halaman 266 itu menyatakan "Semua orang tahu bahwa kelas dewa adalah ide yang buruk. Kami tidak ingin untuk memusatkan semua kecerdasan suatu sistem menjadi satu objek atau fungsi tunggal. Salah satu tujuan OOD adalah mempartisi dan mendistribusikan perilaku ke dalam banyak kelas dan banyak fungsi. " - Dan kemudian mengatakan kadang-kadang lebih baik menggunakan Kelas Tuhan kadang-kadang (Mengutip mikro-controller sebagai contoh).
- Dalam Robert C Martin "Clean Code: A Handbook of Agile Software Craftsmanship" halaman 136 (Dan hanya halaman ini) berbicara tentang "kelas Dewa" dan menyebutnya sebagai contoh utama dari pelanggaran terhadap aturan "kelas harus kecil" dia gunakan untuk mempromosikan Prinsip Tanggung Jawab Tunggal "mulai dari halaman 138.
Masalah yang saya miliki adalah semua referensi dan kutipan saya berasal dari orang yang sama (Robert C. Martin), dan saya berasal dari satu orang / sumber yang sama. Saya diberi tahu bahwa karena ia hanya satu pandangan, keinginan saya untuk tidak menggunakan "Kelas God" tidak valid dan tidak diterima sebagai praktik standar terbaik dalam industri perangkat lunak. Apakah ini benar? Apakah saya melakukan hal yang salah dari sudut pandang teknis dengan mencoba terus mengikuti ajaran Paman Bob?
Pemrograman dan Desain Object Object dan Berorientasi Objek:
Semakin saya memikirkan hal ini, semakin saya pikir ini adalah sesuatu yang Anda pelajari ketika Anda belajar OOP dan tidak pernah secara eksplisit dipanggil; Yang tersirat dalam desain yang baik adalah pemikiran saya (Silakan koreksi saya, tolong, karena saya ingin belajar), masalahnya adalah saya "tahu" ini, tetapi tidak semua orang melakukannya, jadi dalam hal ini tidak dianggap sebagai argumen yang valid karena Saya secara efektif menyebutnya sebagai kebenaran universal ketika pada kenyataannya kebanyakan orang secara statistik tidak mengetahuinya karena secara statistik kebanyakan orang bukan pemrogram.
Kesimpulan:
Saya bingung apa yang harus dicari untuk mendapatkan hasil tambahan terbaik untuk dikutip, karena mereka membuat klaim teknis dan saya ingin tahu kebenarannya dan dapat membuktikannya dengan kutipan seperti insinyur / ilmuwan sungguhan, bahkan jika Saya bias terhadap benda-benda dewa karena pengalaman pribadi saya dengan kode yang menggunakannya. Setiap bantuan atau kutipan akan sangat dihargai.