|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
在linux中学习命令的最好办法是学习Shell脚本编程,Shell脚本比起其他语言来学习简单,但是功能却十分强大.通过学习Shell编程,能让你掌握大量的linux命令。
人们经常问我有甚么C++和编程的书本保举,大概是由于我在PowerDNS有一个关于“编写可读性优秀的C++代码”的演讲。这篇博文能够作为我对上述成绩的一个回覆,同时也包括了一些更普遍的条记编程。假如你有任何增补或喜好的书本可是我没有提到,请给留言提醒,我盘算一有旧书就更新这个页面。
第一个注重项:假如你盘算进修C++,请务必进修最新版的C++2011。这个版本的C++移除很多由C++壮大带来的一些疾苦的地方。别的,也不必忧虑C++2014的书本,年夜多半编译器已入手下手撑持它了。
进修编程
进修编程包括以下几个主要方面:
- 懂得言语的语法
- 晓得那些特征可使用和什么时候利用
- 写出可读性好的代码
- 在一个更高条理计划布局优秀的程序
为了进修一门言语,一般我们能够找到叫《X言语编程》的书。这也构成了一个潜划定规矩:当你创立一门严厉的言语的时分,你必要编写如许一本书。进修言语有点像进修作文,但这其实不意味着你可以俄然酿成一个出名散文作家!
关于C++,这里有两原形关的书:
- 《C程序计划言语》(BrianW.Kernighan,DenisM.Ritchie,TCPL)。这本书不是关于C++的,不外一切与C有关的器材都和C++有关。比方,这本书附带的例子都能够看做C++的例子,只是否是真实的C,由于C++比C的编译器请求加倍严厉。可是年夜部分编写优秀的C程序都能够在C++下编译经由过程,TCPL是一本小书,而且被誉为X言语编程中最好的书本。书中每页都充斥伶俐。
- 《C++程序计划言语》(BjarneStroustrup),一本出色的书,书中的每页一样充斥伶俐。这本书有1400页。VerityStob对这本书有强烈热闹的批评。在TCPL中,我们读到的是“C不是一个年夜的言语,因而也不必要一本长篇年夜论的书来说解”,可是解说C++的书却有1400页。只管这本书很难一页一页地读下往(不外,我几近读过了书中的每页),可是我倡议每一个人都拥一本。它解说了C++中的每个方面,而且解说得十分不错。有这本书能够作为C++的参考,你的编程生活会受害很多。
我必要声明一点,《C程序计划言语》不是一本进修C++的进门书本,这本书是用来引导你进修的,同时,《C程序计划言语》也独自提取了《ATourofC++》篇章。
C++不但是一门言语,也是指一个函数库。在《C++程序计划言语》中也解说了C++尺度库,为了周全懂得C++尺度库,我保举:
- 《C++尺度程序库:自修教程与参考手册》(NikolaiJosuttis),和《C++程序计划言语》一样,这也是一本年夜部头的书。可是这本书涵盖了C++尺度库的每个方面(同时,也被称作C++尺度模版库),第二版中涵盖了C++2011尺度。
假如你之前处置初级言语好比python,perl大概java,C和C++大概让人生畏。不像其他言语,C/C++十分靠近硬件。这也有一个长处,能够充实使用硬件上风,但也让你必要面临实际细节。SimonTatham(作为Putty的开辟者和编写《缺掉代码怪味》的作者而出名,固然他如今利用C开辟)写了一篇十分棒的文档:《TheDescenttoC》,这会下降你的进修难度,乃至履历丰厚的C开辟者也大概受害一二。
假如你读了下面三本书和链接,你已能够纯熟把握C++了,而且善用C++尺度库。不外,你还没有进修怎样利用和什么时候合适利用C++的特征。C++作为一门壮大的言语,有句话说:“利用C,你出错大概砸到本人的脚,而利用C++,你出错大概招致你整条腿都废了“,这说的都是真的。
别的,C++壮大的地方在于你能够持续利用你之前言语的开辟体例。“我能够在任何言语中写编写FORTRAN代码”。不外如许倒霉于你成为一个更好的开辟者。
用好C++
这里也有三本书,作者都是ScottMeyers,这将年夜年夜简化一个发愤于C++开辟的人的生存:
- 《EffectiveC++》——枚举了一些罕见毛病,有效的特征和编程中必要注重的事项。比来更新于2005年。
- 《MoreEffectiveC++》——和下面一样,不外报告得更多一些,一样值得你往浏览。
- 《EffectiveSTL》——最初更新于2001年,和《EffectiveC++》一样,不外存眷于C++尺度库。
假如你只想读个中一本,选择《EffectiveC++》,假如你想选择两本,再选择《EffectiveSTL》。
必要注重的是,Scott正在筹办一本新的书,周全掩盖了新的C++2014尺度(这能够看着是对C++2011尺度的改善,而且以后年夜多半编译器已撑持了C++2014)。一旦这本书出书,你应该第一工夫购进,本书的预览部分已看起来相称棒了。
更新:很多读者都保举了StanleyLippman的《C++Primer》,我不懂得这本书,不外它更新了C++2011尺度而且收到了良多赞誉,请告知我你的概念。
编写优秀的代码
上面提到的书都会商了代码作风,假如编写代码,不外它们实在局限更广。引导你怎样编写可读性好的代码的书有:
- 《程序计划理论》,(BrianW.Kernighan,RobPike,TPoP),这不是一本特定于C++的书,不外议论了很多关于怎样构造代码,什么时候优化代码,什么时候不做优化,假如调试和怎样编写代码制止调试等等,我以为每一个开辟构造都应当有如许一本书。
- 《Linux内核代码标准》(LinusTorvalds),这也不是一本关于C++的书,可是在第4节“定名”,第六节“函数”和第八节“正文”中,我们都能够进修到很多。
每一个想要进步其代码的程序员最好仔细阅览《程序计划理论》的每页。
计划年夜范围的代码
我只晓得一本书报告了这一点,我的一些头脑构成也有赖于它。
- 《Large-ScaleC++SoftwareDesign》(JohnLakos),只管本书有些岁首,内里的一些倡议用于引导现在为缺少存储而且功能低下的呆板开辟程序的人们,从这本书我进修了怎样将一个庞大体系拆解为多个成心义的模块。出格必要注重的是在轮回中处置依附代码。那些分外呈现的细节,使得你的代码几近不克不及测试,由于每一个模块都十分依附其他模块。
最初,祝进修C++的童鞋前进!
原文链接:berthubert翻译:伯乐在线-周昌鸿
要多动手,不要怕什么搞坏了怎么办,你不搞坏,不去动手,就永远不会有收获,既然你在linux中是自由的,那就发挥自己的权利; |
|