关于开发的几段笔记.
都是很基本的,很符合为初学者看看
1、做好必要的设计。哪怕是用visio或pd做一个简单的包图或类图,甚至用铅笔在白纸上画一个,也要比直接来编程序好的多。
2、做好必要的计划。做一个计划的目的, 一是为了明确开发的过程做到有条不紊,二是为了防止过度开发。这和设计是分不开的。像这样独立完成的小应用,编写代码的时候,总是会有更好的主意,但最好不要想着把所有的好主意都实现出来。
我在做的时候,最开始是计划先画剖面图,以后版本再画频谱分析图。写代码的过程中,我考虑了一下,感觉频谱分析是可以的,也作过数据分析,就把fft简单的实现了一下,很快做出来,其他的暂时就不再作更多的调整了。也许以后童鞋们还能看到多道、开时窗等约束的频谱分析,但现在对这个小工具而言, 应该是足够了。
知道自己要做什么是关键。
3、关于异常。有一些系统异常是无法抛出的,有童鞋曾经问过为什么不能捕获。内存异常的时候,需要在异步模式下才能捕获,使用VS的童鞋在property-〉C++-〉Code中找到Enable C++ Exceptions 选择EHsc即可,关于内存异常,大黑童鞋作了比较好的说明,初学的童鞋可以参考http://blog.csdn.net/daheiantian/archive/2011/03/10/6530318.aspx
4、关于注释
注释是必须的,除非我们不得不要把代码个一个不想给的人。
作者现在经常用的是这样的注释格式,小盆友们来喷一下
文件头:
/************************************************************************ * 版权所有 (C) 2013-2016, [email protected] * * 文件名称: SlSegYStruct.h * 内容摘要: * 其它说明: 无 * 当前版本: 1.0 * 作 者: Leon * 完成日期: 15/7/2013 * * 修改记录1:暂无 * 修改日期: * 版 本 号: * 修 改 人: * 修改内容: * 修改记录2:… ************************************************************************/
类声明
/************************************************************************** * SlSegYBinHeader 类声明 * **************************************************************************/ /** @brief SegY数据结构类_二进制卷头 * * @details SegY数据结构类_二进制卷头,一般为400字节 */
方法声明
/** @brief 二进制数据转换为浮点型 * * @details * @param bufData 二进制数据 * @param traceData 浮点型道数据 * @param format bufData的数据编码格式 * @param iSamples traceData 的采样点个数 * @return */ static void data2float(const uchar* bufData, float* traceData, int iSamples, int format = 1);