作者bachelorwhc (单身老王)
看板C_and_CPP
标题Re: [问题] 所谓 framework 到底是何物
时间Tue Jan 5 02:06:52 2016
※ 引述《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
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.34.241.165
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1451930815.A.8B5.html
1F:→ mabinogi805: 就语言角度,是否语言就是一种Framework?因为他需要 01/05 20:55
2F:→ mabinogi805: 有spec可以依循,如同Framework的骨架? 01/05 20:56
我的看法是
Java的JVM与他的Library 其实就对开发的思维 做了一定程度的规划
3F:→ MOONRAKER: 那古往今来所有计算机上的东东都叫framework好了 01/05 22:07
4F:→ MOONRAKER: 计算机上有什麽东东是不用依循spec的? 01/05 22:08
你要这样想 就这样想吧
没人可以阻止
5F:→ MOONRAKER: 庞德爵士:"为了避免混淆起见,从现在开始MI6派驻外国的 01/05 22:10
6F:→ MOONRAKER: 所有情报员通通改名詹姆士庞德,代号全部改成007" 01/05 22:11
7F:→ MOONRAKER: 是这样吗? 01/05 22:11
8F:→ uranusjr: If it says it's a framework, it's a framework. 01/05 22:57
9F:→ uranusjr: 这种东西和 buzzword 一样自己说了就算, 认真定义就输了 01/05 22:58
的确是开发者说了算没错XD
※ 编辑: bachelorwhc (114.34.241.165), 01/06/2016 00:28:32
10F:→ MOONRAKER: BULLSHIT. 01/06 12:30
11F:→ MOONRAKER: 顶多可以说「语言内有一些规范类似framework的特性」 01/06 12:31
12F:→ MOONRAKER: 说「语言就是framework」 那就是BULLSHIT 01/06 12:31
http://goo.gl/1il3YL
是啦是啦
你说的都对
我说的都BULLSHIT
-
我们好像从来没有一个人说过语言就是Framework
JVM跟Library完全被忽略掉了 颗颗
※ 编辑: bachelorwhc (114.34.241.165), 01/06/2016 12:54:45
13F:推 littleshan: 即使加上jvm,java在一般认知中离framework还很远 01/07 01:06
14F:→ littleshan: framework有个共通特性就是它们被设计做特定用途 01/07 01:07
15F:→ littleshan: web framework就是做web应用,gui framework就是做gui 01/07 01:08
16F:推 littleshan: 但是java本身是general purpose,可以做web也能做gui 01/07 01:10
17F:→ littleshan: 因此普遍来说,很少有人会认为java是framework 01/07 01:11
18F:推 soheadsome: 有些framework看起来就像刚DSL 01/08 13:30