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