學Java,C++的時候沒有聽說過要Framework,為什麼C#就需要.NET Framework呢?如果自學C#要學習關於.NET的內容嗎?如果要,學習成本是不是比掌握其他語言要大一些?


C++有的是framework,只是沒有成為標準。而Java的framework只是不叫framework而已。

寫軟體 做系統 最常用而且貼切的隱喻 是建築

所以大部分軟體工程術語都或多或少的和建築術語相關

啥是框架/Framework

1.

構架(工程),結構,框架;機構,組織2.構架;體制3.體系,體制;管理模式4.骨架5.支架

6.

組織;基礎;格局;範圍;7.機架8.〔工〕控制網9.網格10.概念性方案

設計階段

整體圖 是架構 Architect

沒有整體圖,肉皮毛的小設計元素沒有骨可以附加

你做不出可以實施的藍圖

實施階段

框架,就是蓋房子先埋下的地基和立起來的幾個承重牆、鋼筋。

沒有他 你做不出不塌的樓。

一個時代某個地區幾乎所有的房子都是某種地基、某種承重牆

ok 這就形成了可復用的經驗和模塊

Lib 是給你各種瓷磚和壁紙、門窗、水電

承重牆和地基 不是Lib


你要成為一個人,就必須經歷成長、上學、結婚、生子、為子女操心,享福、入土,整個一個過程,你爸爸或者社會就會給你規劃這麼一個藍圖,這時候你爸爸或者說這個社會就會提供這麼一個框架(framework)給你。把人換成應用,應用要界面、要mvc、要安全、要事務處理、要aop等等這些東西,framework就會給你規劃好,你不用自己做,調用就行了。

Framework 就是它有一套運作的模式 框架中間給你一些空間可以定義你的東西 但還是在框架允許範圍內的 基本你的code是被framework的code調用的

相對library就是給你一些便利的方法 utilities 讓你去調用
腳手架
.NET沒接觸過,不了解,拋開語言層面,樓主可以這麼理解:函數function是實現某一功能的一段代碼庫library是函數的集合

而框架framework則是你自己寫庫給framework來調用,通常framework會實現入口和流程式控制制、屏蔽底層實現、出錯管理等,你只需要實現framework的少數介面就能完成複雜的工作


框架。框架粗的來說就是幫你提前寫好可以拿來用的東西。
推薦閱讀:
相关文章