当前位置:首页 > 充电吧 > 充电吧
[导读]下面是开发大牛总结的高效编程的14点经验。不管你是编程菜鸟还是资深程序员,或许都能从中得到启发。

下面是开发大牛总结的高效编程的14点经验。不管你是编程菜鸟还是资深程序员,或许都能从中得到启发。

计划

所谓plan,其实就是对于编程中的“设计”阶段,当然,这里的plan并不像设计那样重量级。它要求我们程序员在正式编程前最少要考虑一下下面的问题:

你这个程序,工具或是项目的目的,究竟是用来干什么的。你只有知道做什么,要达到什么样的目的,你才能做得好,做得对。

需要有什么样的功能。需要你给出来个功能表。这样可以保证我们不会遗漏了什么。

准备好一些技术难题的前期调查和解决方案。不要等到开始编程的时候才去想。

下面是你因为有“plan”而得到的好处:

你能够清楚地明白你要做的东西长什么样?

你能清楚知道你要开发的东西要干些什么事?

你能够在开发工程中解决你所有可能发生的难题。

使用伪代码

伪代码是一个非常不错的方式,让你可以看到你要写得程序长什么样?

一些人并不喜欢伪代码,因为他们并不想把同样的代码写两遍,一遍是伪代码,一遍是真代码。其实,这是可以理解的,因为两个copy的东西是比较不好维护的。但是我想,这是可以权衡的,如果的算法很简单,那么就不需要伪代码了,如果你的算法比较复杂,比较绕,那么,有一个伪代码提纲挈领将会是一件非常不错的事情,因为他有利于让别人从一个简单的文档来了解一个复杂的算法或系统。这就好像一个电线的布线图一样,你可以很容易地通过一个简单的文档从复杂的实现中找到头绪。

让你身边的人也高效起来

这个是我直到今天才感悟到的。我一直努力让自己更加高效,不让时间虚度。然而当我们面临越来越复杂,越来越繁琐的任务时,我们不得不借助于团队。道理我都懂,然而却一直不上心。我们一直说团队是最重要的,然而我们终究并没有把心思完全放在团队上,为了自己的那点小九九。

只有身边的人也如你般高效,才可能释放出你来去做更多让更多人高效起来的事。更多的人更加高效,即节约了他们的生命,也反过来再次让你变得高效。

当你能够让身边的人也越来越高效,或许你就真的到了高效的最高境界。

高效的开发环境

我们可以从编缉器谈起,这里有IDE vs Text Editor,有Vim vs Emacs,有Sublime vs Atom,那该如何选择呢?在做选择之前,我们先想想自己的目标。我们希望这是一个长期的投资,这款编缉器能被长期使用,在这个过程不断的打磨,使其能完全适合自己的习惯,最大化编缉效率。如果程序员是侠客,编缉器则是他手中的剑。

虽然我是Vim的重度用户,但我觉得当年选择Vim时有欠考虑。如果让我重选一次,我的第一选择会是Emacs,第二选择会是Atom。Emacs已存在30年,社区仍然活跃,其可扩展性在编缉器中无人能出其右。Emacs的脚本语言elisp又是lisp的一种dialect,我觉得对lisp的学习可以提升程序员对编程核心思想的理解。另一个加分点是Emacs由于其本身的高门槛及lisp特质,吸引了大批高质素的程序员,其社区可谓藏龙卧虎,更诞生了像Org-mode这样神级的插件。

注释和命名

编程的时候,可能时间紧任务中,而且项目对注释或者命名没有强制要求,很多程序员就偷懒。结果就是坑别人,也可能坑自己。所以,注释一定要写,不管是否有要求。命名一定要规范,杜绝拼音,一定要用英文(拼音有时候有歧义)。注释和命名是一个程序员的逼格,不能偷懒。在多人项目中,建议偷偷学习一下同事的编码规范。

把玩并掌握代码

到了这一步,你可能会觉得你已经从这本书所给予的信息中提取出了全部。然而,你还是没有把玩示例代码并试着让它以别的方式运行。试验是学习的关键。将书本中的示例代码试验一下,是提升你技能的好方法。当你做了各种各样的延伸时,你应该开始理解代码的变化如何在整体上影响应用。这类知识无法通过其他方式学习——你需要通过试验去精准地理解一门语言所提供的特性。

最后,你将开始创造出与书中代码不太一样的应用。这时,你走到了一个新的阶段。在这个阶段中,你开始自信地创建自己的应用,并且真正地理解了它们是如何运作的。

认真沉思

创造的过程,就是将你脑海中的代码进行结构化,体现到实际中并用它们解决某个问题。想象一下,在办公室里有两个书桌,一个用于写作(此Tip),一个用于编辑(Tip 7)。从书桌能望向窗外,你可以异想天开、开放思考,像追逐蝴蝶一样追逐你脑海中的想法。

不要害怕散步,或者害怕尝试可能是,也可能不是最好的最终解决方案。我最有生产能力的实习生之一,当想弄清楚她代码下一步该怎样写,她喜欢在CMU的走廊上走路。编程就像写作一样,不仅仅是在屏幕上打字,更重要的是你脑中想的东西。所以在种植前,先为土壤施肥而庆祝,然后再浇水。

必须像工匠一样写够十万行代码,又须像写诗一样来写代码

程序员像木工一样,熟能生巧。程序员必须写足够代码量的程序,才会有感觉,这是一个苦力活,没有任何捷径可走。

计算机是一门实践性的科学,没有动手能力做支撑,很难做出好的科研成果。我的一个学长是美国卡内基梅隆大学的博士,卡内基梅隆大学计算机系在全世界都非常出名,他说每个博士生必须写十万行代码才能毕业,卡内基梅隆大学博士生进任何一个大企业基本不用面试。而国内培养的大部分研究生、博士生,动手能力都偏弱。没有写过足够代码量的程序员,想成为高手是不可能的,只能纸上谈兵!

那么,怎样像写诗一样写代码呢?很简单,买几本经典的编程书,把书上所有例程全部重新写一遍,逐个比较和书上范例的差距,一步一步改善自己编程的风格和技巧。时间长了,自然就能写出像书上例程一样的代码,甚至可以比书上写得好。基础扎实后,多看看Linux等系统级的源代码,看看高手是如何写的,就有感觉了。通读一下MSDN中所有的资料,这样就“读书破万卷,下笔如有神”。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

业内消息,近日在央视播出的《对话》・开年说节目上,百度创始人、董事长兼首席执行官李彦宏表示,以后不会存在“程序员”这种职业了,因为只要会说话,所有人都能具备程序员的能力。李彦宏认为,未来的编程语言只会剩下两种,一种叫做英...

关键字: 百度 李彦宏 程序员 AI

近日,某厂一名员工爆料称,由于Bug事故,公司要求他返还去年发放的年终奖,共计4万余元;如果逾期不还,将以每天万分之5的利息收取滞纳金,即每天20元左右;甚至公司HR还扬言,如果三个月内仍不还,就免费开除。

关键字: 程序员 互联网

近日某厂员工爆料,公司程序员因线上流量异常BUG事故,被公司进行处罚。处罚的结果是被要求将去年发的 4 万多年终奖归还给公司,否则就收取滞纳金并辞退,逾期将以每天万分之 5 的利息收取滞纳金。

关键字: 程序员 BUG 事故 年终奖 工程师

据昨天外媒报道,OpenAI首席执行官、Y Combinator前总裁山姆·奥特曼(Sam·Altman)结婚了,男友为前Meta程序员奥利弗·穆尔赫林(Oliver·Mulherin),婚礼在夏威夷举行,整个仪式非常低...

关键字: ChatGPT Meta 程序员 OpenAI 山姆·奥特曼

今后,鸿蒙和安卓应用将不再兼容。眼下,越来越多的互联网公司开始招聘鸿蒙开发相关的人才,以适应市场的变化和用户的需求。

关键字: 程序员 嵌入式

在嵌入式系统设计中,搭建开发环境是实现项目成功的重要步骤之一。本文将介绍如何在嵌入式系统中构建一个完整的开发环境,包括硬件和软件方面的考虑。 在嵌入式系统设计中,搭建一个良好的开发环境是非常重要的,它能够帮助开发人员高效...

关键字: 嵌入式 开发环境 测试

嵌入式开发环境是指嵌入式产品开发所需要的硬件和软件环境。嵌入式开发环境对系统有很高的要求,因为嵌入式产品需要在有限的资源下运行,并且需要满足实时性、安全性和可靠性等要求。本文将对嵌入式开发环境和对系统的要求进行详细的探讨...

关键字: 嵌入式 产品 开发环境

近日,一则“中国程序员在越南遭受残酷虐待”的新闻,引发了国内外的关注和震惊。

关键字: 程序员 互联网

近日,上海公安局普陀分局成功破获一起案件,并在程序员圈内引起了不小轰动。因为该案件涉及的金额高达1.5亿元,而这仅仅是在半年时间内的非法获利。要知道,这样的赚钱速度放在整个互联网界也都是相当炸裂的!

关键字: 代码 程序员

近日,一位清华大学应届硕士生在网上发布的帖子火了,引起了众多网友的“围观”热议。

关键字: 互联网 程序员
关闭
关闭