如何選好C++書籍?
我覺(jué)得想要學(xué)好C++這門語(yǔ)言,不但要學(xué)好理論上的知識(shí),還要多多的實(shí)踐在空閑的時(shí)間,去看一些關(guān)于C++書籍,相信里面的內(nèi)容會(huì)給大家?guī)?lái)有用的信息的。
而且,對(duì)于上點(diǎn)規(guī)模的工程,為了構(gòu)建OO系統(tǒng),在OOA、OOD階段,設(shè)計(jì) 者需要極高的水準(zhǔn).而以O(shè)OP為一典范亦作為OOP代表的C++在語(yǔ)法語(yǔ)義的設(shè)計(jì)上明顯采用為了功能而不惜增加設(shè)計(jì)復(fù)雜度的策略.然而這一切的復(fù)雜,自然帶來(lái)了好處,包括系統(tǒng)的可擴(kuò)展性、可重用性等.
這里好象存在一層很微妙的關(guān)系,上規(guī)模的系統(tǒng)為了可擴(kuò)展性、可重用性等優(yōu)點(diǎn)選擇OO方法學(xué),然而在OOA、OOD階段就需要極大的投入(也許在00方法學(xué)中,A和D在軟件工程中的地位體現(xiàn)的更明顯吧~).
這個(gè)世界關(guān)于語(yǔ)言之間的討論可能時(shí)刻進(jìn)行著,個(gè)人一直認(rèn)為:
1.首先每種語(yǔ)言有自己的適用領(lǐng)域,就應(yīng)用而言,沒(méi)有必要將語(yǔ)言勉強(qiáng)的拿到一起比較. 構(gòu)建企業(yè)信息系統(tǒng),自然會(huì)選擇Java、dotNET或其它的方案(事實(shí)上,這種系統(tǒng)一般應(yīng) 該多種語(yǔ)言協(xié)同開(kāi)發(fā),以獲得部件性能最佳).可能多種語(yǔ)言同適合某個(gè)項(xiàng)目,那么具體就自己裁決了.
譬如做一個(gè)信息管理系統(tǒng),選擇C++書籍的絕對(duì)很少,PB或Delphi、VB都是不錯(cuò)的選擇.在初學(xué)習(xí)階段"因愛(ài)而選(更多的具有偶然性或者與身處環(huán)境有關(guān))"、對(duì)于開(kāi)發(fā)者基本是"因用而選".在成熟后,"因用而學(xué)"我感覺(jué)是根本也是最實(shí)際的指導(dǎo)原則.。#t#
2.關(guān)于語(yǔ)言復(fù)雜度的問(wèn)題:語(yǔ)言是工具,是不需要也不能太復(fù)雜的.我一直支持語(yǔ)言應(yīng)該朝專業(yè)化(這里指針對(duì)義務(wù)和特定應(yīng)用場(chǎng)合)和簡(jiǎn)單化方向發(fā)展.這才是語(yǔ)言的本質(zhì)之所在.業(yè)務(wù)是軟件實(shí)施的根本.對(duì)于軟件開(kāi)發(fā)著來(lái)說(shuō)很多情況下,業(yè)務(wù)是最難搞定的。
或者說(shuō),用軟件來(lái)真實(shí)細(xì)致安全的模擬業(yè)務(wù)是很困難的.前幾天,學(xué)籍管理科的老師還跟我說(shuō),他們的一個(gè)學(xué)籍管理軟件讓兩個(gè)研究生不斷的完善.三年才算[完全符合他的業(yè)務(wù)要求].如果你只是耳聞某某語(yǔ)言何等的復(fù)雜、難學(xué)而學(xué)之,那么可能你錯(cuò)了~就個(gè)人而言,為了技術(shù)而技術(shù)是不可取的:)
3.然而這個(gè)世界是現(xiàn)實(shí)的,不如你想象的那樣.并不是所有領(lǐng)域都有簡(jiǎn)單、強(qiáng)大、貼近業(yè)務(wù) 的語(yǔ)言.在這個(gè)層次上說(shuō),對(duì)于獻(xiàn)身企業(yè)級(jí)信息應(yīng)用系統(tǒng)開(kāi)發(fā)者.Java、C#、Object-Pascal等的確是福音~~然而在系統(tǒng)軟件和其它對(duì)性能、控制程度要求較高的如 工控系統(tǒng)、高性能計(jì)算,實(shí)時(shí)系統(tǒng)。
軍用軟件等領(lǐng)域可就缺不了C++(C)(不過(guò)這些領(lǐng)域 明顯的專業(yè)知識(shí)占絕對(duì)部分的重量).可見(jiàn),緊從語(yǔ)言上說(shuō),C++書籍依然占據(jù)著一片天地. 嚴(yán)格來(lái)講,C是作為C++的一競(jìng)爭(zhēng)對(duì)手出現(xiàn)的(不管這些了:))。
市面上其它的C++書籍可牛車載,我感覺(jué)除了《The Design And Evolution Of C++》是異品,值得一讀.其它的不建議花太多的時(shí)間,哪怕是Bjarne Stroustrup、Stanley B.Lippman等的作品.自然,你有時(shí)間讀更好,反正我現(xiàn)在有點(diǎn)后悔,當(dāng)初只顧多,不顧深讀,反復(fù)讀.經(jīng)典的書不在本數(shù)多,在于每本讀的遍數(shù)多.一經(jīng)驗(yàn)之談,BBS上經(jīng)常有人,在介紹COM技術(shù)書籍時(shí),想也不想的指出。
入門級(jí)<<Inside The COM>>.是這樣的嗎?我想,正如Dale Rogerson所說(shuō),將這本書完全看懂,你就是COM專家了~~書中,作者很多話可能你沒(méi)有注意到,因?yàn)槟氵€不懂之,對(duì)之沒(méi)感覺(jué),一遍翻下來(lái),感覺(jué) 哦~~簡(jiǎn)單~全看了 :) 這些書,跟國(guó)內(nèi)的很多書籍最大的不同就是 國(guó)內(nèi)書籍的作者寫的出,可能自己還不懂:)Copy什么資料上的:)?