框架: 用与不用

在最近的一个项目中, 与同事在是否使用框架上产生了一些分歧


在一个游戏项目中, 后台的同事主张使用他们非常熟悉的ZendFrameWork框架, 但我对此持保留态度;

由于对ZendFrameWork不甚了解, 我没有进行任何的建议, 直到后面我在做服务器性能测试时, 发现ZendFrameWork简直就是个性能黑洞,

尤其它的路由效率简直可以让身为CPPer的我抓狂; 


于是我拜读了这个高达50MB的超大类库, 不可否认, ZendFrameWork的野心很大, 基本上网站能用到功能库中都提供;

恩, 很好, 啊哈, 一部百科全书式的框架; 不过在研究过程中发现, 虽然在外边提供了灵活的定制机制, 可惜里面的代码大部分是过度臃肿,

内部相互耦合, 我想我明白它为什么会这么慢了, 做为一个脚本语言框架, 和ACE比体积, 我已经无力吐槽了;


这件事引起了我的思考, 框架, 用还是不用;


使用框架的优点:

1) 框架为程序员提供各种安全, 经过检验, 便捷的机制;

2) 框架本身是一个半成品, 在其支持的领域, 可以在上面扩展定制, 快捷的开发出最终的产品

3) 框架规范和限制程序员依照它的标准进行开发工作, 有利于项目代码的风格的统一


使用框架的缺陷:

1) 框架都是基于某种业务领域进行架构和设计的, 在其他领域中可能表现不佳, 或无法满足业务要求;

很多时候会束缚住程序员的手脚, 甚至逼迫程序员使用一些Hack手段来解决问题; 好吧, 兔子逼急了还咬人呢


2) 框架提供的机制, 对于不熟悉它内部机制的开发者, 就好象女人的年龄一样是个秘密;


3) 框架限定的不仅仅是程序员的规范和习惯, 还有可能限制住程序员的思维


4) 部分框架可能会污染你的代码空间, 尤其是你使用了一些它特有的机制, 当你发现不对劲想回头时

发现已经没可能脱离它了, 它绑架了你的项目; 虽然这个有前期调研时技术选型时的失误, 

但不可否认修正这个失误代价很高


5) 部分框架是买一送一的, 你得到你想要的同时, 你不想要的部分同样也附赠给你了, 而且还无法拒绝


结论:

并不是不赞成使用框架, 但是使用框架时要确定其设计时对应业务领域;
PS: 作为一个CPPer, 总是会有重新造轮子的冲动, 我会努力克制它的;


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值