Re: [問題] 所謂 framework 到底是何物

作者: bachelorwhc (單身老王)   2016-01-05 02:06:52
※ 引述《NoStra ()》之銘言:
: 常常聽到 framework
: 上網查了說明, 但是覺得有點抽象
: 實在不知道語意是什麼?
: 例如常聽到的 Android framework
: 既不是程式語言本身也不是sdk更不是IDE
: 到底是什麼的東西呢
: 謝謝前輩指教
Framework
要比喻的話 就像做特定料理
例如 客人要吃生菜沙拉
你可能會用萵苣 小黃瓜 千島醬 擺好盤
也可能放幾個番茄 一把苜蓿芽 優格醬
但你不會把客家小炒端上來
所以 生菜沙拉 客家小炒 就是兩種不同的Framework
這就是所謂的"框架"
以 Android 來說 你是藉由繼承 Activity、遵守Activity的Lifecycle
還有 Android 系統許多的限制 例如不能在 MainThread 跑 Network
簡而言之 使用Framework 就是遵守契約
你在台灣生活
你依照台灣的法律開公司 什麼公司都可以 怎麼運作都可以 只要合法就好
你依照台灣的法律結婚 什麼老婆都可以 怎麼相處都可以 只要合法就好
那這樣講來
當紅的 Unity Engine 算不算 Framework?
我覺得不算
你會說 Unity 內 藉由繼承 Unity 的類別並 Override 可以算是 Framework 呀
但事實上 你不能擴充 Unity "Engine" 本身的運作
Unity 提供的是腳本上的自由 而非引擎、程式根本上的自由
至於Cocos2d 官方就直接告訴你:我是一個Framework
-
話說 我覺得Java本身就是一種Framework XD
作者: mabinogi805 (焚離)   2016-01-05 20:55:00
就語言角度,是否語言就是一種Framework?因為他需要有spec可以依循,如同Framework的骨架?
作者: MOONRAKER (㊣牛鶴鰻毛人)   2016-01-05 22:07:00
那古往今來所有計算機上的東東都叫framework好了計算機上有什麼東東是不用依循spec的?龐德爵士:"為了避免混淆起見,從現在開始MI6派駐外國的所有情報員通通改名詹姆士龐德,代號全部改成007"是這樣嗎?
作者: uranusjr (←這人是超級笨蛋)   2016-01-05 22:57:00
If it says it's a framework, it's a framework.這種東西和 buzzword 一樣自己說了就算, 認真定義就輸了
作者: MOONRAKER (㊣牛鶴鰻毛人)   2016-01-06 12:30:00
BULLSHIT.頂多可以說「語言內有一些規範類似framework的特性」說「語言就是framework」 那就是BULLSHIT
作者: littleshan (我要加入劍道社!)   2016-01-07 01:06:00
即使加上jvm,java在一般認知中離framework還很遠framework有個共通特性就是它們被設計做特定用途web framework就是做web應用,gui framework就是做gui但是java本身是general purpose,可以做web也能做gui因此普遍來說,很少有人會認為java是framework
作者: soheadsome (師大狗鼻哥)   2016-01-08 13:30:00
有些framework看起來就像剛DSL

Links booklink

Contact Us: admin [ a t ] ucptt.com