面向对象并不是必要的
生活随笔
收集整理的這篇文章主要介紹了
面向对象并不是必要的
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
程序開發并非一定要面向對象不可,面向對象是一種方式,但是不是唯一的方式,這種方式很多時候有用,不代表任何時候都是最高效的,更不是唯一的真理。 面向對象將相關的狀態屬性和操作方法放在一個實體中,起到了歸類和分而治之的作用。 對于一個系統來說,這個是最根本的方法。但是面向對象的分而治之并不完美。面向過程也有分而治之的思想和能力,這就是模塊開發。對象是復雜的,他有生命過程,有復制克隆的需要,有保持狀態的需要,他是一個復雜的實體。而很多時候我們不需要這么多的東西,而只要一個函數,一個過程,一個狀態。 第二個,面向對象的類型系統非常復雜。 第三個,面向對象的封裝不徹底,默認的實踐是接口和實現同為一個對象實體,如果要分離處界面和實體就顯得難以編程。 程序開發的技巧是:簡單明了,分而治之,抽象化編程。 面向對象在這三個方面都有違反的表現,比如如果建立多個對象,對象間的相互關系變得非常復雜。程序員需要掌握非常多得實體概念。 分而治之就是面向對象對界面的分離和封裝上沒有做到很嚴格。沒有一個系統的解決方案。父類對子類的影響,對象直接都是直接操作。 抽象化并不是面向對象的專利,比如unix系統的文件就是典型的非面向對象的抽象。抽象是算法的范疇,一個出色的算法,必然高度抽象他操作的對象,讓算法適應更多的場合,而對象的類型系統反而會限制了抽象。
總結
以上是生活随笔為你收集整理的面向对象并不是必要的的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 又一个很全的R资讯网站
- 下一篇: 《活法》中一个故事--令托尔斯泰也折服的