极客视点
极客时间编辑部
极客时间编辑部
113240 人已学习
免费领取
课程目录
已完结/共 3766 讲
2020年09月 (90讲)
时长 05:33
2020年08月 (93讲)
2020年07月 (93讲)
时长 05:51
2020年06月 (90讲)
2020年05月 (93讲)
2020年04月 (90讲)
2020年03月 (92讲)
时长 04:14
2020年02月 (87讲)
2020年01月 (91讲)
时长 00:00
2019年12月 (93讲)
2019年11月 (89讲)
2019年10月 (92讲)
2019年09月 (90讲)
时长 00:00
2019年08月 (91讲)
2019年07月 (92讲)
时长 03:45
2019年06月 (90讲)
2019年05月 (99讲)
2019年04月 (114讲)
2019年03月 (122讲)
2019年02月 (102讲)
2019年01月 (104讲)
2018年12月 (98讲)
2018年11月 (105讲)
时长 01:23
2018年10月 (123讲)
时长 02:06
2018年09月 (119讲)
2018年08月 (123讲)
2018年07月 (124讲)
2018年06月 (119讲)
时长 02:11
2018年05月 (124讲)
时长 03:16
2018年04月 (120讲)
2018年03月 (124讲)
2018年02月 (112讲)
2018年01月 (124讲)
时长 02:30
时长 02:34
2017年12月 (124讲)
时长 03:09
2017年11月 (120讲)
2017年10月 (86讲)
时长 03:18
时长 03:31
时长 04:25
极客视点
15
15
1.0x
00:00/02:38
登录|注册

我们究竟应不应该使用框架?

讲述:杜力大小:2.40M时长:02:38
近日,AxonIQ 商业主管及 Axon 框架布道师弗兰斯·范·布尔(Frans van Buul)在其博客中发表了一篇关于框架和类库孰优孰劣的文章,引起了人们的热议。虽然很多人提倡类库反对框架,但弗兰斯仍然提出了一些倾向于框架的见解。
弗兰斯认为,类库是由类和函数组成的一组代码,这些代码可供应用程序使用,但本身又不是应用程序的一部分,应用程序通过函数调用或方法调用与类库交互。而框架则是一种特殊的类库,应用程序实现了框架提供的接口,或者使用框架提供的注解。代码在两者中的调用方向完全相反,框架调用应用程序代码,而类库则被应用程序代码调用。
他认为,框架之所以优越,是因为 CQRS、DDD 以及事件溯源。首先,使用框架可以把程序员从底层开发中解放出来,只需要关注业务逻辑。很多时候,人们没有使用类库而是选择构建自己的框架,这只会让事情变得更复杂,也会让程序员花费很多额外的时间。并且,这样不但会加大风险,还会增加成本。
皮特·库门斯(Peter Kummins)则认为,框架是系统开发中最大的反模式,框架难于上手,也大大增加了项目的复杂度和依赖性。软件开发应该保持简单,使用稳定的基础工具,尽量采用核心语言方案,最大程度地避免使用框架或类库。
托马斯·佩特里切克(Tomas Petricek)也同意弗兰斯对框架的定义,但他认为使用框架最大的问题是难以共容。当使用两种框架时,几乎很难把一个框架应用到另一个框架中,但是类库就可以很容易的避免这个问题。他同时也认为框架很难深入理解并且会影响你的编码方式。
托马斯倾向于使用功能类库的设计原则,并指出,避免使用框架和回调的一种方法,是使用异步工作流和基于事件驱动的编程机制。这种机制并不要提供抽象函数或虚函数,而是在需要完成某些操作时触发事件。
最后,弗兰斯强调,类库比框架更灵活,但这也要取决于所使用的框架。如果是不能扩展的框架,那自然也就没什么灵活性可言,但如果是定义了开放性接口的开源框架,其灵活性则一点也不会比类库差。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
免费领取
登录 后留言

全部留言(1)

  • 最新
  • 精选
  • lorancechen
    我选择库
收起评论
显示
设置
留言
1
收藏
30
沉浸
阅读
分享
手机端
快捷键
回顶部