提高自己和培养人才应该循序渐进,首先要能写好一个方法,之后能写好一个类,之后能写好一个程序,之后能做好一个产品......

    之前已经写了两篇关于写好一个方法写好一个类的文章,紧接着把写好一个程序的经验与大家分享下。

    (用一个windows平台下的VS2010工程进行介绍,附件有工程文件,由于博客附件最大只能2M,上传不了,感兴趣者可把邮箱发于我,我发给大家)
     首先,咱得给工程起个合适的名字,我举得例子是个对XML操作进行的例子,其中用的是tinyXML库进行操作,当然还有其他操作XML的库,所以起名起个好识别的名字,叫XmlWrapper吧,比Test1,myproject......此类名字好多了吧。

     给工程的项目路径进行一下详细的规划

如图,bin文件夹就是所有可执行程序的生成路径,里面有更详细的debug和release文件夹分类...;

doc文件夹把有关这个工程的文档都扔进来就好,比如使用文档啊,参考文档啊,自己好找他人也好找;

include文件夹就是把工程需要的一些第三方的头文件包含进来,我这个工程里用到了gtest,log4cxx,tinyxml,这样做的好处就是对任何工程来讲你只要写一个相对路径引入头文件就行;

lib文件夹就是放一些需要引入链接的静态库或者dll导入库,其中记住要区分debug版和release版;

src文件夹就是存放代码源文件的路径,其中自己还可以对工程源码细分;

thrid文件夹我就是用来存放第三方的工程文件的,比如log4cxx的工程文件,gtest的工程文件,tinyxml的工程文件,......这样做的好处是你可以供自己或他人学习使用他们的例子,或是随时编译生成自己需要的库文件。

vcproject文件夹就是存放工程文件的地方,比如针对vs来说的sln,vcproj,你肯定会问我为什么不采用vs默认的把工程文件和源码文件放在一个文件夹底下的做法,好吧,等你常常要对解决方案里的多个工程进行头文件引用时你就会发现这样做会更合理清晰(我的示例代码中主要举了tinyxml操作工程和单元测试工程)。

    一个程序中通常要首先用到的规范和技术,我个人比较推崇google c++编码规范;对于代码注释,按照doxygen风格来,你可以看看doc文件夹底下生成的文档,就会明白好处了;对于单元测试,最好别少,这是个好习惯,我更喜欢google的gtest;程序运行时日志,当然不能少,log4cxx,这个鼎鼎大名的日志系统我想就不用我力荐了吧, ......

      好了。多了也就不多说了,自己下载工程看吧,可以直接编译运行(注意:vs2010工程,项目都是相对路径设置,不用再去做包含依赖设置),里面基本反映了我写一个程序的思路,当然,这只是个教学工程,离工业级还有差距,点到为止吧。