程序员的能力有两个方面,一是专业技能,一是行业知识。
代码写得好,跑得快,这是专业技能;写出来的代码要解决什么问题,如何解决,则是行业知识。就好像销售一样,如何沟通,把握客户心理,是专业技能;了解所卖产品,卖车的懂车,卖电脑的懂电脑,这是他们的行业知识。要想业绩好,二者缺一不可。
但作为程序员,往往关注前者,轻视后者。
专业技能带来机会和抗风险能力,可以选择公司,适应环境,不会因为某个行业的没落而陷于困境;而行业知识是门槛和护城河,可以帮你在竞争中保有优势。做互联网的,要懂人心;做企业的,要懂业务逻辑;做电信的,要懂telco;做ERP的,要知道进销存...
为什么有时候一群优秀的程序员,却做不出优秀的产品?为什么有的网页游戏,却比3A大作赚钱?这就是对行业的理解,对受众的把握。很多时候,程序员觉得这些和自己无关,不是知识。
但是,当在设计系统时,在权衡取舍时,我们做出的决定,往往是基于对需求的预测,而预测的准确与否,取决于对于行业的理解。很多想当然设计,和让后继者诟病不已的缺陷,多是源自行业知识的不足。
回到题目,一个跑了七八年的项目,自有其价值,不能简单的称之为垃圾。有更多的软件,还没有用户就消失了。用现在的眼光,看十年前的技术,自然有很多问题,但有人用,就说明有需求。
好的做法不是重构,而是理解需求。
这类老的代码,可能一半是补丁,一半是业务逻辑。不要在意补丁,多读业务,读懂了,就成了你的行业知识。别人不懂,你懂,你就是domain专家,下次竞标这个行业的项目,就需要你的贡献。自然而然,就可以参与立项和设计,进而经历整个项目周期,完成接盘侠的蜕变。
就技术而言,开创项目时能学到的,也比中途接手要多的多。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有