懂得变通,弃旧迎新

北大青鸟大学城校区logo 北大青鸟大学城校区
招生简章校园环境师资力量就业明星招生问答软件工程师北京大学学历学员项目联系我们 报名通道

免费在线咨询通道>>

免费在线报名通道>>

北大青鸟报名电话
当前位置:北大青鸟 > 北大青鸟 > 北大青鸟学员 > 北大青鸟学员感悟 >

懂得变通,弃旧迎新

标签:   分类:北大青鸟学员感悟

“那就是你一贯的工作方法,并且是有原因的。这个方法也很好地为你所用。开始你就掌握了这个方法,很明显它是最好的方法。真的,从那以后就不要再改变了。”

敏捷的根本之一就是拥抱变化。既然变化是永恒的,你有可能一直使用相同的技术和工具吗?

不,不可能。我们一直在本章说要学习新技术和新方法。但是记住,你也需要学会如何丢弃。

随着科技进步,曾经非常有用的东西往往会靠边站。它们不再有用了,它们还会降低你的效率。当Andy第一次编程的时候,内存占用是一个大问题。你通常无法在主存储器(大约48KB)中一次装载整个程序,所以必须把程序切分成块。

当一个程序块交换进去的时候,其他一些程序块必须出来,并且你无法在一个块中调用另一个块中的函数。正是这种实际约束,极大地影响了你的设计和编程技术。

想想在过去,面对处理器之外的循环操作,你必须花费很太精力去手工调整汇编语言的编译输出。可以想象,如果是使用Javascript代码,你还需要这么干吗?

对于大多数的商业应用,技术已经有了巨大的变化,不再像过去那样,处处考虑内存占用、手动的重复占位及手工调整汇编语言。但我们仍然看到很多开发者从未丢弃这些旧习惯。

Andy经看到过这样一段c语言代码:一个大的for循环,循环里面的代码一共输出了60页。那个作者“不相信”编译器的优化,所以决定自己手工实现循环体展开和其他一些技巧。我们只能祝愿维护那一大堆代码的人好运。在过去.这段代码也许可以勉强接受。但是,现在绝对不可以了。电脑和cPu曾经非常昂贵,而现在它们就是日用品。现在,开发者的时间才足紧缺和昂贵的资源。

这样的转变在缓慢地进行着,但是人们也真正认清了这个事实。我们看到,需要耗费10人年开发的J2EE项目已经从辉煌走向下坡路。使用PHP,一个月的时间就可以完成,并能交付大部分的功能。像PHP这样的话言和Ruby onRails的框架越来越受到关注,这表明了开发者已经意识到旧的技术再也行不通了。

但丢弃已经会的东西并不容易。很多团队在犹豫,是因为管理者拒绝用500美元购买台构建机器(build machine).却宁愿花费好几万美元的人工费。让程序员花时间找出问题。而实际上,买一台构建机器就可以解决这些问题。如果购买机器需要花费500 000美元,那样做还情有可原,但现在早已时过境迁了。在学习门新技术的时候,多问问自己,是否

把太多旧的态度和方法用在了新技术上。学习面向对象编程和学习面向过程编程是截然不同的。很容易会发现有人用C语言的方式编写Java代码,用vB的方式编写c#的代码(或者用Fortran任何事情)。这样,你辛苦地转向一门新的语言.却失去了期望获得的益处。

打破旧习惯很难,更难的是自己还没有意识到这个问题。丢弃的第一步,就是要意识到你还在使用过时的方法,这也是最难的部分。另一个难点就是要做到真正地丢弃旧习惯。思维定式是经过多年摸爬滚打才构建成型的.己经根深蒂固,没有人可以很容易就丢弃它们。

这也不是说你真地要完全丢弃它们。前面那个内存重复占位的例子,只是在稍大缓存中用手工维护一组工件的特殊案例。尽管实现方式不同了,但以前的技术还在你的大脑中。你不可能撬开大脑,把这一段记忆神经剪掉。其实,根据具体情况还可以运用旧知识。如果环境合适,可以举一反三地灵活应用,但一定要保证不是习惯性地落入旧习惯。

应该力求尽可能完全转入新的开发环境。例如.学习一门新的编程语言时。应使用推荐的集成开发环境,而不是你过去开发时用的工具插件。用这个工具编写个和过去完全不同类型的项目。转换的时候,完全不要使用过去的语言开发工具。只有更少被旧习惯牵绊,才更容易养成新习惯。学习新的东西.丢弃旧的东西。在学习一门新技术的时候,要丢弃会阻止你前进的旧习惯。毕竟,汽车要比马车车厢强得多。

切身感受

新技术会让人感到有一点恐惧。你确实需要学习很多东西。已有的技能和习惯为你打下了很好的基础,但不能依赖它们。

平衡的艺术

沉舟侧畔千帆过,病树前头万木春。要果断丢弃旧习惯,一味遵循过时的旧习惯会危害你的职业生涯。

口不是完全忘记旧的习惯,而是只在使用适当的技术时才使用它。

口对于所使用的语言,要总结熟悉的语言特性,并且比较这个特性在新语言或 新版本中有什么不同。

若有疑问请拨打北大青鸟咨询热线:010-80146691或点击免费在线咨询!
  • xml地图 网站地图 招生简章 合作企业 学员项目 联系我们
  • 关闭窗口