学海无涯

study,study,study!
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

VC、C++基础学习(转)

Posted on 2009-07-23 16:01  goodboy  阅读(201)  评论(0编辑  收藏  举报

自己本来是学力学的,工作瞎打误撞的进入CAM领域,整天和编程打交道,抽空写一点和编程有关的入门知识,回忆回忆。

 

1、  C++ & STL

C++ 现在是不少公司的主流通用开发语言,尤其我的这个行业,看了看 CAX 方向的公司基本都用 C++ ,编程第一关是熟悉语言,大学时我仅学过 C 和 Fortran ,所以对 C++ 除了熟悉几个控制语句外,其他方面了解几乎为零。

自己的 C++ 学习之路是:

a)         Thinking in C++ ;看了这本书两遍基本可以用 C++ 干活了

b)         C++ Primer ;看了这本后感觉对 C++ 基本了解了

c)         Effective C++ & More Effective C++ ;看一段感觉自己进步一大截

d)         Inside C++ Object Model , 让你对迷惑你的一些C++细节大彻大悟

e)     STL : 侯捷的源码剖析 和 Effective STL,尤为推荐后者,基本将应用stl中容易碰到的一些问题一网打尽

除此之外,看过 C++ 相关的东西就是同事的代码,水木 C++ 版的精华文章,尤其是版主标记的 FAQ ( Frequent Asked Questions )文章严重推荐,林博士的两本书也不错,学一段时间可以看看林博士出的那几道题。还有某高校的 C++ 课件,感觉没什么用,就不推荐了。

学习C++很重要的一点是在实践中学习,很多知识点在实际应用中不注意栽了跟头后理解的才更为深刻。

学完这些,推荐有兴趣的同学可以有问题直接看标准去了,不过搞工程的我觉得没必要读标准,在一些细节语言上死磕。

 

2、  VC&MFC

在公司打工,除非你做很底层的算法,否则界面交互肯定是有的,所以了解一定的 VC 和 MFC 知识很有必要。

先说说 C++ , VC , MFC 的区别,初学者经常分不清这三个玩意,简单的说, C++ 是一门编程语言, VC 是微软推出的一个编程开发工具, MFC 是一个界面类库,也就是说,这三个概念根本不是一类东西。

我的学习经历是:

a)         看 Programming with Microsoft Visual C++ .NET ,自己先照猫画虎折腾出一些东西看看

b)         看孙鑫的 VC 高级编程 20 讲, 比较费时间,但看完就可以干活了

c)         侯捷的深入浅出 MFC , 结合MFC源码,了解 MFC 的大致脉络

d)         VC++ 技术内幕, WINDOWS 核心编程,大块头,挑自己感兴趣的读,譬如线程、内存管理等等

 

3、  数据结构与算法

惭愧,自己就简单看过北航唐发根的那本教材与 严蔚敏老师的视频,数据结构的知识感觉够用了。 算法方面很惭愧,一直没有下决心读 CLRS 。鄙视自己中……。

 

4、  设计模式和编程规范

代码的规范可以参考华为的规范准则,写的很详细。例子可参考 MFC 的代码,我的代码布局风格就是模仿它写的。

一些细节问题,譬如变量函数命名,函数设计,全局变量,控制语句等等,可以看 Code Complete 这本书,很不错。

大名鼎鼎的 Design Patterns , 不愧为经典中的经典,我看完了对我们的整个软件工程架构设计有了很清晰地理解,我们工程的代码量是千万量级的(记得刚毕业那会看那些代码库有彻底崩溃的感觉),设计模式中提到的一些思想体现在工程的每一个细节中。

 

5、  图形学

 OpenGL 和 计算机图形学的知识自己了解的很肤浅, OpenGL 看的是红宝书,计算机图形学翻了翻孙家广的那本书。

 

就说这些吧,自己要学的还很多,过个一年半载的再来写写。


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/flymt/archive/2009/06/11/4261754.aspx