如何快速有效编写可维护代码
2013-05-02 13:46 ubunoon 阅读(1155) 评论(2) 编辑 收藏 举报首先你必须要熟悉你要写的内容业务,如果你不熟悉,请先熟悉业务。
熟悉业务之后,也请不要立即开始编写代码,当业务逻辑比较复杂的时候,你的代码中会充满了if, else之类的内容,当多层嵌套的时候,即便当时清楚的业务逻辑,到后来维护的时候,也会出现问题。
那应该做什么呢?做业务逻辑的抽象,业务一定是有n个步骤来实现的,这些实施步骤,就是你的函数名(像if,else之类的就可以用filter之类的进行分割),然后你就可以定义出最顶层的业务逻辑。 (这是最关键的一步,也是需要对业务非常清楚,才有可能抽象好这一步)
你的代码,只要按照最顶层的业务逻辑,编写出对应的函数名。
然后你应该定义你的数据结构,用什么方式存储这些数据,这一部分可以充分利用实现语言提供的内建数据类型
最后就是将在上述函数中,实现对数据结构的访问和修改,在函数中返回数据结构对应的信息
所以上面的所有废话就是:瀑布式的分析+数据结构设计+具体实现
依网友要求,添加一个实际需求:
比方说有业务需求如下:需要给n台机器发出指令,但这n台机器中,有可能有m台机器正在重启中,这个时候,指令需要被缓存起来,当机器执行指令结束或者重启成功后,都会向系统发一条消息,你需要向这些重启的系统发送没有执行的指令。但是系统如果重启失败的化,你是收不到消息的,所以你需要一个超时机制来控制你的指令信息。问该如何实现?
如果你不喜欢这样方式,请过滤一下。
/*
*
* Copyright (c) 2011 Ubunoon.
* All rights reserved.
*
* email: netubu#gmail.com replace '#' to '@'
* http://www.cnblogs.com/ubunoon
* 欢迎来邮件定制各类验证码识别,条码识别,图像处理等软件
* 推荐不错的珍珠饰品,欢迎订购 * 宜臣珍珠(淡水好珍珠) */
*
* Copyright (c) 2011 Ubunoon.
* All rights reserved.
*
* email: netubu#gmail.com replace '#' to '@'
* http://www.cnblogs.com/ubunoon
* 欢迎来邮件定制各类验证码识别,条码识别,图像处理等软件
* 推荐不错的珍珠饰品,欢迎订购 * 宜臣珍珠(淡水好珍珠) */