开发程序的技巧:如何简介,有表达力

全栈老魔码师父

共 1428字,需浏览 3分钟

 · 2020-05-26

写程序,不仅仅是编写代码,也不仅仅是能写一些算法,编码中需要注意的一些原则和技术,在提升你编码水平的同时,也可以帮你提升编码的可读性和代码的优雅程度。

1、学会编写短的代码

这点很重要,完全不顾代码的阅读性,动辄巨大的代码段,你是想噎死谁呢?这里边写短的代码的技术就很重要。

首先就是要提炼自己的代码库,不断的提炼一个一个简要不简单的工具函数,方便在自己的应用代码中调用,减少相关代码的重复边写和行数。

其次部分声明文本量巨大的变量和常量保存在固定文件中,通过调用这些简要的变量活常量名来进行调用。

第三对过程步骤型的编码,尽量用子函数将他们分开边写,再在调用行数里将他们整合,这样不仅代码少,还便于调试,差错。

2、单一职责原则

就是每个类每个函数只干一件事情,是为了保持代码的简单,简单是编程中重要的品质保证,可减少编码中的问题和bug。如果有超出理解的复杂,其实你的编码出错的概率非常大,而且也不易调试和查错。

3.查表法

就是从类似表的数据结构里获取信息来指示系统下一步如何处理,减少if,else的应用,同时也是代码更简洁,下面代码演示查表法

leetcode 12:Integer to Roman

class Solution {

public:

string intToRoman(int num) {

string res = "";

vector v1{"", "M", "MM", "MMM"};

vector v2{"", "C", "CC", "CCC", "CD", "D", "DC", "DCC", "DCCC", "CM"};

vector v3{"", "X", "XX", "XXX", "XL", "L", "LX", "LXX", "LXXX", "XC"};

vector v4{"", "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX"};

return v1[num / 1000] + v2[(num % 1000) / 100] + v3[(num % 100) / 10] + v4[num % 10];

}

};

查表法相关详细内容请参考代码大全相关内容

4.TDD

TDD即所谓测试驱动开发,目的是开发的时候测试现行,什么意思,就是当你一行代码没写的时候,请先写测试,用测试的方法开驱动你开发可用,稳固的程序,并且为后面的工作打下基础,TDD有着一系列的工具和方法路径,请参考测试驱动开发一书进行学习。

5.重构

如果没有TDD,重构都是废话,TDD的目的之一就是未重构做准备,同过TDD可以快速的对实现不关心和只关心TDD是否能够通过,达到高效快速,简洁的目的,所以当有人说重构,却没有TDD时,他一定是开玩笑,这种是重新开发,而不是重构,请参考重构一书进行参考,重构首要目标是发现代码的所谓坏味道,为改变当前现状,提升代码质量、偿还开发中的技术宅而采取的策略。

6.用用文字和图形来思考而不是编码来思考

编码之前,应该对代码实现的标的进行思考,而不是只是凭借经验直接编码,通过编码,调试过程来促进思考,这样常常会陷入代码的陷阱中,无法自拔,应该先通过文字和图形对目标所描述的内容进行拆解分析,进行深度理解,从而产生较完整的认知和流程,编码只是最后的工作完成阶段。尽量少调试和改错。

浏览 11
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报