【编程技巧】提高程序员技能的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 条评论
登录 后参与评论

相关文章

来自专栏转载gongluck的CSDN博客

cocos2dx 打灰机

#include "GamePlane.h" #include "PlaneSprite.h" #include "BulletNode.h" #include...

5756
来自专栏张善友的专栏

Miguel de Icaza 细说 Mix 07大会上的Silverlight和DLR

Mono之父Miguel de Icaza 详细报道微软Mix 07大会上的Silverlight和DLR ,上面还谈到了Mono and Silverligh...

2757
来自专栏C#

DotNet加密方式解析--非对称加密

    新年新气象,也希望新年可以挣大钱。不管今年年底会不会跟去年一样,满怀抱负却又壮志未酬。(不过没事,我已为各位卜上一卦,卦象显示各位都能挣钱...)...

5008
来自专栏落花落雨不落叶

canvas画简单电路图

67011
来自专栏魂祭心

原 canvas绘制clock

4314
来自专栏hbbliyong

WPF Trigger for IsSelected in a DataTemplate for ListBox items

<DataTemplate DataType="{x:Type vm:HeaderSlugViewModel}"> <vw:HeaderSlug...

4074
来自专栏跟着阿笨一起玩NET

c#实现打印功能

2962
来自专栏张善友的专栏

Silverlight + Model-View-ViewModel (MVVM)

     早在2005年,John Gossman写了一篇关于Model-View-ViewModel模式的博文,这种模式被他所在的微软的项目组用来创建Expr...

3038
来自专栏陈仁松博客

ASP.NET Core 'Microsoft.Win32.Registry' 错误修复

今天在发布Asp.net Core应用到Azure的时候出现错误InvalidOperationException: Cannot find compilati...

4878
来自专栏闻道于事

js登录滑动验证,不滑动无法登陆

js的判断这里是根据滑块的位置进行判断,应该是用一个flag判断 <%@ page language="java" contentType="text/html...

7288

扫码关注云+社区