TUP對(duì)話大師系列:微軟技術(shù)大師Jeffrey Richter
繼成功舉辦前兩期《UML之父Ivar Jacobson》和《jQuery之父John Resig》之后,CSDN和《程序員》雜志聯(lián)合組織的線下活動(dòng)TUP對(duì)話大師系列第三期如期而至。今天的主角是享譽(yù)全球的技術(shù)作家和“微軟傳奇人物”Jeffrey Richter,其經(jīng)典著作《Windows高級(jí)編程指南》和《Windows核心編程》早已成為Windows程序設(shè)計(jì)領(lǐng)域的巔峰之作,培育了幾代的軟件開(kāi)發(fā)設(shè)計(jì)人員(關(guān)于他的簡(jiǎn)介無(wú)需多費(fèi)筆墨)。
原計(jì)劃200人左右的小規(guī)模技術(shù)人員活動(dòng),在CSDN官網(wǎng)上報(bào)名的參會(huì)者超過(guò)600人,為保證會(huì)議質(zhì)量和現(xiàn)場(chǎng)效果對(duì)人員進(jìn)行了一定控制,仍有超過(guò)300人來(lái)到現(xiàn)場(chǎng)。
活動(dòng)由CSDN&《程序員》雜志總編劉江擔(dān)任主持人。他介紹了Jeffrey Richter和CSDN舉辦TUP活動(dòng)的宗旨。
15:20分,北京理工大學(xué)計(jì)算機(jī)學(xué)院教師 金旭亮老師首先登場(chǎng),他的演講主題是《深度探索.NET》。
金旭亮先分享了他對(duì)于.NET框架的理解,在他看來(lái),.NET Framework = CLR +基類庫(kù)。
隨后,他重點(diǎn)講了IL(Intermediate Language)以及開(kāi)發(fā)者是否需要掌握IL
此外,金旭亮還談到了并行編程給傳統(tǒng).NET開(kāi)發(fā)者帶來(lái)的挑戰(zhàn),以及并行程序和串行程序的對(duì)比。最后,金旭亮在談到NET4.0特性時(shí)重點(diǎn)闡述了線程池關(guān)鍵原理和任務(wù)竊取、如何開(kāi)發(fā)具有可控性軟件系統(tǒng)等內(nèi)容。
17:10分,Jeffrey Richter重磅登場(chǎng),他先簡(jiǎn)單介紹了自己近期在做的事,他透露最近沒(méi)有在寫Windows相關(guān)的新的書籍,因?yàn)樯媳緯鲂抻啺娴臅r(shí)候讓他“非常痛苦”。但他同時(shí)表示,如果.NET有全新的版本出來(lái),他會(huì)考慮再寫一本書。他現(xiàn)在另一個(gè)重點(diǎn)轉(zhuǎn)移到云計(jì)算上,他花了很多功夫在這個(gè)方面。
Jeffrey Richter
17:15分,直接進(jìn)入Jeffrey Richter和與會(huì)者互動(dòng)環(huán)節(jié)。
與會(huì)者發(fā)問(wèn)
有人問(wèn)到:如何看待C#的未來(lái)和發(fā)展趨勢(shì)?
Jeffrey Richter首先回顧了C#的簡(jiǎn)史,從C# 1.0到4.0不同版本的變遷和功能上的側(cè)重。從C#1.0開(kāi)始作為一個(gè)C++和Java的補(bǔ)充,作為一種微軟挑戰(zhàn)Java語(yǔ)言,從2.0引用泛型機(jī)制,到3.0以后引用一些其他機(jī)制,現(xiàn)在4.0以后,主要是像剛才引入了一些首先是并行機(jī)制,其次是動(dòng)態(tài)語(yǔ)言機(jī)制,4.0已經(jīng)提供動(dòng)態(tài)履行??偟膩?lái)說(shuō),還是看好C#的未來(lái)。
C#是否就是Java的特殊的版本?
Jeffrey Richter同意C#在一定程度上確實(shí)借助了Java一些優(yōu)秀的機(jī)制,因?yàn)镃#是在Java之后才出現(xiàn)的。
有人問(wèn)到:如何看Mono?
他答到,很高興看到Mono當(dāng)前的發(fā)展。
17:50進(jìn)入圓桌環(huán)節(jié)。
圓桌論壇(從左到右分別為Jeffrey Richter、翻譯鞏朋、金旭亮、微軟技術(shù)專家方敏)
主持人劉江拋出的第一個(gè)話題是:如何在技術(shù)的浪潮中選擇正確的方向?
對(duì)此,Jeffrey Richter認(rèn)為有一個(gè)重要原則是選擇自己職業(yè)一定要根據(jù)自己的興趣,跟隨興趣做自己想做的事情,當(dāng)前計(jì)算機(jī)界技術(shù)非常繁多,變化非常快,他自己這20多年也用過(guò)很多語(yǔ)言。他認(rèn)為在計(jì)算機(jī)界生存要具備一個(gè)特性要具有很強(qiáng)的適應(yīng)性。其次就是關(guān)于技術(shù)選擇方向上來(lái)說(shuō),應(yīng)該學(xué)好計(jì)算機(jī)基礎(chǔ)和核心內(nèi)容,比如說(shuō)像操作系統(tǒng)概念、進(jìn)程管理、線程等。此外,在學(xué)好自己計(jì)算機(jī)基礎(chǔ)之上,要專精某一個(gè)方向,這樣使得自己找工作或者以后從事什么職業(yè)就不會(huì)有太大問(wèn)題,例如可以專注計(jì)算機(jī)圖形處理等等。
方敏則結(jié)合自身招聘員工的經(jīng)驗(yàn)對(duì)畢業(yè)的學(xué)生給出了一些建議,他在招聘程序員的時(shí)候,發(fā)現(xiàn)很多學(xué)生寫程序能力比較弱,微軟有面試當(dāng)場(chǎng)寫程序的環(huán)節(jié),很多學(xué)生寫不出來(lái),有的是能寫出來(lái),但是沒(méi)有用最佳的方案,這時(shí)候有90%都過(guò)不去。他建議學(xué)生上課的時(shí)候一定要多寫程序,這樣等到畢業(yè)的時(shí)候,才會(huì)發(fā)現(xiàn)從學(xué)生到工業(yè)界門檻不是特別高。
金旭亮也強(qiáng)調(diào)首要因素是興趣,他也以自己接觸過(guò)的一個(gè)計(jì)算機(jī)學(xué)生成長(zhǎng)經(jīng)歷為例,選擇一個(gè)感興趣領(lǐng)域,剛剛開(kāi)始選一些實(shí)用性比較強(qiáng)的內(nèi)容,入門以后從實(shí)踐到理論摸通,一開(kāi)始寫一些小游戲,后面接觸游戲引擎,再到后面人工智能發(fā)現(xiàn)可能數(shù)學(xué)基礎(chǔ)不夠,再補(bǔ)數(shù)學(xué)。他建議選擇一個(gè)領(lǐng)域以后不要隨便見(jiàn)異思遷,從實(shí)踐到領(lǐng)域打通,馬上做東西出來(lái)有成功感,逐步向理論擴(kuò)充,發(fā)現(xiàn)什么不懂馬上補(bǔ)。一個(gè)普通人有足夠毅力,基本上要掌握某個(gè)技術(shù)應(yīng)該是不成問(wèn)題,有了這個(gè)技能再進(jìn)一步發(fā)展機(jī)會(huì)就比較多,否則的話,代碼沒(méi)有寫過(guò)幾個(gè)程序,看一個(gè)設(shè)計(jì)原本也是不切實(shí)際的。
主持人提的第二個(gè)問(wèn)題是:如何能夠盡快的掌握一種新技術(shù)?
Jeffrey Richter認(rèn)為,學(xué)習(xí)掌握一門新技術(shù)主要途徑就是實(shí)踐!他以自己學(xué)習(xí)Windows的歷程舉例,最初Windows對(duì)他是嶄新的工程,之前從來(lái)沒(méi)有碰過(guò)它,通過(guò)觀看一些相關(guān)教程,下載SDK,看原代碼并動(dòng)手做代碼運(yùn)行,看效果逐漸掌握;其次自己過(guò)去一些經(jīng)驗(yàn)也會(huì)對(duì)掌握一門新技術(shù)產(chǎn)生非常大的作用,像滾雪球一樣。最后快速掌握新技術(shù)最后一點(diǎn)是要專注,選擇一門技術(shù)不能在選擇這一門又看另外一門,這樣什么都學(xué)不好。
主持人隨后還問(wèn)到了如何看待云計(jì)算,對(duì)于程序員會(huì)有哪些方面的影響?
Jeffrey Richter在談到這個(gè)話題時(shí)認(rèn)為云計(jì)算是一門比較新的技術(shù),很多方面還不夠成熟,這項(xiàng)技術(shù)投資會(huì)是有受益但是受益期比較長(zhǎng),需要耐心一些。至于云計(jì)算對(duì)程序員影響他認(rèn)為主要出現(xiàn)未來(lái)軟件設(shè)計(jì)上,需要更多的考慮伸縮性以及如何把現(xiàn)有軟件移植到整個(gè)云平臺(tái)是一個(gè)非常大的挑戰(zhàn)。
金旭亮則對(duì)微軟發(fā)出呼吁,能夠給開(kāi)發(fā)者以免費(fèi)的帳號(hào)使用并配合一定實(shí)驗(yàn)資源,只有這樣才能推動(dòng)云計(jì)算的應(yīng)用。其次他認(rèn)為單從開(kāi)發(fā)角度來(lái)看,開(kāi)發(fā)云計(jì)算應(yīng)用和桌面應(yīng)用程序沒(méi)有太大差別,面臨是一個(gè)虛擬機(jī),里面跑的是.NET程序但是這個(gè)虛擬機(jī)很厲害。
最后,在談到當(dāng)前最看好的技術(shù)時(shí),Jeffrey Richter表示是HTML 5!(子曰)
清華大學(xué)出版社科技圖書部贈(zèng)給Jeffrey Richter的禮物
Jeffrey Richter從簽名簿中“點(diǎn)人”送書
Jeffrey Richter和獲贈(zèng)圖書的與會(huì)者合影留念