登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

图像处理 视频分析 机器视觉 模式识别

方向比努力更重要

 
 
 

日志

 
 
关于我

河北软件开发项目,电子警察卡口项目,公安天网项目,媒体流处理,数字图像处理。媒体服务器 RTSP、图像处理、车牌识别……DCT变换,H.264压缩

学习C++过程(部分介绍书籍)  

2010-01-15 10:25:47|  分类: C + 算法 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

1.把C++当成一门新的语言学习(和C没啥关系!真的。);
2.看《Thinking In C++》,不要看《C++变成死相》;
3.看《The C++ Programming Language》和《Inside The C++ Object Model》,不要因为他们很难而我们自己是初学者所以就不看;
4.不要被VC、BCB、BC、MC、TC等词汇所迷惑——他们都是集成开发环境,而我们要学的是一门语言;
5.不要放过任何一个看上去很简单的小编程问题——他们往往并不那么简单,或者可以引伸出很多知识点;
6.会用Visual C++,并不说明你会C++;
7.学class并不难,template、STL、generic programming也不过如此——难的是长期坚持实践和不遗余力的博览群书;
8.如果不是天才的话,想学编程就不要想玩游戏——你以为你做到了,其实你的C++水平并没有和你通关的能力一起变高——其实可以时刻记住:学C++是为了编游戏的;
9.看Visual C++的书,是学不了C++语言的;
10.浮躁的人容易说:XX语言不行了,应该学YY;——是你自己不行了吧!?
11.浮躁的人容易问:我到底该学什么;——别问,学就对了;
12.浮躁的人容易问:XX有钱途吗;——建议你去抢银行;
13.浮躁的人容易说:我要中文版!我英文不行!——不行?学呀!
14.浮躁的人容易问:XX和YY哪个好;——告诉你吧,都好——只要你学就行;
15.浮躁的人分两种:a)只观望而不学的人;b)只学而不坚持的人;
16.把时髦的技术挂在嘴边,还不如把过时的技术记在心里;
17.C++不仅仅是支持面向对象的程序设计语言;
18.学习编程最好的方法之一就是阅读源代码;
19.在任何时刻都不要认为自己手中的书已经足够了;
20.请阅读《The Standard C++ Bible》(中文版:标准C++宝典),掌握C++标准;
21.看得懂的书,请仔细看;看不懂的书,请硬着头皮看;
22.别指望看第一遍书就能记住和掌握什么——请看第二遍、第三遍;
23.请看《Effective C++》和《More Effective C++》以及《Exceptional C++》;
24.不要停留在集成开发环境的摇篮上,要学会控制集成开发环境,还要学会用命令行方式处理程序;
25.和别人一起讨论有意义的C++知识点,而不是争吵XX行不行或者YY与ZZ哪个好;
26.请看《程序设计实践》,并严格的按照其要求去做;
27.不要因为C和C++中有一些语法和关键字看上去相同,就认为它们的意义和作用完全一样;
28.C++绝不是所谓的C的“扩充”——如果C++一开始就起名叫Z语言,你一定不会把C和Z语言联系得那么紧密;
29.请不要认为学过XX语言再改学C++会有什么问题——你只不过又在学一门全新的语言而已;
30.读完了《Inside The C++ Object Model》以后再来认定自己是不是已经学会了C++;
31.学习编程的秘诀是:编程,编程,再编程;
32.请留意下列书籍:《C++面向对象高效编程(C++ Effective Object-Oriented Software Construction)》《面向对象软件构造(Object-Oriented Software Construction)》《设计模式(Design Patterns)》《The Art of Computer Programming》;
33.记住:面向对象技术不只是C++专有的;
34.请把书上的程序例子亲手输入到电脑上实践,即使配套光盘中有源代码;
35.把在书中看到的有意义的例子扩充;
36.请重视C++中的异常处理技术,并将其切实的运用到自己的程序中;
37.经常回顾自己以前写过的程序,并尝试重写,把自己学到的新知识运用进去;
38.不要漏掉书中任何一个练习题——请全部做完并记录下解题思路;
39.C++语言和C++的集成开发环境要同时学习和掌握;
40.既然决定了学C++,就请坚持学下去,因为学习程序设计语言的目的是掌握程序设计技术,而程序设计技术是跨语言的;
41.就让C++语言的各种平台和开发环境去激烈的竞争吧,我们要以学习C++语言本身为主;
42.当你写C++程序写到一半却发现自己用的方法很拙劣时,请不要马上停手;请尽快将余下的部分粗略的完成以保证这个设计的完整性,然后分析自己的错误并重新设计和编写(参见43);
43.别心急,设计C++的class确实不容易;自己程序中的class和自己的class设计水平是在不断的编程实践中完善和发展的;
44.决不要因为程序“很小”就不遵循某些你不熟练的规则——好习惯是培养出来的,而不是一次记住的;
45.每学到一个C++难点的时候,尝试着对别人讲解这个知识点并让他理解——你能讲清楚才说明你真的理解了;
46.记录下在和别人交流时发现的自己忽视或不理解的知识点;
47.请不断的对自己写的程序提出更高的要求,哪怕你的程序版本号会变成Version 100.XX;
48.保存好你写过的所有的程序——那是你最好的积累之一;
49.请不要做浮躁的人;
50.请热爱C++!

——————————————————————

结合一些我的学习经历,希望对于想学C++的人有些帮助. 大家有什么好想法望提出

我老师最初是从C语言教起的,用的是潭浩强的<<C程序设计>>这本书,那时候命令执行都是在CMD里实现,用的编译器是turboc最经常用

到的就是 printf cin 对于效率不是很在乎,只要能执行就好了,连warning都忽略(这个很不应该).后来又学了C++,是清华大学出版

的<<C++程序设计>>,用的编译器是VC6.0.这本书也是讲了一些很基础的东西.给我的感觉就是 "类"在这里是无处不在, 封装,继承,派

生,多态,还有一个是泛型编程都在这本书被提到,相对于只学过C的人应该会觉得很新鲜.但我很多时候在做作业时都是C跟C++混合使

用,想起来会觉得很好笑.并没有把C++特性很好的发挥出来.

后来学过<<visual c++ 6从入门到精通>> 这里面基本是讲MFC了,类在此时才发挥它的魄力,这时基本都是用C++编写代码了.
但代码写的很烂,没有想过要优化它.

暑假回家看了<<C++primer>> 如获至宝,容器与泛型编程给我有一种耳目一新的感觉.此书是这样被评价的:久负盛名的C++经典教程,
结合两位C++大师的精妙见解. 写的挺细的,你会学到很多新东西 . 但我个人不建议以它做为最初的入门教材,可结合入门教材看.

还看了<<effective c++>> 如果你学过C++并且已经写过很多觉得很满意的作品,但是你说你没看过甚至没听过这本书,我得跟你说你

错过了优化编程思想的机会,呵呵有点夸张. 给你们简述下简介:当你读过这本书后,就获得迅速提升自己C++功力的一个契机,帮助跨

越C++的重重险阻,领略高处才有的壮美风光,做一个成功而快乐的C++程序员.
你也许会怦然心动,确是一本好书.效率,安全,在此淋漓尽现. 令人拍手称快. 你会突然觉得自己以前写的代码是多么的糟糕,这时你
已经往前迈了一步了.
这本书建议看完<<c++primer>>后再看,因为里面有涉及容器等一基本教材未提及或未深入的东西,如果感兴趣还可以看看<<more effective c++>> <<effective stl>>

我的个人的拙见可以这样学C++:


第一步:首先入门可以从 国内出版的 教材入门 如 
潭浩强的<<C程序设计>> 
清华大学出版的<<C++程序设计>>等 能了解一些基本语法 会编写些简单的程序 

第二步:看<<C++ primer>>我绝对对赞同这是本好书,面也广.<<The C++ programing Language>>这本书的名头也是让我如雷灌耳,上图书馆找了半天没找到,唉伤心..它们能使你更全面的了解C++ 这时你对泛型编程.模版.容器.标准库函数 等都会有一些了解,甚至会有一些自己的独到见解了.以后看到这些代码不至于会不知道是什么东西 (当然这书可以结合第一步的书看) 
浏览下<<The C++ Standard Library>>了解下函数标准函数 因为你可能以后会经常在书上或网上看到它们的身影.你首先应该知道那是标准库里的函数.然后不明白可以再参考下这本书.我知道的有一本比较小一点的书<<C/C++标准函数查询>>也可以做为参考.

第三步:这时候C++基本的东西你已经掌握了差不多了 学习windows的程序设计 
两本精典之作 <<windows程序设计>> 
<<windows核心编程>>
(这两本书至少看完一本后,如果想进一步学网络编程<<winsock网络程序设计>><<windows网络编程>>之类的书可以看看)
如果有兴趣可以看些LINUX的编程书 <<自己动手写操作系统>>
<<linux内核编程>>....... 
还有这个期间要结合 <<计算机组成原理>>
<<编译原理>>之类的书看 
然后再看VC++类的书 <<深入浅出MFC>>
《VC++技术内幕》等 
有空的话可以学点汇编 汇编的书我就不介绍了 因为不是了解很多

第四步:第三步完了,差不多能写一些自己的小软件了,这时候要进一步发展学些复杂的,效率的.
看 <<数据结构>> 学习算法.
看 <<effective c++>>
《Exceptional C++中文版》 
<<thinking in C++>> 这本书在国外有很高的评价,第一卷还简单一点,第二卷我啃了半天没啃下(标准库不是很熟悉的结果), 所以最好要看完<<the C++ progarming language>>或<<C++primer>>(当然其他书大家自己发掘了)再看它 
《C++ Templates全览(简体版)》,人民邮电出版社  模板是不是令你觉得很新颖,那去学他吧. 
进一步提高自己,养成良好编写习惯还有很多好书下面我会列出来(不是说要你们全看,当然看的越多越好)

第五步:看<<软件工程>>
<<软件体系结构>>之类的书  
说实话 考 程序员 软件设计师等 软件工程类的知识是少不了的呵呵 
个人建议,也许对某些人不适合,也许某些人有更好的建议.给大家一个选择了..
在这学习期间,可以尝试去考个程序员或软件设计师,系统分析师之类的证书,对将来就业有好处的.有空多到网上与人交流.提高自己


其他书我VC的看过很多,但C++的很少了.可是比较出名的我就列出来供大家参考(查至网上)

1。The C++ Programming Language(Bjarne Stroustrup)
2。 Inside The C++ Object Model (Stanley B. Lippman)
(这本书介绍一些C++的内部实现)
3。Advanced C++ Programming Styles And Idioms (James O. Coplien)
(这本书介绍一些C++编程的习惯用法)
4。 STL Tutorial and Reference Guide (David R. Musser) (Professor Musser
STL的创始人之一。这本书介绍Generic Programming
的思想和标准)。
5。 Design Patterns (Erich Gamma) (很精典的面向对象设计的组件和实例)
当然,看任何一本书的时候都要动手(试例程或做习题)。然后尝试着在课堂项目中把书中的方法试验一下,以加深印象。"

国外C++几乎所有的教材都被翻译为中文了,如果没有翻译的也已经有影印版出版。
TCPL和D&E
TCPL和D&E分别是《The C++ Programming Language》和《The Design and Evolution of C++》的简称,均出自Bjarne Stroustrup之手。说它们是C++语言圣经,并不为过。
中文名称:
《C++程序设计语言(特别版)》,机械工业出版社
《C++语言的设计和演化》,机械工业出版社
入门教程
Stanley B. Lippman, Essential C++
《Essential C++中文版》,华中科技大学出版社
《Essential C++(影印版)》,中国电力出版社
高效、健壮编程
《Exceptional C++中文版》,中国电力出版社
《More Exceptional C++中文版》,华中科技大学出版社
模板和泛型编程
《C++ Templates全览(简体版)》,人民邮电出版社
《C++设计新思维:泛型编程与设计模式之应用》,华中科技大学出版社
标准库
《C++标准程序库:自修教程与参考手册》,华中科技大学出版社
《Effective STL(影印版)》,中国电力出版社
网络编程
《C++网络编程,卷1:运用ACE和模式消除复杂性》,华中科技大学出版社
《C++网络编程,卷2:基于 ACE 和框架的系统化复用》,电子工业出版社
杂项
《C++编程思想(第2版)第1卷:标准C++导引》,机械工业出版社
《C++编程思想(英文版 第2版)》,机械工业出版社
《C++沉思录》,人民邮电出版社
《深度探索C++对象模型》,华中科技大学出版社
《深度探索C++对象模型(影印版)》,中国电力出版社
C++工程领域的最高境界:
《设计模式:可复用面向对象软件的基础》,机械工业出版社==============================================以上只是我个人的一点点自己的看法 由于自己还是菜鸟认识不是很深 所以 又找到了一篇我
认识的一个编程爱好者的文章 希望对大家有帮助
他网名叫 仙水兄
【讨论】个人认为学习C、C++、VC编程必读的几本书。
今日无事,好久没到这里来发帖了,看见还有人推荐书籍,所以我也来推荐几本自己觉得C类语言编程必读的书:

只要认真的读了以下两本书和作了相关的习题,算是入门了。
士兵:《C程序设计》(谭浩强)
士官:《C++程序设计》+《C++程序设计习题解答》(钱能)

如果要想在C++上有一定功力,这两本是必读的书。 )
排长:《effective c++》 和《数据结构 用面向对象方法与C++描述》数据结构不一定要精通但应该了解的。

这时候比较想编写有界面的应用程序了,此书作为基础也好、进阶也罢都是必读之书。
连长:《windows程序设计》(上、下)

如果觉得自己的C++水平够好了,下面这本书将使你重新认识这个自以为很熟悉并且古老的语言。
营长:《提高C++性能的编程技术》
)
要想开发应用软件而且比较方便但又不知道如何入门应该读的书:
团长:《VC++技术内幕》第四版、《深入浅出MFC》(这本书毕竟是自己人所写,强烈支持的)

有自己做点游戏的想法应该先读:
旅长:《C++游戏设计基础》 荣钦科技(由于此书讲得有些点到为止的“境界”所以把它当作可有可无的旅长吧^_^,不过对于新手而言是个不错的起步!)

真正想自己开发点好游戏的人必读之书:
师座:《windows游戏编程大师技巧》 原书第二版+《传奇的故事学VC编游戏》 (此两本书确实经典,但后一本已经绝版了。。。)

想在游戏开发中(因为C++现在主要使用来开发游戏的)大展宏图的人应该看的书
军座:《游戏开发物理学》如果真的把这本书弄懂了,熟悉了,军座非阁下莫属。
S
后面的好书请各位朋友推荐自己喜欢的了,我只是闲来无事,故作此帖。呵呵

  评论这张
 
阅读(1187)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018