前端周记之代码大全
最近一直在看代码大全这本书,基本每一章都是经典,足够终生使用
发现自己写代码的思路的确不过精炼
本周先总结伪代码这一章节
首先,什么是伪代码
伪代码,就是自己写上自己在某段代码中需要做的一些子程序,其实就是写给程序员自己的自然语言
例如:
我现在手上需要做一个咨询类的手机端页面的主页
如果不写伪代码,你的代码流程会很混乱
你写数据加载的时候会考虑,图片不存在,如何解决,如何实现点击更多什么的小细节,结果,你的编程总是完成各种小细节,导致整体性不能复用
而写得好的伪代码,通常是一个层面的事情充分做好,再考虑下一个层级的事情,人的大脑处理量相当有限,只能考虑小部分的事情
伪代码的思路:
第一层级
ajax(获取数据成功与失败)
clearprev()出现的重复加载情况时先清除上次的内容
第二层级
headlineInsert()头条的呈现
newsarrInsert() 其它新闻的呈现
weixunInsert() 简讯的呈现
第三层级
arrrepeat()循环加载
imgInsert()图片加载
textInsert()文字加载
timeInsert()时间加载
editorInsert()作者加载
morenewsInsert()更多加载
第四层级
timeformate()时间转换格式
imgReplace()没图的随机图片
morenewsInsert()对以上代码的复用
当然有更多的执行细节
你已经检查过所有条件都满足了吗?
定义好,你要解决的问题吗?
上一个层次的设计是否清晰,能给出名字
考虑过如何测试这个伪代码的子程序(先备好结果做测试)
能否保证接口稳定(例如数据是否具有这些内容)
在标准函数库或者代码库内找到合适的程序与组建吗
在参考书有用过的算法吗
是否用详尽的伪代码设计好每个子程序
脑海中检查过伪代码,容易理解吗
有没有关注过哪些可能会让你重新设计的警告信息(有更适合提出来的子程序代码,或全局变量)
是否能白伪代码翻译成dl吗
仿佛使用伪代码吗?有没有必要设计成更小的子程序
在做出假定的时候是否加以说明
已经uji双层哪些冗余的注释吗
你是否采取几次迭代中最好的结果,还是第一次就停止了
你是否能理解自己的代码?
发现自己写代码的思路的确不过精炼
本周先总结伪代码这一章节
首先,什么是伪代码
伪代码,就是自己写上自己在某段代码中需要做的一些子程序,其实就是写给程序员自己的自然语言
例如:
我现在手上需要做一个咨询类的手机端页面的主页
如果不写伪代码,你的代码流程会很混乱
你写数据加载的时候会考虑,图片不存在,如何解决,如何实现点击更多什么的小细节,结果,你的编程总是完成各种小细节,导致整体性不能复用
而写得好的伪代码,通常是一个层面的事情充分做好,再考虑下一个层级的事情,人的大脑处理量相当有限,只能考虑小部分的事情
伪代码的思路:
第一层级
ajax(获取数据成功与失败)
clearprev()出现的重复加载情况时先清除上次的内容
第二层级
headlineInsert()头条的呈现
newsarrInsert() 其它新闻的呈现
weixunInsert() 简讯的呈现
第三层级
arrrepeat()循环加载
imgInsert()图片加载
textInsert()文字加载
timeInsert()时间加载
editorInsert()作者加载
morenewsInsert()更多加载
第四层级
timeformate()时间转换格式
imgReplace()没图的随机图片
morenewsInsert()对以上代码的复用
当然有更多的执行细节
你已经检查过所有条件都满足了吗?
定义好,你要解决的问题吗?
上一个层次的设计是否清晰,能给出名字
考虑过如何测试这个伪代码的子程序(先备好结果做测试)
能否保证接口稳定(例如数据是否具有这些内容)
在标准函数库或者代码库内找到合适的程序与组建吗
在参考书有用过的算法吗
是否用详尽的伪代码设计好每个子程序
脑海中检查过伪代码,容易理解吗
有没有关注过哪些可能会让你重新设计的警告信息(有更适合提出来的子程序代码,或全局变量)
是否能白伪代码翻译成dl吗
仿佛使用伪代码吗?有没有必要设计成更小的子程序
在做出假定的时候是否加以说明
已经uji双层哪些冗余的注释吗
你是否采取几次迭代中最好的结果,还是第一次就停止了
你是否能理解自己的代码?
1 个评论
今天听的知乎 live 也讲到了这些。知道自己每一行代码是干什么的,先把整个逻辑理顺后一气呵成的写完,再去修改调试添加小的细节。关于代码拆分的粒度视项目而定,业务层面拆成各个组件,代码层面拆出工具和公共部分等。能用变量名描述清楚的不必添加注释。