白水简介:
|
欢迎转载,转载请注明来源!
有条件的,请在文末点一个“在看”!
在职场中,不管你是什么干什么的,都要有敢于做出改变的勇气、以及承担责任的底气!
今天的这个故事,是发生在我们的主角——无忌身上的。
重构大学招生投档软件
无忌还在读研究生的时候,曾经到学校的校办公司打工,参与某直辖市教育考试院的大学招生投档软件的开发与维护工作。
这个投档软件其实已经用了好多年了,但是每年的高考招生政策都会有一些变化,这个软件里面的代码也会跟着调整,或者还会增加一些新的功能。
投档软件里面也细分了好几个模块,但是每个模块里面都有一些类似的操作或流程。
当无忌接手来维护这个软件的时候,发现各个模块里面都有部分代码长得很类似,明显是以前的开发人员通过拷贝粘贴的偷懒方式来做的。
熟悉软件开发的朋友都知道,代码的拷贝粘贴一开始看起来似乎很省事,可以很快地把软件开发出来。
但是它有一个致命的问题,那就是如果需要改动,你就得每个地方都要去改一遍。
如果一不小心某个地方忘了改,那么就只能恭喜你了,等着老板给你打电话,深夜来加班吧……
意识到这种拷贝粘贴代码的危害之后,无忌开始仔细地分析各个模块的代码,然后把类似的代码给提炼出来,放到一个集中的地方,为各个调用模块提供了统一的接口。
这样,所有需要用这块代码的地方,都直接调用这个统一的接口;有什么需要改动的地方,就统一在这一个地方去改。
无忌重构的代码,在经过其他更资深的程序员审核之后,就正式上线了。
在那个炎热的夏天,高考招生投档正式开始之后,无忌天天坐在酒店的房间里打游戏。
因为软件实在是重构得太好了,在整个招生过程中没有出现过问题……
重构预算控制系统
无忌博士毕业之后,加入了现在的公司。
他参与的第一个软件开发项目,就是对原来法国团队开发的产品,进行功能增强。
这个产品的名字叫:预算控制系统。
它是专门针对公共事业单位、各国军方、基金管理等机构提供的软件。
无忌接手的是:对预算层级结构图进行创建、维护、显示、及删除等操作的几个小模块。
无忌将这些模块的代码通读一遍之后,立刻闻到了熟悉的味道!
每个模块的代码都出现拷贝粘贴的痕迹,需要改进的时候,又得到处去动。
于是,无忌又撸起袖子加油干,把用在各国军方里面的重要模块给重构了!
当然,重构的前提是,需要先吃透原来的逻辑,而不是想当然地随意乱重构。
当然,敢于去重构那种写得比较烂的代码,也是需要一定的勇气与担当的!
重构成了一种习惯
无忌除了在公司里面写代码之外,平时也会利用空闲时间,为社区或者自己写一些好玩的小软件。
在编写代码的时候,无忌已经养成了一种习惯:那就是在写代码的过程中,不断地重构。
按照《代码整洁之道 - Clean Code》的指导原则,一般一个小的功能,其代码不应超过一百行。
如果超过了,就需要对这段代码进行重构,从而提高代码的可读性和可维护性。
无忌用 Python 写的下载 TS 格式视频的代码
无忌用 GoJS 写的族谱树状展示软件
无忌用 SAP ABAP 写的族谱数据录入软件
如果您坚持全部都给,我也不会介意! |