青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

思勤無邪

上學時,因我年齡最小,個頭也最小,上課時,就像大猩猩堆里的猴一般。如今,這猴偶爾也把最近的一些情況寫在這里。

   :: 首頁 :: 聯系 :: 聚合  :: 管理
  132 Posts :: 1 Stories :: 178 Comments :: 0 Trackbacks

公告

     吾日常三省吾身,曰思、曰勤、曰無邪。

積分與排名

  • 積分 - 186373
  • 排名 - 140

最新隨筆

最新評論

閱讀排行榜

評論排行榜

    整理資料時,發現了《什么是高級C++》這個ppt。這是一個C++發展方向的介紹,個人覺得很不錯,把內容貼了出來,同是也可以點擊下載

什么是高級C++?

——軟件工業化時代的C++價值觀
孟巖
《程序員》雜志社


開門見山

主要論點:
    1. C++本質上是一種重“創新”而輕“生產”的語言,到目前為止仍然是主流語言中最適合技術創新的一個;
    2. 1995年之前,整個軟件產業處于“創新為王”的階段,C++是最適合這個階段的語言,這是C++紅極一時的大背景和根本原因。
    3. 1995年發生了一系列影響深遠的事件,軟件產業整體上轉向工業化,為了支持工業化,創新的重點由技術創新轉向體系創新。然而C++沒有能夠迅速適應這一變化。
    4. 今天,C++應當準確定位,彌補不足,有針對性地發展,它將仍然是最重要的幾種工業級語言之一。


從一本書說起
James Coplien,Advanced C++ Programming Styles and Idioms, Addison Wesley, 1991
—— 市面上唯一一本名副其實的“高級”C++書(Scott Meyers)
 ●面向對象特性的運用和把握
 ●面向對象的程序風格
 ●動態特征的運用和超越
 ●符號語言模擬
 ●設計模式

    這本書代表了當時專家們對于“高級C++”的理解,換句話說代表了當時C++社群的一個審美價值取向。我們看到了什么?技術、技巧、風格、模式,但沒有與工程相關的東西。更有意思的事情是,這本書的中文版12年后被剽竊出版,此時書中對于C++面向對象能力發揮到了我當時沒有想到的程度。這說明即使在template被廣泛應用之前,C++語言的技巧性就達到了如此的高度。然而耐人尋味的是,書中最高深的技巧從來就沒有在C++實踐中流行過。

另一本書...
Scott Meyers, Effective C++ ,1991年第1版,1998年第二版,2005年第三版。
 ●來自教學經驗
 ●最初想開發一個代碼掃描工具
 ●包含實際工程建議
 ●歷史上最重要的C++著作之一

    這本書出版的同時,還有一本在C++歷史上影響更大的書問世——Scott Meyers的Effective C++。這本書并沒有過多地探索語言技巧,而是探討實踐中應當遵循的規則,或者換句話說,探討怎樣在應用這種語言的同時保持軟件的質量,提高開發效率。這本書的內容被整個C++社群熟知并吸收,至今仍在翻新,影響著更多的人。

還是在1991年...
 ●“按照1991年3月C++程序員增長的速度計算,到1996年5月,全世界每一個人都將成為C++程序員。此后我們將不得不教外星人學習C++。”
 ●問題:當時人們為什么如此瘋狂地學習一種新語言?
    答案很有趣:大部分人是盲從。但他們所追隨的人并非等閑之輩,幾乎所有在AT&T Bell Labs、Sun、Borland、IBM、Microsoft的C語言大師都轉向C++(Brain Kernighan,Jon Bentley,Peter van der Linden)。而這些人轉向C++,不是因為他們知道Effective C++,而是因為他們知道Advanced C++。什么意思呢?就是說人們轉向C++,是因為C++充滿了令人興奮的新技巧和未知的創新空間。


1991年...
 ●5000行C代碼可以寫一個完整的應用程序,獲得數萬$的回報;
 ●一個TSR式的Help程序可以以shareware的方式通過磁盤發行,開發者銀行戶頭里會收到大量匯款;
 ●John Carmark和Michael Abrash正在各自擅長的方向上不斷創新。Doom發行后,id獲得收入一度超過微軟銷售額。

C++歷史選擇中“創新”壓倒“生產”
“相信程序員”;
Be an enable language;
Zero overhead;
STL投票的通過;
偏特化的引入
多繼承
Generic/Generated/Meta
IOStream庫的設計
Loki/Boost

counted_ptr被否決
可選GC方案被否決
加入類似delegate的對象方法指針提議未引起關注;
virtual關鍵字
exception機制
缺乏Thread, Network, Regex, DB...等標準庫
沒有ABI規范
孱弱的RTTI

    并不是事后諸葛亮式的譴責,這就是C++的歷史選擇,無所謂對錯。

    C++重創新輕生產,重技巧輕規范,語言上的創新試驗直到1996年ANSI C++標準草案落地才結束。直到2001年Modern C++ Design出版,人們還不斷地發現新的語言運用技巧。我們每個人都經歷過這個階段,在實踐中發現一個問題,想方設法用盡各種語言技巧來克服它,成則欣喜,敗不氣餒。我們都曾經相信,C++中一切問題都可以優雅地解決,只有想不到,沒有做不到。問題是,從Advanced C++到Modern C++ Design,許許多多令人第一眼看上去無比驚喜的技術,最后在實踐中被大范圍推廣運用的少之又少。C++大師們說這是教育問題,真的是這樣嗎?

C++社群的價值觀
 ●用優雅的技巧解決復雜問題
 ●自己動手,豐衣足食
 ●決不讓運行時效率蒙受半點損失
 ●妙者為王
    “管理一群C++程序員就像放牧一群驕傲的貓。”——B. Moo
    “C++程序員是高速公路上穿著短皮茄克,帶著墨鏡,抽著雪茄,揮舞著鐵鏈的英勇無畏的摩托騎士。” ——VC產品經理

1995年:轉折點
 ●Windows 95問世:GUI時代、保護模式操作系統時代、多線程時代的到來,是推動軟硬件規模迅速膨脹;
 ●Netscape Navigator vs. Internet Explorer: Web的興起將人類一下子拖入互聯網時代, 個人與企業應用軟件網絡化;
 ●Java誕生:提供了網絡時代、跨平臺時代優于C++的企業應用軟件開發語言;
 ●COM時代到來
 ●Delphi誕生:創新與工程原則平衡的典范;


1995年:C++全盛時代
 ●C++標準草案接近完成,語言基本穩定;
 ●C++工具大戰結束:來自商業競爭的動力消失,MFC獲勝;
 ●很多主流軟件廠商轉向C++,C++開始在大范圍內被用于大規模軟件開發;
 ●一切跡象表明,軟件產業的重點將有創新轉向生產。但是:C++社群在指導思想上并沒有發生相應的變化。

 
我們的歷史失誤
 ●C++社群從來沒有聯合起來支持任何一個跨平臺的二進制組件標準(如COM/SOM/CCM)和基礎庫(如Apache APR、ACE OS Wrapper);
 ●C++社群從來沒有聯合起來支持任何一個跨平臺的C++虛擬機、解釋器、內存檢測工具和錯誤錄像工具,也從來沒有促成過一個安全的庫;
 ●Boost出現于1999-2000年,而在此之前的跨平臺C++庫都沒有獲得廣泛的支持;
 ●鐘情于用C++語法(無論多么復雜和稀奇古怪)完成所有的任務,卻丟掉了老祖宗C語言的看家法寶——Little Language;
 ●對于風格爭論不休,對于明顯的技術進步拒不接受,對于很多后來被證明并不實用的技巧趨之若鶩。

    沒有跨平臺的基礎庫,就沒有跨平臺的動態模塊加載機制;
    John Spencer夭折的書《The Art of C Programming》,GoF的Interpreter模式;Little Language實際上具有反映計算機本質的一些東西,現在卻成了很少為C++程序員所采用和熟悉的工具。

 

2005年,C++的現實處境
 ●在系統編程領域仍然強勢;
 ●套裝軟件主流開發語言之一;
 ●嵌入式開發領域進展較快;
 ●游戲引擎開發主力;
 ●科學計算方面略有一席之地
 ●遺留項目的維護;
 ●在企業應用開發領域快速收縮;
 ●Web開發中的影子語言;
 ●從高校主流教學中退潮;
 ●整體水平仍然不高,很多企業急于擺脫;
 ●最致命的:真正了解和熟練掌握C++的人太少;

案例:1. 國外一家公司花高薪聘人,要么能維護目前百萬行規模的代碼,要么把它轉成Java;
          2. IBM Workplace,項目一開始C++/Java并重,之后C++比重越來越小;
          3. 微軟與中國電信合作一個項目,客戶端軟件本來要用C++寫,后來趕到產品化周期太長,改用C#,后發先至。 


問題何在
 ●當前的軟件產業發展的主要矛盾——各行各業對軟件生產標準化、規模化、高質量要求與慢節奏、低效率、低質量的軟件開發之間的矛盾。
 ●解決這個矛盾的關鍵:組件化體系,成熟的軟件生產工具和環境,不斷的創新精神。
 ●C++在外部環境已經發生根本變化的近十年時間里,沒有抓住這個主要矛盾。


重新評估我們的C++價值取向
    重新評估“高級C++”的現實含義:
        - 簡潔有效優于驚世駭俗;
        - 開放靈活優于保守固執;
        - 幫助他人優于凸現自己;
        - 領域創新優于賣弄技巧;

 
六個建議
 ●學會與現實和諧共處;
 ●盡快面向不同領域建立跨平臺構件標準;
 ●支持各領域已經形成的基礎庫不斷完善;
 ●支持相關工具廠商,迅速完善工具鏈;
 ●支持動態語言的發展;
 ●面向產業挑戰創新發展;

 

與現實和諧共處
 ●承認C++只適合這個世界的一部分工作,快樂地與其他語言共同協作;
 ●告別妄自尊大和保守傲慢;
 ●尊重其他社群的專業能力和成績;
 ●坦率承認C++在很多場合并非理想選擇;
 ●在C++擅長的領域保持銳意。


跨平臺構件標準
 ●C++邁向未來的關鍵技術步驟;
 ●盡可能支持現有的成熟方案;
 ●在不同尺度的平臺上可能需要不同的標準;

 

支持成熟的基礎庫
 ●基本組件:STL和Boost(部分)
 ●網絡和系統編程:ACE
 ●分布式計算:ICE
 ●GUI:Qt
 ●Windows:MFC/ATL/WTL
 ●科學計算:MTL

 

完善工具鏈
 ●C++用的GC;
 ●Code Review工具;
 ●內存錯誤排查工具;
 ●測試工具;
 ●MDA工具;
 ●文檔工具;
 ●持續集成工具;
 ●運行錄像工具。


支持動態語言
 ●動態語言是軟件技術發展的一個重要方向,幾年后會成為主流。
 ●目前幾個流行動態語言天生與C/C++具有親緣關系;
 ●加強對動態語言的友好性,是C++未來發展的一項重要任務;
 ●從這個角度來看待C++/CLI,我們應該持積極態度;
 ●Little Language問題;


迎接產業新挑戰
 ●多核CPU帶來根本性挑戰,C++有責任挺身而出,為其他語言鋪平前進道路;
 ●安全性問題,C/C++實際上是給整個產業拖了后腿,對此我們應當充分關注,積極改進;
 ●將STL思想精華發揚光大。

posted on 2007-04-22 19:50 思勤無邪 閱讀(1903) 評論(3)  編輯 收藏 引用 所屬分類: C++

Feedback

# re: 什么是高級C++?[未登錄] 2007-07-23 13:21
很好  回復  更多評論
  

# re: 什么是高級C++? 2007-10-22 21:17 阿鐵
哈哈,你居然比我早轉.
這個PPT寫得很實在.
歡迎交流:自動化C++開發社區:http://www.autodev.net  回復  更多評論
  

# re: 什么是高級C++? 2007-10-22 21:19 阿鐵
可是C++/CLI設計得并不優美啊.
而且帶有MS的影子~不爽!居然還好意思奢望納入標準!
(B.Lippman啊.....大牛們啊,救救我們吧.......)
其實我們中國的C++程序員該聯合起來做些事情了(正如ppt里所說)  回復  更多評論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲无人区一区| 亚洲欧洲一区二区天堂久久| 欧美丰满少妇xxxbbb| 在线观看91久久久久久| 国产免费亚洲高清| 国产欧美日韩精品丝袜高跟鞋| 欧美成人在线影院| 久久精品国产亚洲5555| 午夜精品网站| 欧美一区2区三区4区公司二百| 亚洲人成久久| 欧美激情亚洲视频| 欧美成人免费一级人片100| 久久国内精品自在自线400部| 亚洲一区二区影院| 久久亚洲精品一区二区| 韩国免费一区| 欧美一区二区三区视频| 91久久午夜| 久久久久综合网| 国产精品自在在线| 国产精品99久久久久久久久久久久| 久久精品国产久精国产思思| 欧美激情国产日韩| 亚洲欧洲一区二区在线观看| 亚洲无人区一区| 欧美成人黑人xx视频免费观看| 国产麻豆视频精品| 亚洲精品久久7777| 亚洲欧美在线网| 先锋影音一区二区三区| 嫩草影视亚洲| 国产一区二区三区不卡在线观看| 国内精品久久久久影院优| 影音先锋日韩精品| 一区二区欧美视频| 一本大道久久a久久精二百| 欧美顶级艳妇交换群宴| 欧美激情一二三区| 欧美在线视频观看免费网站| 久久激情网站| 亚洲精品乱码视频| 一区二区三区 在线观看视频| 国产欧美一区二区精品性 | 亚洲在线免费| 91久久精品www人人做人人爽| 亚洲视频在线观看网站| 你懂的国产精品| 亚洲国产欧美国产综合一区 | 欧美电影免费观看高清完整版| 欧美黄色网络| 乱人伦精品视频在线观看| 欧美激情第一页xxx| 亚洲欧洲日产国码二区| 亚洲美女在线视频| 欧美日韩日本视频| 亚洲区欧美区| 99riav1国产精品视频| 国产专区一区| 亚洲国产精品国自产拍av秋霞 | 欧美福利视频在线| 亚洲欧美日韩视频一区| 亚洲第一在线综合在线| 香蕉av福利精品导航| 欧美视频在线一区| 亚洲视频香蕉人妖| 亚洲精品视频在线| 欧美视频日韩视频| 中文av字幕一区| 中文av字幕一区| 欧美视频导航| 午夜精品免费视频| 午夜精彩国产免费不卡不顿大片| 国产精品美女一区二区在线观看| 亚洲综合视频网| 亚洲一区二区三区久久| 国产三级欧美三级| 久久国产毛片| 乱中年女人伦av一区二区| 在线日韩精品视频| 亚洲日韩中文字幕在线播放| 欧美精品二区| 欧美尤物一区| 久久久久久久999精品视频| 黑人一区二区| 亚洲福利在线视频| 欧美日本精品在线| 欧美一区二区啪啪| 久久精品综合网| 一区二区电影免费在线观看| 亚洲毛片在线看| 国产深夜精品| 亚洲丰满在线| 国产精品一区在线观看你懂的| 欧美综合激情网| 久久在线播放| 亚洲制服少妇| 久久这里有精品15一区二区三区| 夜夜夜久久久| 欧美一区二区三区在线观看视频| 伊人夜夜躁av伊人久久| 亚洲欧洲在线视频| 狠狠色噜噜狠狠色综合久| 亚洲激情视频在线| 狠狠色综合网| 一区二区三区久久精品| 亚洲第一精品夜夜躁人人爽| 日韩视频中文| 亚洲国产欧美日韩精品| 亚洲欧美激情视频| 亚洲人成小说网站色在线| 亚洲夜间福利| 亚洲国产福利在线| 性欧美超级视频| 亚洲一区在线免费观看| 蜜桃av一区二区| 久久精品视频免费| 国产精品高潮呻吟久久| 欧美激情五月| 亚洲国产成人porn| 亚洲欧美电影在线观看| 农村妇女精品| 久久激情中文| 国产精品稀缺呦系列在线| 亚洲欧洲另类国产综合| 亚洲国产成人久久综合一区| 欧美一级理论片| 久久精品国产精品亚洲| 欧美视频日韩视频在线观看| 亚洲精品国产精品国自产在线| 一区二区三区在线观看视频 | 欧美成人精品一区二区| 欧美性猛交xxxx乱大交蜜桃| 免费观看一区| 欧美影院午夜播放| 欧美女同视频| 亚洲精品日韩欧美| 亚洲国产精品一区二区三区| 久久久亚洲欧洲日产国码αv| 欧美一级二区| 国产人成精品一区二区三| 一区二区三区.www| 亚洲永久免费精品| 欧美婷婷在线| 国产精品99久久99久久久二8 | 新狼窝色av性久久久久久| 欧美日本免费| 一区二区三区久久网| 亚洲一区二区欧美| 国产女人精品视频| 亚洲一区二区精品在线观看| 中文亚洲免费| 国产精品视频一区二区高潮| 亚洲视频免费在线| 欧美一区网站| 国产亚洲欧洲997久久综合| 小嫩嫩精品导航| 久久久久一区二区| 亚洲国产精品悠悠久久琪琪| 欧美成人一区二区三区片免费| 亚洲区国产区| 亚洲一区二区三区中文字幕在线| 国产精品久久久久久影视| 亚洲一区二区三区中文字幕| 久久国产精彩视频| 亚洲大片一区二区三区| 欧美超级免费视 在线| 亚洲精品一区二区网址| 午夜日韩视频| 狠狠色伊人亚洲综合网站色| 久久婷婷色综合| 日韩亚洲欧美精品| 国产日韩欧美不卡在线| 免费在线成人| 亚洲天堂av电影| 欧美黄色免费| 午夜精品偷拍| 亚洲美女中文字幕| 国产日韩1区| 欧美剧在线观看| 午夜精品一区二区三区四区| 99精品视频免费| 国产乱肥老妇国产一区二| 蜜臀av性久久久久蜜臀aⅴ| 在线一区二区三区四区五区| 免费日韩av片| 亚洲永久免费av| 亚洲日本中文字幕区| 国产精品素人视频| 欧美日韩八区| 久久不射中文字幕| 在线一区欧美| 欧美激情中文字幕一区二区| 久久国产精品黑丝| 99在线精品观看| 亚洲精品社区| 激情成人中文字幕| 国产一区二区三区无遮挡| 午夜精品一区二区三区四区 | 艳女tv在线观看国产一区|