`
xiaoheliushuiya
  • 浏览: 401152 次
文章分类
社区版块
存档分类
最新评论

c++学习历程

 
阅读更多
我的学习技术历程主要为书本知识学习,项目经验积累。从最初的课堂上学习《c语言程序设计》,然后自学《c++ primer》,对c++的语法有了较清晰的认识之后,开始着手研究c++编程效率的书籍,类似于《effective C++》和《more effective C++》,《c++编程思想》等。学习完了这些之后,有时我会对比同一段代码在不同的编译器下得出的不同结果,这令人困惑的结果在《深度探索C++物件模型》得到了一定的解答。学习了这么多关于c++的知识,在实际的项目开发中,仍然遇到了一些关于软件工程的问题。程序越来越臃肿,程序改动会出现牵一发而动全身的情况,程序离不开原作者,最终导致自己陷入了泥潭。改还是不改,还是推倒前面的代码重新写程序,这是个艰难的选择。这种问题可能长期会困扰程序员,幸亏在这个世界上总有人比我早些经历这种痛苦,并且他们能够给我答案。他们总结了这种问题的答案,并汇集成册。在这种驱动下,我阅读了《设计模式》、《代码大全》、《实现模式》《C++ Template Metaprogramming : Concepts, Tools, and Techniques from Boost and Beyond》、《代码整洁之道》、《重构与模式 = Refactoring to patterns 》等相关书籍,给我一种醍醐灌顶,如释重负的感觉。不断的学习、总结,我开始注意在软件的架构上,将功能进行划分,时刻牢记解耦、聚合、封装等思想,在复杂的问题巧妙运用设计模式中的方法;在程序的编写过程中,注意代码的编程规范,同时恰当地运用STL和开源库;而在维护上注意代码的重构,不断的精简代码,提高代码的复用率(其实这一步与程序的编写过程是不会分开的)。在这个学习过程中,个人真正体会到码农与高级软件工程师之间的差别。高级工程师写出的高质量代码就是在格式上整洁,这里整洁既包含了格式又包含了代码的内容简单而不冗余。c++语言发明者Bjarne Stroustrup对高质量代码的定义有个概括:代码逻辑应用直截了当,叫缺陷难以隐藏;尽量减少依赖关系,使之便于维护;依据某种分层战略完善错误处理代码;性能调至最优,省得引诱别人做没规矩的优化,倒导致一堆混乱。

程序编写不可避免的会接触到算法和数据结构的问题,两者相辅相成。在算法的学习过程中,主要是参考了《算法导论》,以及《算法设计》两本书籍,以及《计算机程序设计艺术 . 第1卷 , 基本算法》。在研究生阶段,为了实现人脸识别的算法——SVM,专门参考了数据《数据挖掘中的新方法 : 支持向量机 》,学习了SVM的基本原理,开始领略到机器学习领域的神奇。

c++学习不止!针对c++11最新的特征,还在研习过程中,暂且不表。

分享到:
评论

相关推荐

    简述C和C++的学习历程

    简述C和C++的学习历程 学习C和C++的同学可以看看,以供参考

    C 和 C++的学习历程.pdf

    C 和 C++的学习历程,帮助挺大的!!

    C++学习之路

    大家可以通过一个人学习C++的历程来作为参考学习自己的C++

    C与C++程序设计学习与实验系统 2011.2

    另外 “编程日记” 功能可以让你记录你的 C 语言学习历程, “资料管理” 功能让你大量的下载资料不再难找 安装注意事项:为了保证软件的正常运行,请不要安装在中文文件夹中,采用默认安装路径即可。

    C与C++程序设计学习与实验系统.rar

    这是小编学C语言用的,这款软件特变适合新手,比起vs2010来,操作简单,是一个简单易用的C/C++程序设计教学...另外 “编程日记” 功能可以让你记录你的 C 语言学习历程, “资料管理” 功能让你大量的下载资料不再难。

    C_C++程序设计学习与实验系统 2010 part1

    另外 “编程日记” 功能可以让你记录你的 C 语言学习历程, “资料管理” 功能让你大量的下载资料不再难找 安装注意事项:为了保证软件的正常运行,请不要安装在中文文件夹中,采用默认安装路径即可。

    简述C和C++程序员学习历程

    述C和C++程序员学习历程:先学习C、学习C的过程中,一定要理解结构化编程思维、再学习C++、学习C++的深入技巧、学习应用开发、学习MFC、Win32API然后回到MFC最后学习COM。

    C++进行开发,实现万年历程序设计 .zip

    C++进行开发,实现万年历程序设计。.zip C++进行开发,实现万年历程序设计。.zip C++进行开发,实现万年历程序设计。.zip C++进行开发,实现万年历程序设计。.zip C++进行开发,实现万年历程序设计。.zipC++进行...

    C_C++集成实验与学习环境

    另外 “编程日记” 功能可以让你记录你的 C 语言学习历程, “资料管理” 功能让你大量的下载资料不再难找 安装注意事项:为了保证软件的正常运行,请不要安装在中文文件夹中,采用默认安装路径即可。

    C/C++程序设计学习与实验系统 V2008.13.part1

    C/C++学习与实验软件。软件集成了高校 C/C++语言教学中使用最多的三种编译器 Visual C++ 6.0 、Turbo C++3.0和Turbo C 2.0 ,给高校 C/C++的实验教学提供了简单易用的软件实验环境(软件没有使用日期限制,可以无限期...

    c/c++程序设计学习与实验系统

    原名《Turbo C/C++ for Windows 集成实验与学习环境》,支持最新操作系统WINDOWS 7,它是从事一线教学的大学...另外 “编程日记” 功能可以让你记录你的 C 语言学习历程, “资料管理” 功能让你大量的下载资料不再难找

    学C++的历程以及方法

    详细讲述了学习C++的读书内容以及方法,讲术人是一个经验十分丰富的C++教授.

    C/C++程序设计学习与实验系统 2010.part1

    本软件是从事一线教学的大学教师根据C/C++初学者的特点量身打造的一个简单易用的 C/C++学习与实验软件,现在已全面支持最新操作系统VISTA,它是从事一线教学的大学教师根据C/C++ 初学者的特点,量身定制的一个简单...

    C/C++程序设计学习与实验系统

    另外 “编程日记” 功能可以让你记录你的 C 语言学习历程, “资料管理” 功能让你大量的下载资料不再难找 安装注意事项:为了保证软件的正常运行,请不要安装在中文文件夹中,采用默认安装路径即可。

    C与C++程序设计学习与实验系统

    原名《Turbo C/C++ for Windows 集成实验与学习环境》,支持32位与64位的WINDOWS 7,它是从事一线教学的大学...另外 “编程日记” 功能可以让你记录你的 C 语言学习历程, “资料管理” 功能让你大量的下载资料不再难找

    C/C++程序设计学习与实验系统 2010.part2

    本软件是从事一线教学的大学教师根据C/C++初学者的特点量身打造的一个简单易用的 C/C++学习与实验软件,现在已全面支持最新操作系统VISTA,它是从事一线教学的大学教师根据C/C++ 初学者的特点,量身定制的一个简单...

    c++与c程序设计学习与实验系统(2014)

    另外 “编程日记” 功能可以让你记录你的 C 语言学习历程, “资料管理” 功能让你大量的下载资料不再难找  安装注意事项:为了保证软件的正常运行,请不要安装在中文文件夹中,采用默认安装路径即可。 2014版本...

    关于自己再次巩固和学习c、c++的一些及学习历程.zip

    c 代码

    Turbo C/C++ for Windows 集成实验与学习环境 7.0

    课程设计指导、课程设计源程序等,同时还有2001年到2005年二级C语言的全部真题笔试试卷及答案与分析和10套全真上机模拟试题和详尽的答案与分析,“编程日记”功能可以让你记录你的C语言学习历程,“资料管理”功能让...

Global site tag (gtag.js) - Google Analytics