OO能在中國中小型軟體企業中生存嗎?

BinnyJ發表於2009-05-07
我從事幾年的面向資料庫設計,做過幾個大專案,可以說是經驗豐富,最近終於有機會能使用DDD思想來做一個新的專案,前幾天完成了專案開發,做完這個專案後讓我非常之喜歡OO,DDD.
使用OO進行設計,透過物件來建立系統的模型更符合人的邏輯思維,物件思想非常貼近現實,透過物件來理解系統更有意義;而使用面向資料庫設計,必須透過資料庫表來表達系統,資料庫表雖然也能表達業務模型,不能生動的表達現實的業務意義,主要表達業務資料意義,透過資料庫表理解系統比較困難。
使用OO進行程式設計,程式程式碼更加優雅、更具有生命力,物件導向編寫出來的程式,展現物件之間的協作,很生動。而使用程式導向編寫程式程式碼,枯燥乏味,是順序的程式碼,而且同事伴隨著大量的if else 條件語句去表達業務邏輯。
總之我喜歡OO,喜歡DDD. 然而在前幾天公司內部的專案總結會上,我的觀點受到部門經理和其他專案人員的質疑,部門經理提出以下幾點:
1。面向資料庫設計,一樣能做出很好的設計,好的設計人員設計出來的表結構和你用物件導向設計後的表結構差不多。
2。物件導向,不能提高開發效率,反而增加開發人員和設計人員的要求,增加公司得人力資源成本。
3。物件導向編寫的程式,以後換個人維護,很難維護啊,要求維護人員必須懂物件導向,這無疑提高人員的要求,公司以後招人要求要更高。
4。物件導向編寫的程式,看不見出哪裡比面向資料庫設計好多少啊。

面對這幾個問題,任我如何解釋,說到口水都幹了都沒有用。本來希望能將OO得經驗在公司推廣開,沒想到會是這樣。開會最後,部門經理說現在公司不關心什麼OO, 關心的是低的開發成本,使用OO會給公司帶來一定人員的要求,這會加重公司的成本,使用傳統面向資料庫設計,程式導向程式設計,隨便招個新人,瞭解業務就可以維護程式碼。
聽了這些話後,我心情很低落,難道OO根本不是中國中小型軟體企業的解決目前軟體維護成本高的良藥嗎?如果是這樣,那中國有多少個軟體企業是使用OOD,OOP呢?

相關文章