軟體思想的進化和相通
我知道的軟體思想至今發展的主要過程:程式導向 -》OO-》DDD-》DCI
始終是一個進化的過程,OO解決了程式導向的封裝,但他依然是基於靜態的分析;DDD提供了面向應用業務的分析指導,但是他沒有直接提供解決物件變化的指導;DCI提供了系統模型分析的指導,他沒有解決。。。。。必然有,但我還沒有看到。。。。。
思想是漸進式的,對於思想的理解也是漸進的。
OO開始提供了思想基礎但是缺少實踐方式,在以後的時間裡他始終影響著軟體的思考方式。DCI的上下文中角色的轉變其實也源於此。在傳統上我們分析了角色的職能,但是往往忽視了“本體”與“角色”間的區別,從而得到了一個本體中需要實現多個角色的分析結果也是困惑。
DCI中說明了在不同的上下文中本體的角色是可以被替換的,這樣本體和角色又再次成為了分隔的獨立,互不依賴。如果角色可以在執行時刻被賦予本體,那麼AOP、SOA與DCI也建立了關聯,同時IOC也成為了將本體組裝角色的實踐。在各個思想和實踐方式中對的內容將共同的被保留和進化,並最終必然的找到契合點。
我認為軟體可以理解位自然世界的對映,所有需要軟體解決的問題和解決方法必然存在於自然世界中,OO表達了這樣的思想。OO是基礎和思想的源泉,同時在今後很久(或者永久,除非誕生了全新的軟體實踐方式)都將是我們思想基礎。後來者在研究和學習各種名詞和思想之前應該認真深入的思考OO,如果在這個步驟上出現了失誤和偏差在後面的過程中彌補是需要付出很多代價的。
時間很短,簡單寫了。
始終是一個進化的過程,OO解決了程式導向的封裝,但他依然是基於靜態的分析;DDD提供了面向應用業務的分析指導,但是他沒有直接提供解決物件變化的指導;DCI提供了系統模型分析的指導,他沒有解決。。。。。必然有,但我還沒有看到。。。。。
思想是漸進式的,對於思想的理解也是漸進的。
OO開始提供了思想基礎但是缺少實踐方式,在以後的時間裡他始終影響著軟體的思考方式。DCI的上下文中角色的轉變其實也源於此。在傳統上我們分析了角色的職能,但是往往忽視了“本體”與“角色”間的區別,從而得到了一個本體中需要實現多個角色的分析結果也是困惑。
DCI中說明了在不同的上下文中本體的角色是可以被替換的,這樣本體和角色又再次成為了分隔的獨立,互不依賴。如果角色可以在執行時刻被賦予本體,那麼AOP、SOA與DCI也建立了關聯,同時IOC也成為了將本體組裝角色的實踐。在各個思想和實踐方式中對的內容將共同的被保留和進化,並最終必然的找到契合點。
我認為軟體可以理解位自然世界的對映,所有需要軟體解決的問題和解決方法必然存在於自然世界中,OO表達了這樣的思想。OO是基礎和思想的源泉,同時在今後很久(或者永久,除非誕生了全新的軟體實踐方式)都將是我們思想基礎。後來者在研究和學習各種名詞和思想之前應該認真深入的思考OO,如果在這個步驟上出現了失誤和偏差在後面的過程中彌補是需要付出很多代價的。
時間很短,簡單寫了。
相關文章
- 軟體架構的核心思想架構
- Django框架之中介軟體思想Django框架
- eletron主程序和視窗的互相通訊
- 訊息中介軟體—Kafka 的設計思想Kafka
- 我做軟體開發的核心思想考量
- 《軟體工程思想》讀書摘抄 Part 1軟體工程
- 一,現代軟體開發架構思想架構
- 讀《大道至簡:軟體工程實踐者的思想》有感軟體工程
- 進出口軟體(進出口貿易管理軟體)
- 軟體自動化測試工具的歷史演進
- 盤點服裝進銷存軟體和生產進銷存軟體排行榜
- koa,redux等主流框架的中介軟體設計思想原理分析Redux框架
- 《大道至簡——軟體工程實踐者的思想》讀後感軟體工程
- Redux 進階 -- 編寫和使用中介軟體Redux
- 正確進行程式碼優化,一點思想論行程優化
- vue元件化思想Vue元件化
- 雲原生時代,中介軟體應該如何 “進化”?
- 從Data+這步棋讀懂英方軟體的再進化
- Lisp 整體思想Lisp
- 軟體危機和軟體缺陷的特點和區別
- uni-app實現web-view和App之間的互相通訊APPWebView
- 明智軟體開發——Ivar Jacobson博士上海英雄會演講的主要思想
- 軟體系統的架構演進以及叢集和分散式架構分散式
- 研發進度的視覺化專案管理軟體哪個好?視覺化專案管理
- 軟體測試的持存化
- eNSP華為路由器OSPF配置----OSPF和RIP互相通訊路由器
- JavaScript的進化和未來JavaScript
- 可以學習的進銷存軟體
- 探究平臺化設計的核心思想和Lattice的設計原則
- [轉貼]:軟體過程改進:經驗和教訓
- 軟體工程的迷途和沉思軟體工程
- CAP原理和BASE思想
- 勒索軟體產業化的感想產業
- 網站靜態化思想網站
- 軟體自動化測試的作用有哪些?為什麼要選擇專業軟體測試公司進行?
- 軟體容器化doccker
- 使用Halcon軟體和圓形標定板進行相機標定的步驟和教程
- “軟體定義汽車”下的軟體虛擬化技術
- 【ERP軟體】服裝ERP與商品化軟體的區別