如何高效地写代码

毛 tfnv 牛 tgk 沮丧 iefu 读 yfnd 雨 fghy

在编程中,人们往往很关注最终程序的执行效率,但往往忽略了写代码的效率问题。

回想自己才开始学编程时,通常是一股脑儿把一个问题的代码写完,然后马上运行,结果当 然是满屏的错误。看到满屏的错误时,沮丧之感油然而生,幸好自己韧性还算好,有一定的 抗打击能力,最终还是坚持下来了,到现在还是能够用编程做些事情。

现在当了研究生导师,再看看学生编程的过程,和自己当年像极了,根本不关注写代码中的 效率问题。编程练了大半年,也过写了一大堆代码,但编程能力还是达不到独立的程度,写 出的代码很难读, 运行结果还常常不对,就是偶尔对了执行效率也太低。

当然学生有学生的问题,但做为导师我更应该反思我教编程的内容、方式和方法对不对。仔 细回想一下最近自己编程的过程,发现其实自己写代码时,效率意识也不太够,很多时候也 是写一大段代码,再调试错误,只是自己经验比较丰富了,最终还是把问题搞定了。

其实教学生编程,我一直很困惑要教什么。因为,编程方面的资料在网上已经是多如牛毛了 ,还有很多在线平台,还可以在网页里直接练习编程,自己再花时间去编写这些资料就意义不 大了。那编程我要教什么给学生?当然是那些在互联网上学不到东西。网上的学习资料一般 都是专注于语法等表面的知识点,但熟悉语法不等于编程能力就强。想快速实现解决问题的 算法,仅仅熟悉语法是远远不够。

以我的经验,如果写代码的效率不高,代码编出的程序往往效率也好不到哪里去。

手头有一个问题需要编写程序,要想快速的把代码写出来,且犯的错误尽可能少,有很多方 面需要注意,下面就尝试把需要注意的事项写出来。

有以下基本原则需要注意:

  • 熟习理解需要实现的算法
    • 算法的思想
    • 算法的框架和层次结构
    • 算法的细节
  • 一定要有测试框架来支持代码的开发过程,比如
    • 单元测试
    • 集成测试
  • 先实现框架,再逐步添加细节
  • 设计简单的可验证程序正确性的数据例子

results matching ""

    No results matching ""