【编程技巧】提高程序员技能的11招

1.清晰的分析问题

2.三思而后行如何解决这个问题

3.收集完整的需求。

花点时间,想好产品的目标形态和最终的用户群。在这个阶段思路清晰会给以后节省很多时间。

4.写一个执行计划

对于比较大的项目,将工作拆分成多个模块来做,并考虑以下几点:

1)每个模块都会用到的功能;

2)数据在各个模块之间如何传递;

3)数据在每个模块中如何使用;

收集需求和做计划比编码乏味,甚至比花几个小时调试代码更繁琐。如果前期你能花时间正确设计项目的流程和结构,写代码的部分只是体力活。

5.注释你的代码。

每个函数都应该有1-2行的注释,标明参数和返回值的含义。注释应该是告诉你“为什么”而不是“什么”。在修改代码的时候记住更新注释。

6.使用一致的变量命名规则。

这将有助你跟踪各个类型的变量,了解这个变量的作用。使代码易于调试和维护。一个比较流行的约定是匈牙利命名法---以变量类型作为名字的前缀。例如:整型变量使用“intRowCounter”,字符串变量使用“strUserName”。无论你是用什么命名约定都没关系,最终保证你的变量名称是描述它的作用的就行。

7.组织你的代码。

按照一定的代码规范组织代码,该缩进的缩进,该加空格的加空格。这样会使代码看起来更优雅,流程看起来更加清晰。

8.测试一切。

首先,在模块内部测试,使用你所期望的输入和输出测试。然后使用可能出现的输入输出测试。按照上述方法会测试出隐藏的bug。测试也是一种艺术,通过实践,你会逐渐巩固自己的技能。在接口的测试用例中需要包括以下几项:

a.边界值:0和超出预期的最大值,文本值,空字符串,空参数;

b.无意义的值:假设用户输入的是乱码;

c.不正确的值:如参数要求数字,使用字符串测试。

9.实践,实践,实践。

编程不是一个停滞不前的行为。应该活到老,学到老。反复学习一些旧的知识是很重要的。

10.准备接受需求变更。

在现实工作环境中,需求是会变更的。开始时需求越清晰,排期越清晰。

a.在写代码之前,需求文档或者实现计划会让整个项目的过程更加清晰。

b.将工程分为一系列的里程碑,为每个block做一个demo。一次管理一个里程碑过程。

11.从简单到复杂。

当设计的东西比较复杂时,先设计一个简单的demo,然后把功能一个一个加上去。

原文发布于微信公众号 - 程序员互动联盟(coder_online)

原文发表时间:2015-05-13

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏北京马哥教育

50 行代码教你爬取猫眼电影 TOP100 榜所有信息

来源:程序人生 ID:coder_life 今天,手把手教你入门 Python 爬虫,爬取猫眼电影 TOP100 榜信息。 ? 作者 | 丁彦军 对于 Py...

41111
来自专栏葡萄城控件技术团队

当心那些有歧义的命名

关键点 “别人还能把这个名字理解成什么意思?”通过不断的问自己这个问题来积极检查每一个命名。 事实上,这种富有创造性的、不断尝试“错误理解”的方法,能够有...

1776
来自专栏屈定‘s Blog

设计模式--模板方法模式的思考

模板方法同样也是一种很实用的方法,目的是提高代码复用,并且统一大体的算法流程,比如一个一台电脑主机,定义好放置CPU,硬盘,内存等空位后,就形成了一个骨架,那么...

1294
来自专栏CSDN技术头条

写出优质Java代码的4个技巧

我们平时的编程任务不外乎就是将相同的技术套件应用到不同的项目中去,对于大多数情况来说,这些技术都是可以满足目标的。然而,有的项目可能需要用到一些特别的技术,因此...

1857
来自专栏WeTest质量开放平台团队的专栏

【腾讯内部干货分享】安卓包体压缩——分析Dalvik字节码进行减包优化

对游戏整体的压缩却不影响场景,对图片的压缩却不影响品质。最麻烦的是对代码进行压缩,简直是让程序们熬白了头发只为包体再小个几K。

875
来自专栏Crossin的编程教室

【Python 第7课】if

感觉又一次被微信坑了。前两天刚说改变课程发送方式,今天微信就突然服务器升级,暂时不能新增接收文章的关键字了。所以这两天,还是用回老方式,直接推送。过去的课程0~...

2746
来自专栏我的博客

PHP引号转义(解决POST,GET,Mysql数据自动转义问题)

      今天做了一个小项目,给别人之后发现post数据被自动转义了,我郁闷了半天,我google了一下发现是PHP魔术引号在作怪。。。我煞费苦心终于找到了原...

2824
来自专栏韩伟的专栏

架构实现利器:反射

假设我们希望开发一套通用型的软件框架,这个框架允许用户自定义大量不同的情况下的回调函数(方法),用来实现丰富多彩的业务逻辑功能,例如一个游戏脚本引擎,那么,其中...

4640
来自专栏章鱼的慢慢技术路

《算法图解》第五章笔记与课后练习_散列函数与散列表

1655
来自专栏编程

设计模式启示录(二)

设计模式启示录(二) 在【设计模式启示录 (一)】中,重点介绍了设计模式的精髓(抽象),设计模式的分类(按抽象的目的进行分类)。在本篇中,将按照前述的七大分类,...

1687

扫码关注云+社区