关于开发的几段笔记.
都是很基本的,很符合为初学者看看
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, liang1057@hotmail.com
*
* 文件名称: 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);