成长之路---写好一个程序

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

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

    (用一个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工程,项目都是相对路径设置,不用再去做包含依赖设置),里面基本反映了我写一个程序的思路,当然,这只是个教学工程,离工业级还有差距,点到为止吧。
本文转自永远的朋友博客51CTO博客,原文链接http://blog.51cto.com/yaocoder/854943如需转载请自行联系原作者

yaocoder

相关文章
|
13天前
|
人工智能 数据挖掘 开发者
技术之旅:从初心到探索,代码中的人生哲学####
【10月更文挑战第22天】 在技术的浩瀚星空中,每一位开发者都是探索未知的旅者。本文以第一人称视角,回溯了作者从编程新手到技术爱好者的成长历程,用平实的语言讲述了在技术海洋中遨游的体验与感悟。文章没有列举具体的数据和案例,而是聚焦于个人情感与哲思,展现了技术学习之路上的坚持、挑战与收获,以及在这一过程中对人生意义的深刻思考。 ####
|
16天前
探索技术的无限可能:从初学者到专家的成长之旅
本文通过个人成长经历,探讨了技术学习的重要性和价值。文章首先讲述了作者从一个对技术一无所知的初学者,通过不断学习和实践,逐渐成长为一名技术领域的专家的过程。接着,文章分析了技术学习过程中遇到的挑战和困难,以及如何克服这些难题的方法。最后,文章强调了持续学习和创新的重要性,并鼓励读者在自己的技术领域中不断探索和进步。
|
9天前
技术之旅:在代码的世界里不断成长####
【10月更文挑战第26天】 — 探索、实践、反思,技术之路上的点滴收获 ####
17 0
|
1月前
|
机器学习/深度学习 SQL 前端开发
从代码中学习:我的技术成长之旅
【9月更文挑战第34天】在编程的世界里,每一行代码都是一个故事的开始。本文将通过我个人的技术成长历程,探讨如何从代码中汲取知识、解决问题,并实现自我提升。我们将一起回顾那些让我印象深刻的项目和挑战,以及我是如何一步步克服困难,最终找到属于自己的技术道路的。
35 2
|
1月前
|
设计模式 测试技术
从代码中学习:我的技术成长之路
【9月更文挑战第30天】在编程的世界里,每一行代码都像是一次小小的探险。本文将带你走进我的编码之旅,一起探索如何通过实际的代码示例来提升技术能力。我们将从简单的Hello World开始,逐步深入到复杂的项目结构,并分享在这个过程中遇到的挑战和收获的经验教训。这不仅是一个关于技术的学习之旅,更是一个关于如何面对困难、持续进步的心路历程。
|
5月前
|
存储 Java 程序员
程序员修神之路--有状态的服务其实可以做更多的事情
程序员修神之路--有状态的服务其实可以做更多的事情
|
算法 Cloud Native 程序员
C++ 程序员入门之路——旅程的起点与挑战
C++ 程序员入门之路——旅程的起点与挑战
80 0
C++ 程序员入门之路——旅程的起点与挑战
|
存储 城市大脑 运维
程序员成长第一篇:机会与趋势
程序员成长第一篇:机会与趋势
107 0
|
SQL 缓存 Java
JPA学习之路(基础篇)
📒 程序员小王的博客:(https://www.wolai.com/wnaghengjie/ahNwvAUPG2Hb1Sy7Z8waaF) 🎉 欢迎点赞 👍 收藏 ⭐留言 📝 😊 如有编辑错误联系作者,如果有比较好的文章欢迎分享给我,我会取其精华去其糟粕 ———————————————— 版权声明:本文为CSDN博主「程序员小王java」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/weixin_44385486/article/details/123046499
175 0
JPA学习之路(基础篇)
|
Python
2022/11/14 学习之路---day2
2022/11/14 学习之路---day2
122 0
下一篇
无影云桌面