首页 » 编程知识 » 10个编程提示,让你在实践中更高效、更具创造性

10个编程提示,让你在实践中更高效、更具创造性

admin 编程知识 132 次浏览 没有评论
程序员精选俱乐部

10个编程提示,让你在实践中更高效、更具创造性

不知你有没有注意到,编程并没有非常好的自学书籍。当然,有很多片段的解释能从理论上指导各种编程语言。但是程序员们的实际行为方式呢?如果你追 Silicon Valley 这个(美国)电视节目,你就会知道,程序员也会像作家一样在工作中受到阻碍:理查德不再睡觉,穿着衣服走进一个游泳池。但一定会有更好的办法。

其实,作家知道程序员遇到障碍的秘密。如果你是一个程序员(无论新手还是专家),这十个写作提示将帮助你成为一个更有效率、更具创造性和更自信的程序员。

这些提示来自哪里?为了在教师访谈期间缓解我去年关于博士学位的内疚感,我读了很多关于飞机写作的书(参见末尾的阅读清单)。我发现许多书中,都有适用于编程的见解和方法。

当然,这个清单是从零开始的。

Tip 0:程序优先

把编程安排在重点位置,毕竟人们整天都很忙。具体该怎么做呢?我们早上时是最有创意的,所以让你每天早晨的第一个小时变得神圣不可侵犯。不安排会议,不要检查你的电子邮件或社交平台。如果你早晨在家,甚至不要刷牙。对我来说,喝杯咖啡很有必要。但此后,只需要让你自己坐在椅子上(有人说,作家最有用的工具是胶水)。

把这段时间像一个会议一样安排进你的日程表,并防止这段时间免受其他任何事件的影响。

Tip 1:不要害怕使用纸张

在打开电脑之前,先在脑海中勾画出你的想法,列一个列表并在记事本上注释。《在十五分钟内撰写论文》强调了达到零草稿的重要性,而概念模板早于初稿,你已经花了所有傍晚和晚上的时间去思考、产生想法,现在只需要将它们表现出来。

< Artist’s Way > 主张,自由的写作能帮你成为一个更好的程序员(或者雕塑家、投资银行家)。所以什么方式对你编程有效,就用什么方式。

Tip 2:建立编程计划

人类是具有“习惯性”的生物。因此,使编程成为你计划的一部分,为它设定合理的目标。这个理念来自于< Writing Down the Bones >。一段时间后当你形成习惯,如果某天没有编程,你就会觉得好像忘了什么事。

Tip 3:跟踪想法以及bug

建立一个记录想法和问题的日志,当你受到阻碍或想要寻找其他事的解决方法,可以返回查找。建立编程计划(Tip 2)是第一步。但创造力并不总是遵循着计划走,或者你可能正在忙于其他事情。所以,尽可能地记住你的灵光乍现。

有人说写作会鼓励人更多的去写作。所以编程越多,你就会对编程产生越多的想法。我平时总是随身携带一本笔记本,以随时记录自己的想法。

Tip 4:交朋友

保持责任心会让我们做得更好。在你设定目标的周期内保持每周自查,与大家讨论编程中遇到的问题,共享资源和策略。

例如,我在CMU做计算机视觉的朋友每个星期一早上都会在校园咖啡厅做15分钟的常规会议。这样的交流能亲自去现场参加最好,如果不能去,还可以用在线论坛。当你向人们请教代码问题,他们可能会迫不及待的和你分享。

Tip 5:借鉴他人

就像把事情分开一般往往是把事情放在一起,程序员可以通过阅读和修改他人代码来为代码开发一个“耳朵”。在< The Sense of Style >中,Stephen Pinker强调“好的作家是狂热的读者”。

与写作(借鉴被认为是抄袭)不同,程序员将已有的库和样本用来支撑自己的项目是非常被鼓励的。你可以参考这些代码的来源,但是当已有人弄清楚一个问题时,没有必要重新发明轮子。

Tip 6:认真沉思

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

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

Tip 7:无情(但非卑鄙)

如果你处于编辑阶段,你经常会“杀死你的亲爱的”。这句话已经被许多作家,包括史蒂芬·金所推崇。这是关于消除多余的代码。

例如,你可能花了很多时间让一个代码块工作,但现在你有更好的方式来取代它。如果你真的不能忍受它,那就消除它。 Google 为员工提供了失败奖金,用于一些永远无法解决的项目(引自< How Google Works >)。所以,从你的代码存在的根本价值出发,而不是从自己的感情出发。

Tip 8:对知识局限性保持警惕

我们通常不会用汇编语言编程的原因之一是它不容易被人读取。较高级别的编程语言让我们觉得抽象,所以我们应该选择有意义的抽象语言。调用一些变量1和变量2对于任何其他使用你的代码的人(特别是你自己)会事倍功半,尤其是这些代码之后还会被删改。

写作最大的挑战之一是确保读者能顺利跟上。使用空格、评论你的代码、花时间去创造能被理解的抽象和结构。如果人们不能理解的话,你的文章(或者代码)有多么优秀并不重要。

义乌奥美编程,转载链接。

本文永久链接: http://code.ywbb.com/175.html

发表评论

Go