练球 VS 实战

      study and study,practice and practice,and in action?
 
      在乒乓球室,我挥汗如雨,在我对面的是一个高手,正反手的强力暴冲弧圈让我难以招架... 既
然是一项竞技运动,那么让我们打一局吧,领教一下高手真正的球技. 我深吸一口气,左手抛球,右手腕瞬间发力,下旋球直奔对方反手位. 我习惯性的侧身,等待球落在的中路. 然而,球下网了,在网前强烈旋转.老大,下旋球可以用暴冲弧圈接吗? 再发一个下旋,是高手就打一个提拉看看. 我倒 -_-|||, 又是个暴冲,老大,donic加729发的下旋哪有那么烂!难道对方在逗我开心?也太小看我了!重推反手再得两分... 第一局11:2,我赢. 高手应该写成"高手"了.
   
       我曾经在球台上遇到过很多"高手",但都败在我拍下.他们对于同一落点的球命中率及杀伤力
极高,没有丝毫实战经验,不会变化,还有,不知道怎样把练习应用倒实战.

       某日,我打开笔记本,看着老大新发的需求以及一大堆乱七八糟的代码,天哪,谁来救救我,耦合度这么高的代码怎么可能扩展??!!等等,我好像看过<<设计模式>>啊,于是,一大堆注明adapter,briage的东西和UML图飞到我脑子里.拿起笔,哦,从高层考虑,弄清目前需要解决的问题,寻找共同点,提取变化,优先使用组合... 这就是需求的真面目吗?它居然如此简单! 此刻,乒乓球室的一幕又浮现在我眼前.我原来也是个不会实战的!!!
   
       study and study, 我在学习,每天都在; practice and practice, 学习就要练习; in
action, 无语.

       没有in action,我可以说出很多理由.需求突然下来一大堆, 还规定这个月25号就要打个版本, 今天都20号了, 设计模式? 拜托, 赶紧实现吧, 3000行的类没关系, 我保证将来有时间会重构它. 你说让我写代码是考虑一下效率? 多想想汇编语言? 老大, 你从中古时代来的不成? IT行业可不时兴考古. 学了JUnit就要写单元测试, 哈哈, 连功能都得加班完成还写什么测试, 国际玩笑啊老兄. 要为开发人员营造一个自由舒适的工作环境, 天哪, 这都是骗人的把戏, 你不会当真吧 ?他们不过是螺丝钉而已.

      此后的某天凌晨, 3000行的又臭长的类向我狞笑; 依赖机器性能的查询在数十万条数据前显得软弱无力; CVS上充斥了大量没有经过代码级测试的程序, 在一个重要的演示时突然弹出了不友好的带有大叉的页面, 后台的异常竟然是数组越界;  项目后期, 两个主力程序员终于忍受不了公司的制度, 一声不响的消失了, 项目经理心急如焚, 三天后终于联系到了他们, 一个在阿尔卑斯山滑雪,另一个在夏威夷渡假.


       那么来看一下in action吧. 用设计模式思考可以提高程序的扩展性, 降低系统的耦合度, 我不相信用户嘴里的"确定"是真的,他们通常说话不算数, 为了下次不再加班, 请相信设计模式. 一个programmer的素质在于细节, 如果一个优秀的算法提高了软件的速度, 那么其优秀的代码结构将会使速度进一步提高, 也许这一点没有说服力, 但是请相信,一个极小的细节可以使速度的天平倾斜. 以下使javascript的一段代码:
  Array array[1000]
  ...
  for(i = 0; i < array.length; i++)
    doSomething;

       每一次循环都计算一次length, 在寸时寸金的web页面中, 这无疑是低效的.也许这个例子与汇编无关, 再来看一个. 如果在类中初始化一些变量, 你大概会把这些变量列在一起, 因为几乎所有的程序语言书籍都是这么建议的, 这仅仅是为了可读性吗? 把变量声明在一起, CPU会为这些变量分配相邻的内存空间! 


       说真的, 我最近在试着先写JUnit测试用例, 收获只是在重构时信心十足, 但是我相信在今后的工作中会有更多的收获. 既然很多大师都肯定了它, 我也没有必要拒绝, 不是吗?


       关于零件问题, 我可不是领导, 作不了主, 但是看看在家具警察的规定下怨气冲天的开发人员吧, 我就是其中的一个. 嘈杂的环境, 极不舒服椅子, 不许在办公桌上摆放书籍, 不许放照片,不许... 迟到5分钟扣半天工资, 那么加班呢? 我发誓我从来没有见过加班费长什么样子! 我相信, 公司的制度是和人员流动率挂钩的, 工作环境也和工作效率紧密联系在一起. 新来的领导不会在乎长期的利益, 因为他根本不会在公司待长久, 因为5年后的利益对他们是没有意义的. 不要小看螺丝的作用, 我敢打赌, 即使你买双份的保险你也不愿意做螺丝钉松动的飞机.
 

      你说你能随时把学过的东西应用到实战,那么恭喜你,请告诉我一个好方法,我现在才刚刚开窍.
      现在的我还不能说出怎样才能有效的in action, 这个问题将在以后的工作中得到答案. OK, 实战吧, 这才是练球的目的. 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值