2018年(273)
分类: Html/Css
2018-08-02 14:14:45
对于一个程序员来说,是应该有价值观的,然而最朴素的基本价值观,就是要写好的代码。然后,要做到这一点不容易,
对些,我针对这些价值观有自己的一些看法:
(当然,在网上有关于价值观的内容一大片,各有视角,这里仅仅说说我的看法)
1,good software != quality code
2,软件开本 = 开发成本 + 维护成本
注意,尤其是维护成本,被很多程序员所忽视,认为我只在几天开发完了这个代码,这个软件的成本就并不高,这个观念万万要不得。 久而久之,这个观点慢慢地被产品,项目经理所学习到,也自然而然的认为,只在几天内开发完的功能,所投入的成本并不高。然而残酷的事实是,投入维护它的成本数倍于甚至数十倍于开发成本,扔下的往往是一个烂摊子,后续接手的开发人员也会苦不堪言。
有时候,我们程序员总感觉自己被产品催着,有忙不完的事,而背后的原因往往是程序员自己本身,因为在与产品沟通过程,总是会释放出这个很容易,那个也很简单的信号,而给产品造成错觉。
3,代码就是债务
同样的功能,写的代码越多,相应的测试、维护、升级等等成本也越高。 尤其是过度设计的危害,太过于高瞻远瞩,而忽略现实情况,结果可能恰得其反。
还有一个是不得不说的:关于设计和代码。我们期望的是设计与代码无限接近,但是,现实中,设计与代码往往是脱离的,甚至有时候看到设计,对代码的理解反而是一种误导。不仅无助于还原软件的真实面目,反而让软件蒙上神秘的色彩。
程序员之间沟通,最佳的语言就是代码,代码说了什么,就是软件实际运行的真实表达。
有一个观点我需要表达的是:代码写出来,除了要运行之外,就是为了给别人看的。而后者,有很多程序员会忽视,甚至都没有意识。 如果有程序员认为,写出来的代码,只要能运行,有高效率,有什么可动态扩展等等就可以了,至于别人能不能看得懂,那可就不关我的事了。事实上,这个观点很有害。如果只是说代码能执行等等这些观点来看的话,那么,什么格式化,变量命名规范等等都可以不要了,甚至换行都不是必须的。