• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            huaxiazhihuo

             

            試論C++類庫(kù)開(kāi)發(fā)之難

                     很久很久以前,世界上曾經(jīng)存在著這么一種語(yǔ)言,用它寫出來(lái)的代碼,既能保證高效的運(yùn)行效率,又兼具優(yōu)雅十足的美感,并且,所有語(yǔ)言存在著的不足,都可以通過(guò)添加新的自定義的類型來(lái)實(shí)現(xiàn)出來(lái),并且,新的類型,只要做得好,可以與原有的類型無(wú)縫交互。在它的世界里面,那是一切皆有可能。并且,它還承諾,雖然它的功能非常豐富,但各個(gè)功能特性都可以和睦相處,而且,你代碼中不必要用到某項(xiàng)功能時(shí),你完全不必為這項(xiàng)功能付出那怕一丁點(diǎn)的代價(jià),如果這個(gè)語(yǔ)言愿意作一點(diǎn)點(diǎn)妥協(xié),可能它就不是現(xiàn)在的這個(gè)樣子,至少將更加容易使用。所有它承諾的一切,乍聽(tīng)起來(lái)美妙無(wú)比,而且,它也似乎做到了,真的做到了馬兒既能跑,又能吃盡量少的草,前提是開(kāi)發(fā)人員要小心翼翼地用好這門語(yǔ)言的一切特性。只可惜事與愿違,這門語(yǔ)言確實(shí)看起來(lái),真的可以創(chuàng)造出完美的東西,但事實(shí)上,沒(méi)有人能用它寫出過(guò)一個(gè)好東西,那怕是簡(jiǎn)簡(jiǎn)單單的字符串,要做得大多數(shù)人拍手叫好,也是千難萬(wàn)難,完美的字符串,從來(lái)就沒(méi)有出現(xiàn)過(guò)。各位同學(xué),自然知道在下說(shuō)的是什么語(yǔ)言,等千呼萬(wàn)喚的C++1X始出來(lái)之后, 真不知道還有什么東西,是C++沒(méi)法做的,要在C++中增加幾種新的編程模式,也不會(huì)有太多的困難。起碼,函數(shù)式的編程,使函數(shù)好像成為一等公民,絕不是什么難事。
                      C++本身自然不會(huì)有什么問(wèn)題,說(shuō)它復(fù)雜吧,它確實(shí)復(fù)雜,但是完全可以無(wú)視,異常不好,禁用就是;多繼承很壞,不用就是;模板過(guò)于復(fù)雜,忘了它吧;……,起碼它做到了,你不喜歡的特性,你可以不必付出任何代價(jià)。但是,成千上萬(wàn)的C++高手大牛巨俠,這么多年下來(lái),卻沒(méi)有搞出幾個(gè)似模似樣的類庫(kù)出來(lái),除了STL(其實(shí)STL也有一些問(wèn)題),難道是程序員錯(cuò)了,難道是他們?nèi)e(cuò)了嗎?可是,C、JAVA、PYTHON它們,怎么就不存在這些問(wèn)題呢,里頭的好東西還真不少,起碼在它們的圈子里面,碼農(nóng)們都覺(jué)得類庫(kù)沒(méi)問(wèn)題,很好,用起來(lái)很放心,可以放心的使用。又或者是,C++碼農(nóng)對(duì)自家的類庫(kù)要求過(guò)高了,他們的眼光太挑剔了,大家人人都有多疑癥,但是,一旦他們使用其他的語(yǔ)言,又很樂(lè)意使用其他語(yǔ)言所提供的類庫(kù)或者是框架,怎么就不會(huì)那樣疑神疑鬼,沒(méi)有各種并發(fā)癥,起碼在下是這樣的,你要說(shuō)C++沒(méi)問(wèn)題,那鬼才愿意相信呢?那么,假如C++有問(wèn)題,問(wèn)題又是那里呢?
                      我以為,C++的問(wèn)題,就在于它似乎很鼓勵(lì)碼農(nóng)制造輪子,撰寫類庫(kù),然后對(duì)所寫的類庫(kù)貌似沒(méi)有過(guò)多的要求,但實(shí)際上,C++對(duì)類庫(kù)的要求,是所有語(yǔ)言中最高的。好比,要你寫的軟件,需求很不明確,貌似用戶說(shuō),你隨便寫,然后它能完成任務(wù)就可以了,但實(shí)際上這樣的軟件最難開(kāi)發(fā)了。知道嗎?C++的類庫(kù),有什么樣的要求:1、運(yùn)行的效率要高,處理一切細(xì)節(jié),高效源于對(duì)細(xì)節(jié)的特定處理;2、表現(xiàn)出來(lái)的接口和語(yǔ)義要無(wú)限接近原始內(nèi)嵌的類型,值語(yǔ)義,吖的,這要求也太高了。3、要有足夠的通用性,滿足抽象的需要。這三條的任何一條都不是什么省油的燈,直接可以K死秒殺多少C++高手的幾千萬(wàn)只脆弱的腦細(xì)胞。這三條下來(lái),本身就差不多是一個(gè)難以完成的事情,但是,這還不是最要命。最能搞死人的,是C++又提供了太多的豐富特性,什么模板、操作符重載、異常、多繼承、內(nèi)聯(lián)、……,心理學(xué)的一項(xiàng)研究表明,當(dāng)選擇太多之時(shí),當(dāng)事人就會(huì)分散精力,不知道如何選擇。用C++開(kāi)發(fā)類庫(kù),眼前存在著無(wú)限種選擇,貌似條條大路通羅馬,但實(shí)際上,卻是條條大路是死路。但這也沒(méi)什么,最后一擊,如果沒(méi)有必要,鬼才愿意費(fèi)心費(fèi)神寫類庫(kù),關(guān)鍵在于C++只是提供實(shí)現(xiàn)高標(biāo)準(zhǔn)類庫(kù)的基本平臺(tái)而已,語(yǔ)言本身就沒(méi)有一點(diǎn)點(diǎn)能用的實(shí)在的東西,那怕一個(gè)簡(jiǎn)單的字符串類,一切都必須通過(guò)類庫(kù)來(lái)完成,它一開(kāi)始一直都在鼓勵(lì)碼農(nóng)寫類庫(kù),試問(wèn)普天之下,有那個(gè)C++碼迷,能夠抑制造輪子的誘惑,于是,悲劇就誕生了。
                      反觀其他的語(yǔ)言,為什么就不存在這些問(wèn)題呢?
                      在C里面,是絕對(duì)不會(huì)出現(xiàn)C++的類庫(kù)困境,首先,它只有一種選擇讓你開(kāi)發(fā)類庫(kù),那就是函數(shù)和函數(shù)指針,外加結(jié)構(gòu)體、數(shù)組,或者,必要的時(shí)候,使用上點(diǎn)宏,嗯,就只有這么多。你要用就用,不用就拉倒,在這么有限的條件,你只能做出最簡(jiǎn)單但卻又是最精妙的設(shè)計(jì),都能直達(dá)問(wèn)題的本質(zhì)。基本上,C的設(shè)計(jì),不會(huì)存在一點(diǎn)點(diǎn)多余的抽象層次,一拳一拳,都打在要害上,針針見(jiàn)血。更何況,C的要求也不高,除了效率之外,就是要保持函數(shù)接口語(yǔ)義的清晰,而這并不難做到。
                      那么,在高級(jí)語(yǔ)言中,又是另一番天地了。當(dāng)然,它們也提供了多數(shù)C++的豐富特性,你自然有很多選擇,但是,這些語(yǔ)義卻屏蔽了很多底層的細(xì)節(jié),并且提供了豐富的語(yǔ)言平臺(tái)特性,什么反射啊、豐富的API框架,單是垃圾回收和單繼承,就功德無(wú)量,足以拯救多少弱小脆弱的靈魂。是的,人家效率確實(shí)不太高,也沒(méi)有要求值語(yǔ)義,但這不要緊,因?yàn)槿思艺Z(yǔ)言一開(kāi)始就沒(méi)有這樣的效率標(biāo)榜要求,它們一上來(lái)就讓碼農(nóng)直面慘淡的應(yīng)用,進(jìn)入問(wèn)題領(lǐng)域,不需要撰寫什么高通用性的類,因?yàn)槠脚_(tái)本身就提供了,你要寫的類,都是問(wèn)題領(lǐng)域中的東西。這實(shí)在能解救多少腦細(xì)胞啊,減少多少不必要的工作量啊呢。
                      沒(méi)有必要的類庫(kù)來(lái)支持,C++做開(kāi)發(fā),工作量相當(dāng)浩大,并且還容易生產(chǎn)出一堆不成熟的通用類;但是,必要的成熟的類庫(kù),市面上又沒(méi)有多少個(gè),目前的所謂的高級(jí)的C++類庫(kù),大多數(shù)都在為了C++而C++,你們知道我在說(shuō)的是那一個(gè)的。當(dāng)然,俺是沒(méi)能力寫出什么類庫(kù)的,所謂的眼高手低,大概就是這樣吧。
             或者,痛并快樂(lè)著,是C++碼迷的持久不退的熱情所在。只是,人生何其寶貴,將它們浪費(fèi)在C++上,實(shí)在有點(diǎn)不值得。當(dāng)然,活著只要快樂(lè)就好,C++也確實(shí)能給人帶來(lái)很多快樂(lè)。

            posted on 2012-05-30 16:53 華夏之火 閱讀(4519) 評(píng)論(31)  編輯 收藏 引用

            評(píng)論

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-05-30 18:19 Richard Wei

            的確,C++ STL提供的都是最基本的功能,上層應(yīng)用的庫(kù)還是要自己封裝  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-05-30 22:13 鐘謝偉

            工具拿來(lái)用就成,什么合適就用什么,這是很簡(jiǎn)單的道理,沒(méi)有任何一種語(yǔ)言是萬(wàn)能的。庫(kù)的存在還是提高了很大的開(kāi)發(fā)效率
            適合則用,不適合就丟棄,用別的,樹(shù)挪死,人挪活嘛!  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-05-31 01:52 華夏之火

            @鐘謝偉
            確實(shí),如果沒(méi)有那么多要求,庫(kù)能提高開(kāi)發(fā)效率,就算是再差的框架類庫(kù),好比MFC,也都能夠起到很大的作用。只是,用糟糕的類庫(kù),做出來(lái)的,也都是糟糕的產(chǎn)品。我們?cè)谑褂靡粋€(gè)類庫(kù),類庫(kù)也同時(shí)在要求我們的設(shè)計(jì),必須符合它的使用條件。  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-05-31 08:44 marvin

            關(guān)于語(yǔ)言,可以看看我的博
            http://cnblogs.com/chrome  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-05-31 09:59 溪流

            哈哈,說(shuō)得好  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-05-31 10:28 guilin

            難道這就是前幾天有篇文章寫得C程序員的優(yōu)越感?觀點(diǎn)簡(jiǎn)直不值得一駁,c++的高質(zhì)量庫(kù)多到你不可想像,僅舉幾個(gè)有代表性的庫(kù)

            boost (全面的庫(kù), 網(wǎng)絡(luò) 單元測(cè)試 序列化 文件操作等等都有了)
            補(bǔ)充幾個(gè):
            thrift, protobuf (序列化)
            google-perfertools (內(nèi)存分配器,性能分析)
            google test, google mock(單元測(cè)試)
            google log (log 庫(kù))
            google flags(命令行參數(shù)庫(kù))

              回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-05-31 11:33 華夏之火

            @guilin
            BOOST這種將大部分精力用在語(yǔ)法糖上的玩意,不提也罷。當(dāng)然,BOOST里面也有好幾個(gè)能做實(shí)事的好東西。至于GOOGLE的開(kāi)源庫(kù),確實(shí)不錯(cuò),只是數(shù)量也太少了,遠(yuǎn)遠(yuǎn)沒(méi)法滿足日常開(kāi)發(fā)的需要  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難[未登錄](méi) 2012-05-31 13:18 qq

            @華夏之火
            地球已經(jīng)容不下你了,快去火星吧  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難[未登錄](méi) 2012-05-31 13:29

            mfc不錯(cuò)
            atl也不錯(cuò),就是比較復(fù)雜。
            還是商業(yè)庫(kù)靠譜啊。  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-05-31 13:45 YzL

            完全看不出跟C++有什么直接的關(guān)系,說(shuō)的問(wèn)題基本都是自身對(duì)C++不熟而產(chǎn)生的問(wèn)題,根本不足以說(shuō)明C++就怎么怎么樣。

            說(shuō)C、Java好東西多就是很好,而說(shuō)C++特性多就是分散精力,如果特性多也能算缺點(diǎn),那只能說(shuō)明你對(duì)每項(xiàng)特性都不夠了解,才會(huì)出現(xiàn)所謂的“選擇太多,分散精力”。

            其他語(yǔ)言內(nèi)置類庫(kù)多這就意味著不用經(jīng)常寫可通用/復(fù)用的類?而C++因?yàn)橐?jīng)常寫就“產(chǎn)出一堆不成熟的通用類”,其他語(yǔ)言不經(jīng)常寫反而產(chǎn)出的都是高質(zhì)量類庫(kù)?太扯了吧,類庫(kù)質(zhì)量完全取決于程序員水平,跟語(yǔ)言本身有半毛關(guān)系?

            優(yōu)秀高質(zhì)量的開(kāi)源C++庫(kù)多不勝數(shù),涉及的領(lǐng)域眾多,有哪個(gè)語(yǔ)言的內(nèi)置類庫(kù)能涵蓋/比得上這些更專業(yè)的類庫(kù)?更別提其他收費(fèi)的類庫(kù)了,估計(jì)你做的開(kāi)發(fā)太少,沒(méi)用到罷了。
            Boost、ACE、Xerces-C++、Crypto++、gSOAP、POCO、wxWidgets、Qt、OpenCV、Intel TBB、IBM ICU、Google Skia、Google V8……
            說(shuō)Boost“大部分精力用在語(yǔ)法糖上”,你讀過(guò)幾個(gè)Boost庫(kù)的源碼?說(shuō)BOOST_FOREACH之類的是語(yǔ)法糖可以,但asio、regex、pool、shared_ptr等好多都是很常規(guī)的C++類設(shè)計(jì),十分復(fù)雜的模版技巧也不是特別多,何來(lái)大部分之說(shuō)?  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難[未登錄](méi) 2012-05-31 13:46 春秋十二月

            基本認(rèn)同作者的看法,對(duì)c++恰到好處的運(yùn)用,兼顧設(shè)計(jì)和性能,依賴于程序員高超的設(shè)計(jì)水平和駕馭能力。通過(guò)學(xué)習(xí)這門學(xué)術(shù)性強(qiáng)的復(fù)雜語(yǔ)言,鍛煉了思維能力。至于實(shí)際開(kāi)發(fā)用不用它,一看個(gè)人興趣和能力,二看軟件需求目標(biāo)。  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-05-31 14:30 華夏之火

            慚愧,你提到的那些,確實(shí)有好幾個(gè)沒(méi)仔細(xì)用過(guò)。我考察了一些知名類庫(kù)之后,基本上都是那個(gè)模樣,抽象過(guò)多,使用又甚是不便,這些類庫(kù)原本可以采用更加簡(jiǎn)單的設(shè)計(jì)方案,真正能讓我稍微心服也只有STL,不免得出了以偏概全的結(jié)論。而反觀C的庫(kù),總是那么簡(jiǎn)潔,直接反映了其所要解決的問(wèn)題的核心,至于JAVA、C#等語(yǔ)言,因?yàn)檎Z(yǔ)言本身已經(jīng)統(tǒng)一了很多細(xì)節(jié)問(wèn)題,它們的類庫(kù)用起來(lái)反而省事多了,就算它們要寫通用性的類,起碼也不用像C++那么多數(shù)量,而且就算要寫,也無(wú)須考慮太多細(xì)節(jié)問(wèn)題,都是直接問(wèn)題領(lǐng)域的@YzL
              回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-05-31 14:35 華夏之火

            @春秋十二月
            現(xiàn)在寫C++代碼,非常小心謹(jǐn)慎的使用里面的特性。就算是定義一個(gè)新的類,也要權(quán)衡再三,并且盡量保持這個(gè)類的成員函數(shù)的數(shù)量要盡可能的少  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-05-31 23:02 春秋十二月

            @華夏之火
            該用就用,有時(shí)并不完全是語(yǔ)言的問(wèn)題,而是設(shè)計(jì),好的設(shè)計(jì)勝過(guò)語(yǔ)言的特性,面向?qū)ο蟮脑O(shè)計(jì)一般要遵循以下原則 1)SRP:?jiǎn)我宦氊?zé) 2)OCP:開(kāi)放封閉 3)DIP:依賴倒置 4)ISP:接口隔離等等。寫一個(gè)類僅完成功能并不難,難的是怎么合理方便使用它,怎么保證安全高效,對(duì)象內(nèi)存怎么管理,怎么與其它類交互協(xié)作等等,而這些都更多是設(shè)計(jì)的問(wèn)題。  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-05-31 23:57 華夏之火

            兄臺(tái)的面向?qū)ο笏枷脒€是停留在這個(gè)幾大原則的初級(jí)階段。在下現(xiàn)在寫代碼,才不管什么原則,大多數(shù)類都能嚴(yán)格地保持自身的獨(dú)立,然后再用頂層代碼將這些類組織起來(lái)@春秋十二月
              回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-06-01 00:08 春秋十二月

            @華夏之火
            呵呵,我倒想看看你的代碼  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-06-01 00:15 華夏之火

            以后有機(jī)會(huì)的,我會(huì)將一些不涉及版權(quán)問(wèn)題的代碼發(fā)上去。之前一時(shí)技癢,也在博客上寫了一點(diǎn)玩具代碼,唉,那些代碼,現(xiàn)在看來(lái),自己都覺(jué)得難受@春秋十二月
              回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-06-01 00:34 春秋十二月

            好的 我期待 相互學(xué)習(xí) 共同提高  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-06-03 00:42 10年碼農(nóng)

            "只是,人生何其寶貴,將它們浪費(fèi)在C++上,實(shí)在有點(diǎn)不值得。", 對(duì)于一個(gè)日復(fù)一日,年復(fù)一年,打算寫到老的碼農(nóng)來(lái)說(shuō),用C++是最能積累經(jīng)驗(yàn)的語(yǔ)言。

            C++已經(jīng)深入骨髓,沒(méi)辦法改了。  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-06-04 00:03 華夏之火

            我也深受C++毒害,咱倆算是同病相憐@10年碼農(nóng)
              回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難[未登錄](méi) 2012-06-04 15:59 chen

            test www.baidu.com  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-06-05 09:36 nullpointer

            缺少好用的,高質(zhì)量的類庫(kù)確實(shí)是C++開(kāi)發(fā)者心中永久的痛。。。  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難[未登錄](méi) 2012-06-06 13:08 bluesea

            @YzL
            同意,尤其C++能做到“特性”之間的“松耦合”,基本讓你可以做到一定程度上的“隨心而欲”:)  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-06-16 17:04 jrry7

            不是語(yǔ)言問(wèn)題,類庫(kù)需要一個(gè)大公司推廣投入。c++不屬于某個(gè)公司,同樣 c 也沒(méi)有一個(gè)通用大類庫(kù)。

            另一個(gè)原因,大類庫(kù),通常包含很多操作系統(tǒng)相關(guān)的東西。如果要做到跨平臺(tái),肯定不如原生來(lái)得快,特性也不如原生的豐富。java這種不在意性能的語(yǔ)言,人們不太計(jì)較。如果是c++,肯定就頗有微詞. 人們用c++的目的,就是要全面控制系統(tǒng)。如果跨平臺(tái)抽象,某些細(xì)節(jié)就無(wú)法控制,結(jié)果還是自己開(kāi)發(fā)基于原生平臺(tái)的庫(kù)去了。所以像 qt 這樣優(yōu)秀的庫(kù),還是無(wú)法廣泛使用。  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-06-18 09:21 華夏之火

            @jrry7
            也許C++本身就不容許一統(tǒng)天下的東西存在。它喜歡自由、多樣化的世界。就算沒(méi)有性能的要求,開(kāi)發(fā)人員都有自己喜歡的風(fēng)格口味,眾口難調(diào)  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-07-09 16:37 哥沒(méi)注冊(cè)

            @YzL
            BOOST這些東西,不是說(shuō)不好,而是因?yàn)樗麤](méi)標(biāo)準(zhǔn)化。
            其實(shí)對(duì)大多數(shù)非高端的程序員來(lái)說(shuō),關(guān)心的不是有沒(méi)有菜,有多少種菜,而是面前是否有盤菜。
            C++程序真的很尷尬,面前只有一盤STL算盤大菜。其他實(shí)用性強(qiáng)點(diǎn)的庫(kù),多,多得眼花繚亂,多得沒(méi)有3,5年經(jīng)驗(yàn)根本無(wú)從選擇
              回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2012-07-09 17:09 華夏之火

            說(shuō)得好,關(guān)鍵是這盤菜是否標(biāo)準(zhǔn)化,能否到處通吃。@哥沒(méi)注冊(cè)
              回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難[未登錄](méi) 2013-01-10 17:43 xxxx

            不同領(lǐng)域有不同領(lǐng)域的應(yīng)用。不會(huì)用java去寫操作系統(tǒng)和數(shù)據(jù)庫(kù),也不會(huì)用c++去寫應(yīng)用領(lǐng)域的快速開(kāi)發(fā)程序。
            這樣評(píng)判c++實(shí)在是比較好笑的事情。  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2013-11-02 02:52 vipcxj

            有一點(diǎn)還是很贊同LZ的,有時(shí)太靈活也不是好事。選擇太多往往使人瞻前顧后,影響開(kāi)發(fā)效率。我寫代碼最頭痛的就是變量,函數(shù)的命名,總是在考慮標(biāo)不標(biāo)準(zhǔn),是否具有代表性,有時(shí)一個(gè)大小寫都要猶豫幾下,要是我能毫不猶豫的命名,肯定開(kāi)發(fā)效率提高一倍。事實(shí)上有太多選擇時(shí),瞻前顧后是必然的,并不是靠意志力就能克服的。所以如果給C++IDE加個(gè)功能,限制C++語(yǔ)法,去掉絕大多數(shù)不常用的功能,只有當(dāng)找不到替代時(shí)才暫時(shí)放開(kāi)限制,估計(jì)能大大提高開(kāi)發(fā)效率。  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2014-05-03 12:06 無(wú)雪

            樓主只做過(guò)碼農(nóng),沒(méi)有真正做過(guò)一次真正的程序員,所以才有此說(shuō),這在中國(guó)太普遍了,因?yàn)樵谥袊?guó)還真的沒(méi)有幾個(gè)公司需要寫系統(tǒng)級(jí)的軟件,當(dāng)你需要寫系統(tǒng)級(jí)軟件(既要軟件的高性能又要軟件的高可維護(hù)性,還涉及很多底層的處理)時(shí),才會(huì)真正用到C++(含C),假若只是寫一點(diǎn)應(yīng)用軟件,你還是用其他的吧。

            你所說(shuō)的所有問(wèn)題,不是C++的問(wèn)題,而是你的寫軟件的水平問(wèn)題,至于所謂的選擇太多,正所謂條條大路通羅馬,你自己選擇一條路就是,沒(méi)必要既想東嫁又想西宿。  回復(fù)  更多評(píng)論   

            # re: 試論C++類庫(kù)開(kāi)發(fā)之難 2014-05-03 12:09 無(wú)雪

            @vipcxj

            函數(shù)、變量的命名有明確的規(guī)范,只要按規(guī)范做即可,你難道沒(méi)有讀過(guò)規(guī)范嗎?
              回復(fù)  更多評(píng)論   


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿(6)

            隨筆分類

            隨筆檔案

            搜索

            積分與排名

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            久久精品免费一区二区三区| 青青青青久久精品国产h| 亚洲国产日韩欧美久久| 综合网日日天干夜夜久久| 999久久久免费精品国产| 久久93精品国产91久久综合| 久久婷婷五月综合成人D啪 | 久久99精品国产麻豆| 久久996热精品xxxx| 色狠狠久久AV五月综合| 久久狠狠一本精品综合网| 久久精品国产亚洲AV不卡| 久久精品国产亚洲一区二区三区| 国产成人无码精品久久久性色 | 久久久久久久久久久久中文字幕| 国产福利电影一区二区三区久久久久成人精品综合 | 久久黄视频| 91精品国产乱码久久久久久| 亚洲欧洲精品成人久久曰影片| 久久本道伊人久久| 久久综合亚洲欧美成人| 99久久做夜夜爱天天做精品| 办公室久久精品| 99久久精品费精品国产一区二区 | 国内精品伊人久久久久| 亚洲愉拍99热成人精品热久久| 久久久久亚洲精品天堂久久久久久 | 人妻无码αv中文字幕久久 | 久久无码人妻一区二区三区 | 久久99精品久久久久久噜噜| AV色综合久久天堂AV色综合在| 97久久婷婷五月综合色d啪蜜芽| 蜜桃麻豆www久久国产精品| 国产精品免费久久久久久久久 | 91精品国产高清久久久久久国产嫩草| 无码AV中文字幕久久专区| 亚洲AV无码久久精品蜜桃| 亚洲乱码精品久久久久..| 性欧美大战久久久久久久久 | 国内精品久久久久久不卡影院 | 久久99精品国产自在现线小黄鸭|