中心线

一个热爱“自由”的笔记博客

明明只要几千行代码能搞定,为什么偏偏要写几万行?-转载

| 0 comments

写程序是一种创作,不能算是苦力。不能每天在电脑前枯坐十几个小时,否则超时作业,只会让自己的脑袋更糊涂,无法分心进行深入创作。


在创作程序的期间,优秀的程序员花在写程序上花的时间应该不会超过4个小时。主要是因为人的精神集中在4个小时内,超过4个小时,精神容易崩掉,那么其他所做的工作都是无用功。目前,很多人都说程序员工作经常要加班,整天不停歇的写程序,其实主要是因为他们处理问题的经验不足,实践时长短,无法快速而又正确的写出所需程序,所以他们大部分都是累积经验和重复所写程序。

我身边很多优秀的程序员,每天写程序的时间都不会太长,通常是写4个小时的程序,就会做其他的事情或者休息。因为集中精神处理一件事情,是很费脑子的,如果一直处于绷紧神经的状态,那样也不会有很好的效果。反而,停下来,做其他事情,或者休息,放松大脑,就有可能想到很不错的解法。


写一个大型程序,并不是人多好办事


在国内,通常遵循团结就是力量,人多好办事的原则。所以,很多企业都会选择招聘很多人,做一件大事情。比如说制造业,人越多,那么产出也就越大。然而,在软件开发这一块里,写一个大型程序,并不是人多好办事,人越多,就越是难以协调,写出来的程序也往往品质越来越差,效能也越糟糕。

我曾经跟一个项目,公司的程序员达到了8个,分一小块一小块的进行程序写作。当时觉得人多,那么效率应该也会快很多,但是结果发现出现的问题往往出乎意料,因为几个程序员所写的程序都有重叠的部分,结果还要花大部分时间来解决重叠地方的问题。

所以,其实我也并不明白有些公司雇用很多的普通程序员是为了干什么?但是努力摆脱平庸,成为优秀程序员,是每个程序员的目标。

写程序并不是写的越长越好、越厉害


很多人认为程序写的越长越好,其实并不然。大多数情况下,程序越短越好。只有在追求可读性的情况下可适当详细些。比如说,不要为了缩短代码而使用很长的单行表达式或嵌套表达式,但也不要增加冗余的代码。最好的做法,就是删去所有不必要的代码。

程序员在写代码的时候,有很多方式,让自己写的程序更加精准与精炼。可以使用简短的,通用的或基于类型的变量命名,尽量保证变量命名能够清晰地表述变量。如果要使用固定的字符串或数值,应该将其定义为常量,并命名。

ADDS NAME – President Barack Obama is explained a coding learning program by Adrianna Mitchell during an “Hour of Code” event in the Eisenhower Executive Office Building on the White House complex in Washington, Monday, Dec. 8, 2014, attended by middle-school students from Newark, N.J. (AP Photo/Jacquelyn Martin)

还需要注意的是避免语句过长。任何超过80个字符的文本都是难以阅读的。你可能想在同一行放置长条件以便看到完整的if语句,这是不可取的,一行永远不要超过80个字符。当然这些个小问题可以通过工具轻松解决。

程序员的优秀与否,不仅仅是看你写的程序是否够长,而是在于所写的质量过不过硬。

复杂的程序,并不能用来装逼


不懂装懂才是最可悲的。很多程序员总是将简单的问题弄的很复杂,写出别人看不懂的程序。其实,这个逼装的有点low。

优秀的程序员往往都是能够把复杂的问题简单化,写出架构清楚明白的程序,让人看了之后,觉得问题好像很简单。有人就会觉得他们所做的事情也都很好懂,很简单的样子。然而并不知道人家背后是怎样做的,复杂的问题,都被他们用自己的学识与经验都化解了。

所谓高手,并不仅仅是解决复杂的问题,同时他们往往还能用最简单易懂的程序来解释复杂的问题。而把简单的问题弄的很复杂的只是水平不到家的人。

优秀的程序员不是机器,他们往往是以一当十


优秀的程序员,并不是一个复制代码的机器。贪图省事而复制代码,那么,只会让代码更加混乱。就好比,要在混乱的房间中,添加一把新椅子,而不是调整现有椅子的高度。因此,头脑中始终要有抽象的概念,并尽可能地去使用它。

当然,一个优秀的程序员也并不那么容易。他的能力体现在于系统化完成任务需求,并且还能够创作出优质的程序。如明明几千行代码能搞定,偏偏写了几万行代码,这便是程序员能力欠缺的体现。

对于优秀的程序员来说,创作一篇高质量的文章不易,因为它需要反复推敲研究,而高质量的代码也不例外。

编写高质量代码是这样一个流程:

思考、调研、规划、编写、验证、修改。按照这样的思路走,你会逐渐形成良好的编程习惯。

而新手最大的错误就是急于着手写代码,没有足够的规划与研究。虽然说编写小程序是没有很大的问题,但对于大项目而言,就会有很多显性和隐性问题的出现,处理这些问题比写的过程更难。所以为了防止代码写完后,发现重大问题,需要别人帮你擦屁股,所以最好进行深远规划,再开始执行。

原创内容来源|英唐众创

 

除非注明,否则均为中心线原创文章,转载必须以链接形式标明本文链接

本文链接:https://www.z10.xin/archives/321

发表评论

Required fields are marked *.