【编程思想】给学C++的人N条忠告

N条忠告:

1.把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.把时髦的技术挂在嘴边,还不如把过时的技术记在心里;

11.学习编程最好的方法之一就是阅读源代码;

12.在任何时刻都不要认为自己手中的书已经足够了;

13.请阅读《The Standard C++ Bible》(中文版:标准C++宝典),掌握C++标准;

14.看得懂的书,请仔细看;看不懂的书,请硬着头皮看;

15.别指望看第一遍书就能记住和掌握什么——请看第二遍、第三遍;

16.请看《Effective C++》和《More Effective C++》以及《Exceptional C++》;

17.不要停留在集成开发环境的摇篮上,要学会控制集成开发环境,还要学会用命令行方式处理程序;

18.和别人一起讨论有意义的C++知识点,而不是争吵XX行不行或者YY与ZZ哪个好;

19.请看《程序设计实践》,并严格的按照其要求去做;

20.不要因为C和C++中有一些语法和关键字看上去相同,就认为它们的意义和作用完全一样;

21.C++绝不是所谓的C的“扩充”——如果C++一开始就起名叫Z语言,你一定不会把C和Z语言联系得那么紧密;

22.请不要认为学过XX语言再改学C++会有什么问题——你只不过又在学一门全新的语言而已;

23.读完了《Inside The C++ Object Model》以后再来认定自己是不是已经学会了C++;

24.学习编程的秘诀是:编程,编程,再编程;

25.请留意下列书籍:《C++面向对象高效编程(C++ Effective Object-Oriented Software Construction)》《面向对象软件构造(Object-Oriented Software Construction)》《设计模式(Design Patterns)》《The Art of Computer Programming》;

26.请把书上的程序例子亲手输入到电脑上实践,即使配套光盘中有源代码;

27.把在书中看到的有意义的例子扩充;

28.请重视C++中的异常处理技术,并将其切实的运用到自己的程序中;

29.经常回顾自己以前写过的程序,并尝试重写,把自己学到的新知识运用进去;

30.不要漏掉书中任何一个练习题——请全部做完并记录下解题思路;

31.C++语言和C++的集成开发环境要同时学习和掌握;

32.既然决定了学C++,就请坚持学下去,因为学习程序设计语言的目的是掌握程序设计技术,而程序设计技术是跨语言的;

33.就让C++语言的各种平台和开发环境去激烈的竞争吧,我们要以学习C++语言本身为主;

34.当你写C++程序写到一半却发现自己用的方法很拙劣时,请不要马上停手;请尽快将余下的部分粗略的完成以保证这个设计的完整性,然后分析自己的错误并重新设计和编写(参见43);

35.别心急,设计C++的class确实不容易;自己程序中的class和自己的class设计水平是在不断的编程实践中完善和发展的;

36.决不要因为程序“很小”就不遵循某些你不熟练的规则——好习惯是培养出来的,而不是一次记住的;

37.每学到一个C++难点的时候,尝试着对别人讲解这个知识点并让他理解——你能讲清楚才说明你真的理解了;

38.记录下在和别人交流时发现的自己忽视或不理解的知识点;

39.请不断的对自己写的程序提出更高的要求,哪怕你的程序版本号会变成Version 100.XX;

40.保存好你写过的所有的程序——那是你最好的积累之一;

41.请不要做浮躁的人;

42.请热爱C++!

本文选自shiyang blog

原文发布于微信公众号 - 程序员互动联盟(coder_online)

原文发表时间:2015-06-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏IT大咖说

Metrics:让微服务运行更透明

摘要 让微服务运行状态清晰可见。 Metrics是什么 直译是“度量”,不同的领域定义有所区别,在微服务领域中的定义: “对微服务的某个指标给予一个可量化程度的...

36412
来自专栏针针小站

【IFE】Day 1 – 百度前端技术学院 基础学院 学习笔记(一)

1436
来自专栏python小白到大牛

50 行 Python 代码,带你追到最心爱的人

人们一提到程序员第一反应就是:我知道!他们工资很高啊!但大部分都是单身狗,不懂得幽默风趣,只是每天穿格子 polo 衫的宅男一个。甚至程序员自己也这样形容自己:...

782
来自专栏角落的白板报

[52ABP实战系列] .NET CORE实战入门视频课程出来啦

早安! 各位道友好,.NET CORE入门视频的第一章已经录制完毕了。视频会放在传课网、网易云课堂及segment fault。 本来想的是第一章合计6个小节...

3455
来自专栏存储

分布式架构—基本思想汇总

往期精选 在互联网大行其道的今天,各种分布式系统已经司空见惯。搜索引擎、电商网站、微博、微信、O2O平台。。凡是涉及到大规模用户、高并发访问的,无一不是分布式。...

18810
来自专栏北京马哥教育

『九个月实现破亿用户的可扩展架构』学习笔记

昨晚把美拍架构负责人洪小军在Qcon上的『九个月实现破亿用户的可扩展架构』分享看了一遍(其实那场QCon我也在现场,但是当时小军这个会场实在太多人了,而且当时北...

2875
来自专栏企鹅号快讯

如何处理 Python 入门难以进步的现象?

如何处理 Python 入门难以进步的现象? 问题描述: 看视频看呀看呀看, 看完了,基础的都懂了 然后就想写点东西 可是无从下手呀,我以为基础不扎实,又去看视...

1896
来自专栏Java帮帮-微信公众号-技术文章全总结

Java就业指导书

前言 想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,面试者在面试之前到底需要准备哪些东西呢?本文陈列的这些内容既可以作为个人简历中的内容,也可...

2114
来自专栏ThoughtWorks

Serverless架构实践初探|洞见

随着云计算技术的进步,软件系统的架构方式也因此发生着一些变化,其中Serverless架构就是这里的一个典型的例子。 ? (图片来自:http://t.cn/R...

3337
来自专栏Java帮帮-微信公众号-技术文章全总结

如何评价2016年7款最流行的Java框架?

? 大多数人选择Java可能只是因为听说Java前景好、Java比较好找工作、Java语言在TIOBE排行榜上一直位于前三等等之类的原因,但是Java具体好在...

3917

扫描关注云+社区