• <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>

            歲月流轉(zhuǎn),往昔空明

            C++博客 首頁(yè) 新隨筆 聯(lián)系 聚合 管理
              118 Posts :: 3 Stories :: 413 Comments :: 0 Trackbacks

            #

            程序員,都是習(xí)慣從0開(kāi)始計(jì)數(shù)的。如果不是陳梓瀚撰寫(xiě)了《10年編程》,我不會(huì)想起對(duì)一個(gè)如此漫長(zhǎng)的瞬間,做出一個(gè)可能并不是恰如其分的總結(jié)。某種意義上來(lái)講,這也算是他“改變了我的人生軌跡”的一種方式吧。

            2000年,終于考上了當(dāng)?shù)刈詈玫闹袑W(xué),分?jǐn)?shù)不高不低。那會(huì)兒對(duì)計(jì)算機(jī)或者是程序,是完全沒(méi)有什么念想的。在這之前,如果說(shuō)啟蒙,呃,搜腸刮肚一下,也是有的。

            初中時(shí)買的學(xué)習(xí)機(jī)上,有一個(gè)QBasic的解釋程序。啊,真好,程序。雖然要寫(xiě)行號(hào)神馬的,但是到底是程序啊。可是,我寫(xiě)出來(lái)的Code他媽的不能存儲(chǔ)!不能存儲(chǔ)!不能存儲(chǔ)!有鳥(niǎo)用!(據(jù)說(shuō)可以支持錄到磁帶里,但是我從來(lái)沒(méi)他媽成功的用過(guò)我艸)

            當(dāng)然,這用處,也還是有的。用來(lái)算算四則運(yùn)算用神馬的。——這算哪門(mén)子用處!坑爹呢!

            好吧。這些暫且不表。因?yàn)檫€有LOGO語(yǔ)言,傳說(shuō)中的LOGO。偉大的Logo,可以畫(huà)圖的Logo。但是我都忘記了。只是前段時(shí)間我?guī)熋米屛胰タ纯碞etLogo的時(shí)候我就想起來(lái)滿屏幕爬的小海龜來(lái)。三角形的小海龜。

            哎喲我艸!這是小海龜嘛!你見(jiàn)過(guò)三角形的小海龜嘛!

            好吧。這些都不重要。高中期間三件事情,“改變了我的軌跡”。第一,我會(huì)編程了。第二,認(rèn)識(shí)了初戀,讓我趕上了早戀的末班車。第三,Event Code A(有些人知道,有些人不知道。不重要了,但是和編程多少有點(diǎn)關(guān)系)。

            也不知道怎么就去學(xué)編程了。那會(huì)兒是以O(shè)Ier(奧林匹克信息學(xué)競(jìng)賽)的身份,學(xué)Pascal。領(lǐng)我入門(mén)的,先是朱老師,后來(lái)是胡老師。這么多年我也沒(méi)回學(xué)校去看望二位老師。要不是他們,我大約真的就要凍死街頭,餓斃巷角;被城BI管BI追,被土狗咬。——我了個(gè)去!這又是神馬啊!!!——當(dāng)然,是他們教會(huì)了我Pascal。雖然在有些環(huán)節(jié)上我是無(wú)師自通的(臭屁啊,裝逼啊),也因?yàn)樗麄兪遣诲e(cuò)的老師。

            00年到01年這段時(shí)間里面,我的基礎(chǔ)知識(shí)是一片混亂。

            其實(shí)那個(gè)時(shí)候我已經(jīng)很牛逼了。一方面,我會(huì)Pascal,甚至?xí)恍┧惴ā_f歸基本上一看就明白了,Delphi學(xué)起來(lái)也還湊合。到現(xiàn)在我都還有兩本Delphi方面的書(shū)仍在家里,一本是白皮子的Delphi教程,一本是機(jī)工的實(shí)用編程100例。還有就是,我每個(gè)星期要裝上10來(lái)次Windows98。什么Ghost,什么PQMagic,什么Norton Tools,都不在話下。

            另一方面,在概念上也存在相當(dāng)多的嚴(yán)重問(wèn)題。比方說(shuō),完全不知道“編譯”是個(gè)什么過(guò)程,妄圖把.pas換個(gè)exe就期望著能執(zhí)行,比方說(shuō)分不清TFrom和TForm1有什么區(qū)別。連類型和變量都搞不清楚。我覺(jué)得我也是很牛逼了。

            但其實(shí)編程這種東西,對(duì)大部分人,都沒(méi)什么吸引力的。一開(kāi)始的時(shí)候,大概有30個(gè)人參加培訓(xùn)。一個(gè)月之后,就剩下我,趙同學(xué)和滕同學(xué)了。其他人都沒(méi)了。現(xiàn)在還在IT的,不知道還有幾個(gè)。

            曾經(jīng)還考慮過(guò),回去帶一些小弟弟小妹妹(這個(gè)是重點(diǎn)),去給他們講一些數(shù)據(jù)結(jié)構(gòu)啊,算法神馬的。但是今年一看,奧林匹克競(jìng)賽高考一律不加分,心里一下子就冷旺旺的。這下子,搞不好連三個(gè)都不剩了。

            高二一年,成績(jī)掉的厲害。有多厲害?其中的時(shí)候,double了。期末的時(shí)候,又double了。對(duì)不起,我不是說(shuō)分?jǐn)?shù)。我是說(shuō),名次。

            原因很多。但是關(guān)鍵是,我對(duì)念書(shū),數(shù)理化英語(yǔ)地理生物政治歷史,沒(méi)有那么大了。這要是放在以前,我一定是個(gè)博物學(xué)家。諾貝爾那樣的。呃,好像是叫達(dá)爾文。

            后來(lái)看到過(guò)老美們用的歷史教案和材料,我覺(jué)得我肯定更死翹翹。他們會(huì)問(wèn)阿茲特克人在哪一年遇到了一個(gè)什么樣的自然災(zāi)害死了多少人并對(duì)接下來(lái)的歷史進(jìn)程產(chǎn)生了如何的影響。

            然而那個(gè)時(shí)候我天真的以為阿茲特克人其實(shí)是生活在好望角的。當(dāng)然,我唯一引以為自豪的,是知道霍爾木茲海峽是黑海到地中海的出入口,而博斯普魯斯海峽是海上的石油要道。好像我又記反了。真該死。

            但是這些都不影響那個(gè)時(shí)候我繼續(xù)編程。學(xué)會(huì)了二叉樹(shù),學(xué)會(huì)了鏈表,學(xué)會(huì)了數(shù)組。學(xué)會(huì)了指針的指針的指針的指針。我也不知道怎么學(xué)會(huì)的,好像就是自然而然的鉆到腦子里面去了。但是他們鉆地并不深,都給堵住了。所以,現(xiàn)在我的頭腦里面很難再鉆點(diǎn)什么像樣的東西了,都是些明星緋聞,裸體空空神馬的。

            高三的時(shí)候,03年。是最后一次參加OI。認(rèn)識(shí)了三個(gè)小盆友,樂(lè)樂(lè),敏敏和洋洋。敏敏去學(xué)泰語(yǔ)了。樂(lè)樂(lè)不知道在干什么,只是知道他當(dāng)年在文曲星PC600上的QBasic玩的是近乎神跡,能用那個(gè)破爛到家的MC68000的變種的CPU干很多很多事情。我也有一個(gè),迄今為止也還在手上。后來(lái)趙先生也有了一個(gè),PC1020。羨慕死我了。那個(gè)時(shí)候文曲星的升級(jí)大概就和現(xiàn)在手機(jī)是一樣的,CPU更快,記憶體更大,屏幕分辨率更高。

            洋洋玩的也很好。現(xiàn)在好像武大的BBS就是他在維護(hù)的。適當(dāng)?shù)臅r(shí)候我也會(huì)關(guān)注一下他。不知道他以后會(huì)怎么樣,但是總之是一路順風(fēng)了。幾個(gè)孩子都很聰明。學(xué)校都很好。不像我。到最后的時(shí)候,RP超級(jí)爆發(fā)了一下祖墳上的青煙冒得跟911大火似的,也就考上了一個(gè)普通的不能再普通的211。但是我仍然是認(rèn)為,老天是合理的。高考前我從未系統(tǒng)復(fù)習(xí)過(guò),也沒(méi)有做過(guò)什么題目。你問(wèn)我對(duì)這件事情自豪嗎?Of course!其實(shí)說(shuō)著話的時(shí)候,爹渾身正冒出一種傻逼特有的青煙。這叫氣場(chǎng)。

            03年的時(shí)候我就會(huì)C++了。用了一本什么成人自考的教材。綠色殼子的書(shū),超薄,還帶護(hù)翼的,夜用,防側(cè)漏,吸量大。幸虧那個(gè)時(shí)候沒(méi)有看Primer這種大部頭。要不然死都不知道怎么死的。后來(lái)很多人質(zhì)疑說(shuō)國(guó)內(nèi)的書(shū)怎么怎么爛,說(shuō)不能誤人子弟啊云云。這個(gè)時(shí)候最好的解決辦法,就是找一本盡可能薄的書(shū)。這個(gè)時(shí)候信息量會(huì)盡可能少,出錯(cuò)的情況也就會(huì)盡可能的少。除非他是文言文寫(xiě)的。

            到03年暑假的時(shí)候,都是沒(méi)有自己的PC的。03年暑假,終于買了自己的PC。Athlon XP 1700+,碩泰克的主板(忘了什么芯片組的了,那個(gè)時(shí)候NV的nForce還是很貴的),256M的內(nèi)存,80G的酷魚(yú)四。顯卡是傳說(shuō)中的Radeon 9100。結(jié)果機(jī)器買回來(lái),玩了整整一個(gè)暑假的游戲,軒轅劍Online。除了畫(huà)面丑了點(diǎn),游戲性倒是不差。后來(lái)大宇做的網(wǎng)游,倒是越來(lái)越SB了。

            早在高一的時(shí)候,在老胡同學(xué)的影響下,我就眼睜睜看著他通關(guān)了天之痕和云和山的彼端。自此之后我就有了不玩游戲看錄像的毛病。都是好游戲。所以那會(huì)兒我特想做RPG。一直到我水平不夠做RPG的時(shí)候,都是有這個(gè)想法的。現(xiàn)在掐自己腿肚子,也算是可以了,只要有美工我就能山寨出一個(gè)差不多的RPG來(lái)。但是我不再想去做游戲了。

            人生理想大抵是如此,等你可以實(shí)現(xiàn)理想的時(shí)候,往往就會(huì)有更遠(yuǎn)的眼界,想做更大的事情。這個(gè)時(shí)候,應(yīng)該回過(guò)頭來(lái),感念那些在深夜挑燈的時(shí)候,給予你溫暖的那些好夢(mèng)。

            大學(xué)對(duì)我來(lái)說(shuō)就只有兩個(gè)階段,在江寧的大一大二和在本部的大三大四。

            在高考獨(dú)木橋擠啊擠啊,擠了倆通宵,好不容易才上了開(kāi)往失業(yè)的賊船。很多人以為我以前學(xué)編程,現(xiàn)在干IT,我那個(gè)時(shí)候一定就是所謂的“計(jì)算機(jī)相關(guān)專業(yè)”。其實(shí)不是的,我學(xué)的是測(cè)繪。工民建,賤民工。

            但是大一大二,大家都知道的,基礎(chǔ)課。其實(shí)和專業(yè)沒(méi)什么關(guān)系。所以那個(gè)時(shí)候我從來(lái)不去上課,天天泡圖書(shū)館,就在那等啊。等艷遇。四年等了兩個(gè),全是有主的。通過(guò)這兩個(gè),我還認(rèn)識(shí)了一班哥們。不過(guò)我不是Gay,可惜了。事實(shí)證明,圖書(shū)館不是等姑娘的好地方。人家來(lái)都是來(lái)看書(shū)的,不是來(lái)挑郎的。

            然后就無(wú)聊啊。干嘛呢,抄書(shū)。那個(gè)時(shí)候是把一本清華的圖形學(xué)教材,一本More Effective C++,一本Large Scaled xxx(就是小貝看的那本沒(méi)前途的書(shū)),一本軟件工程,一本COM本質(zhì)論,抄到了小本子上。當(dāng)然都只是摘抄,不是全部。才看到MEffC++的時(shí)候,驚艷啊!怎么會(huì)有那么牛逼的書(shū)呢?現(xiàn)在想想,不是那本書(shū)牛逼,而是我實(shí)在太傻逼了。這個(gè)感覺(jué)又出現(xiàn)過(guò)兩次。一次是看到Modern C++ Design的時(shí)候,一次是看到Boost里面MPL的代碼的時(shí)候。

            抄書(shū)好。好記性不如爛筆頭。找兩本經(jīng)典的書(shū)抄抄,還是有助于你系統(tǒng)的理解學(xué)習(xí)一下常識(shí)的。寒假回家的時(shí)候,裝逼的搭了一個(gè)Graphic Engine的框架,最后還是不了了之,太監(jiān)了。但是就是這個(gè)只花了我兩三個(gè)月的東西,在6年之后,我還是寫(xiě)在了我的簡(jiǎn)歷里。因?yàn)檫@是很重要的一步,對(duì)我來(lái)說(shuō)。第一步雖然走不穩(wěn),但是確實(shí)是非常重要的。

            時(shí)間過(guò)得快啊。從初戀把我甩了后,兩年一晃就過(guò)去了。然后我就到了本部。大三大四,還是過(guò)得非常充實(shí)的。魔獸練了一個(gè)牧師到了60,最后還跌跌撞撞的拿到了祈福;女人,無(wú)。然后學(xué)業(yè)上,雖然績(jī)點(diǎn)爛到要畢不了業(yè),但是好歹發(fā)了一篇第一作者EI,兩篇第二作者EI。

            那個(gè)時(shí)候,最大的好處是有網(wǎng)上了。大一大二的時(shí)候還在gameres和csdn里面混過(guò),后來(lái)就再也不混了,發(fā)現(xiàn)了兩個(gè)群。然后在里面天天被一幫狗日的艸啊。艸了個(gè)花開(kāi)花謝。狗叔,豬叔,叛叛,都是那個(gè)時(shí)候認(rèn)識(shí)的。還有就是壯碩的,也是這篇文章的直接罪魁禍?zhǔn)祝愯麇?

            S****是迄今為止,我見(jiàn)過(guò)水平最好的群。有大牛坐鎮(zhèn),有打手幫噴。不管問(wèn)什么,都會(huì)有答案。雖然有的時(shí)候的答案是“您已經(jīng)被管理員請(qǐng)出xxxxxx群。”但是這也可以學(xué)習(xí)到,這個(gè)問(wèn)題究竟是多么的傻逼。但是在這之前,我還在一個(gè)D****** MVP群里面呆過(guò)。在水平上,要差一些。但是對(duì)當(dāng)時(shí)我這樣的水貨而言,氣氛更好一些。

            所以盲目加牛逼群的人,最好先掂量一下自己有多分量。水平太好或者太差的群,對(duì)自己都是不好的。你把一個(gè)群的水平拖低了,只會(huì)讓睪獸們罵累了之后直接把群Mask,不再說(shuō)話。對(duì)誰(shuí)都沒(méi)好處。討論才是持續(xù)發(fā)展的真正動(dòng)力,不管是討論什么,從三體,到三俗,到三急都可以。很多問(wèn)題,google一下,或者多看點(diǎn)書(shū),你就不會(huì)好意思問(wèn)出來(lái)了。

            迄今為止,我還在S*****的群里面活躍著,現(xiàn)在這個(gè)群除了叛叛和VC,還有出去自立門(mén)戶單干的豬叔,剩下的活躍用戶,幾乎都是Autodesk的人了。就連我,也順藤摸瓜的上了黑車。都是狗叔害的。

            臨畢業(yè)的時(shí)候,還做了一把偽學(xué)術(shù),發(fā)了點(diǎn)Paper,之前也說(shuō)過(guò)了。是和GPU有關(guān)的,也和我專業(yè)有關(guān)的。后來(lái)本科論文致謝里面,很多感謝的人,都和這個(gè)有關(guān)。再次感謝一下猴叔(怎么叔叔們都是禽獸啊)孫凱先生。

            本科的時(shí)候遇到了后來(lái)我碩士的導(dǎo)師。雖然在碩士期間,我和我的同門(mén)啊師弟師妹啊什么的,對(duì)其還是有些微詞的,但是這個(gè)畢竟放了我畢業(yè),就算是萬(wàn)幸了。而且那個(gè)時(shí)候?qū)ξ乙泊_實(shí)是很寬容的。我在和她一起做Paper的時(shí)候,她居然就放任我在辦公室里面WC3。

            這個(gè)部分要單獨(dú)分開(kāi)來(lái)講一講。因?yàn)楹苤匾Wx大學(xué),不完全是為了等失業(yè)。也還有一些很重要的事情要去做。比方說(shuō)破處,比方說(shuō)學(xué)點(diǎn)知識(shí),比方說(shuō),認(rèn)識(shí)一些人。認(rèn)識(shí)女人可以一起上床,認(rèn)識(shí)男人可以一起翻墻。認(rèn)識(shí)人妖還可以攜手并肩當(dāng)牛郎。

            之前說(shuō)的兩個(gè)在圖書(shū)館邂逅姑娘,不是終點(diǎn)。最后都成為了中轉(zhuǎn)站。無(wú)論如何,謝謝你們,希望你們過(guò)得好一點(diǎn)。

            籍由她們,我認(rèn)識(shí)了銜哥,老畢(不是拍A片那個(gè)老畢),云哥和邦邦。銜哥和老畢,都算是是富二代,人很好。他們比我高一屆,一直以來(lái)得到他們很多的幫助。銜哥走的那會(huì)兒,頗有些難過(guò)。很希望以后還可以與他再見(jiàn)面。老畢現(xiàn)在儼然是一個(gè)資本家了,開(kāi)了家小公司,倒買倒賣著什么。云哥和邦邦,那正兒八經(jīng)都是做技術(shù)的人。云哥的技術(shù)很好,我還不懂什么叫ASP的時(shí)候,他給我分析頁(yè)面之間怎么傳遞數(shù)據(jù)分析的頭頭是道。有一次他對(duì)于AOV網(wǎng)的分析,讓我印象極深。我甚至還記得,那個(gè)下午將我的老臉曬得滾燙的夕陽(yáng)。

            還有邦邦。很久沒(méi)有與他聯(lián)系了,我想他現(xiàn)在應(yīng)該已經(jīng)在國(guó)外了。他畢業(yè)的時(shí)候,我留校讀研,于是從他那里摸走了近800塊錢的書(shū)。現(xiàn)在在我枕邊的Introduction to Algorithm的影印版,最早便是他的。今天下午和本文的罪魁禍?zhǔn)钻愯麇谄ぴ≒izza Hut)吃著他的軟飯,并吹牛的時(shí)候,也提到了算法導(dǎo)論。感謝邦邦,是你給我提供了如此多吹牛逼的資本。書(shū)上密密麻麻都是你的筆記。不明就里的人,還以為是我刻苦讀書(shū)的結(jié)果。但是實(shí)際上我的書(shū)從來(lái)都比臉干凈。

            碩士階段,若干件大事。但是能記錄在這里的卻很少。頭等大事,發(fā)生的最晚。是我認(rèn)識(shí)了現(xiàn)在的女朋友。我是在臨畢業(yè)的時(shí)候和她走到一起的。那個(gè)時(shí)候事情是如此之多,以至于重要的信息全部都被各種畢業(yè)前夕的噪音掩蓋的一干二凈。和我很親近的師妹都被我蒙在鼓里,上個(gè)月還在QQ上很傷心的問(wèn)起我為什么我一聲不吭就甩了和我相濡以沫了多年的他的男朋友暨我的相好,而和另外一個(gè)可愛(ài)溫柔潑辣的MM遠(yuǎn)走高飛了。我不知道怎么回答她的傷心和無(wú)助,只能說(shuō)等到南京的時(shí)候讓她一定要請(qǐng)我吃飯。

            第二件大事,發(fā)生的最早,和技術(shù)也有點(diǎn)關(guān)系。就是SoftArt項(xiàng)目的開(kāi)始。是07年底。花了兩個(gè)多月寫(xiě)了個(gè)原型。最后居然也不知道怎么的他媽的就可以運(yùn)行起來(lái)了。如果不是龔敏敏鼓勵(lì)我,這個(gè)東西指不定又要胎死腹中。07年底到現(xiàn)在,項(xiàng)目一直都很順利,雖然進(jìn)度有點(diǎn)慢。那不是因?yàn)闆](méi)人手么。08年底的時(shí)候,加了一個(gè)編譯器到項(xiàng)目中。但是到現(xiàn)在這個(gè)編譯器仍然只是雛形。也是那個(gè)時(shí)候我逐漸和本文的罪魁禍?zhǔn)钻愯麇嘧R(shí)相知走到一起去相互掐架。迄今為止,這個(gè)編譯器也受到了他諸多的啟發(fā)和鼓勵(lì)。用一句話來(lái)表達(dá)我的感激之情,那就是——多謝你的吃屎,讓我只用聞屁就夠找到茅廁了。

            同時(shí)也感謝Un-stolen同學(xué),讓我可以在傷心絕望痛苦中無(wú)形的加快了項(xiàng)目的開(kāi)發(fā)進(jìn)度。

            第三件事情,在測(cè)繪局的實(shí)習(xí)。這大約是我做過(guò)的第一個(gè)成品項(xiàng)目。感謝領(lǐng)導(dǎo)同志和姐姐哥哥叔叔阿姨們對(duì)我的信任和支持,讓我有機(jī)會(huì)再一個(gè)數(shù)十萬(wàn)行的程序里,當(dāng)一個(gè)不那么稱職的Arch。這段經(jīng)歷其實(shí)對(duì)我之后很長(zhǎng)一段時(shí)間的作用是巨大的。特別感謝金琳姐,在我發(fā)現(xiàn)系統(tǒng)問(wèn)題并實(shí)施重構(gòu)的日子里,要不是你幫我扛住了主任的壓力,我還真有點(diǎn)不知道如何是好呢。不過(guò)知道我當(dāng)時(shí)做的成果,現(xiàn)在你們也在用,便覺(jué)得除了欠了你一頓面值300人民幣的飯外,還是有點(diǎn)點(diǎn)對(duì)得起你的。順便也祝官二代的你工作順利,早日升職:)

            以這樣一個(gè)數(shù)字,我的十年終于可以完滿的結(jié)尾了。

            如今我在Autodesk,算是過(guò)的不錯(cuò)。我的Team,我的Leader,我的Manager都很Nice,感謝你們給了我這個(gè)可以在團(tuán)隊(duì)里歷練自己的機(jī)會(huì),給了我這個(gè)可以開(kāi)發(fā)成熟產(chǎn)品的機(jī)會(huì)。對(duì)王先生和李先生而言,沒(méi)能去V公司,真是有點(diǎn)遺憾。但是現(xiàn)在看來(lái),我們之間其實(shí)是大有合作的機(jī)會(huì)的。還有MSRA,你并沒(méi)有能阻絕我全部的路。如果我想去,自信是不會(huì)有多少問(wèn)題的。

            在最后,感謝作為本文罪魁禍?zhǔn)椎年愯麇悄阕屛矣袝r(shí)間考慮這樣一個(gè)十年里我究竟是如何成長(zhǎng)的。感謝所有在文中出現(xiàn)過(guò)的人們。

            在機(jī)器面前打著哈欠等我寫(xiě)完的我的女朋友張小兔同學(xué),如果不是你一直在等我,恐怕這篇文章又要太監(jiān)了。不過(guò),我光榮而膽怯的宣布,我已經(jīng)寫(xiě)完,可以交差了。

            我愛(ài)你。

            posted @ 2010-12-19 23:57 空明流轉(zhuǎn) 閱讀(5223) | 評(píng)論 (20)編輯 收藏

            Syntax of SASL Symbol Name Mangling

            September 26

            2010

            This script describes the rules of symbol name mangling.

            V1.0

            SASL Name Mangling Syntax

            V1.0

            Name mangling can be applied to name of function mainly, for distinguishing the overloaded function

            MangledName is the result of Name Mangling. It starts with ‘M’ character and ends with ‘Z’ character.

            MangledName ::= ‘M’ QualifiedName ‘@@’ ParameterTypes CallingConvention

            QualifiedName is base name qualified by scope name. A scope name could be a structure name, class name or namespace name.

            ParameterTypes describes the types of parameter list.

            ‘@@’ is the splitter between qualified name and parameter type.

            QualifiedName ::= ( ScopeName ‘@’ )* BaseName

            QualifiedName is composited by scope name and base name. ‘@’ is used to split the scope segments.

            ScopeName ::=

            ‘S’ StructTypeName

            ‘N’ NamespaceName

            StructTypeName ::= <name of structure>

            NamespaceName ::= <name of namespace>

            BaseName ::= <literal name of function>

            ScopeName are two sorts, structure name or namespace name. Sorts are distinguished by a lead character. If the name starts with ‘S’ it means the name of structure, and ‘N’ means following name represents a namespace. Note that, if

            BaseName is the literal name of the function or a type.

            ParameterTypes is a list of parameter types. Because SASL do not support variance parameters, so we need not to considerate that. Syntax of ParameterTypes as following:

            ParameterTypes ::= ( ParameterType ‘@@’)*

            ParameterType is encoded by type qualifiers and type name.

            NOTE THAT, anywhere type name referred means that the original definition name but not alias( such as generated by “typedef” ).

            ParameterType ::= ScopeQualifiedTypeName

            ScopeQualifiedTypeName is the type name qualified by scopes. It is similar with qualified name.

            ScopeQualifiedTypeName ::= ( ScopeName ‘@’ )* BaseTypeName

            ScopeName ::= ( ‘S’ StructTypeName ) | ( ‘N’ NamespaceName )

            QualifiedBaseTypeName ::= TypeQualifier BaseTypeName

            TypeQualifier ::= (‘C’)?(‘S’)?(‘U’)?Q

            TypeQualifier describes the qualifier of declaration. In SASL, following qualifiers are supported: constant qualifier (‘C’), uniform qualifier (‘U’) and shared qualifier (‘S’). Each qualifier is represented as a character, and qualifiers is ended by a character ‘Q’.

            BaseTypeName ::=

            ‘S’ StructTypeName

            ‘B’ BuildinScalarTypeName

            ‘V’ BuildinVectorTypeName

            ‘F’ FunctionTypeName

            ‘M’ BuildinMatrixTypeName

            ‘A’ ArraySize ArrayComponentTypeName

            StructTypeName ::= <literal name of structure>

            BuildinScalarTypeNames encode all build-in type into one or two characters.

            BuildinScalarTypeName ::=

            ‘U1’ | ‘U2’ | ‘U4’ | ‘U8’ |‘I1’ | ‘I2’ | ‘I4’ | ‘I8’ | ‘B’ | ’F’ | ‘D’ | ‘O’

            ArrayComponentTypeName ::= QualifiedBaseTypeName

            ArraySize ::=

            <length of array >

            ‘V’

            They are corresponded following building types: uint8_t, uint16_t, uint32_t, uint64_t, int8_t, int16_t, int32_t, int64_t, boolean, float, double and omit (void).

            BuildinVectorName ::= VectorLength BuildinScalarTypeName

            BuildinMatrixName ::= RowCountOfMatrix ColumnCountOfMatrix BuildinScalarTypeName

            BuildinVectorTypeName shows the name of building vector. It makes of length component and scalar type component.

            VectorLength Could be 1, 2, 3 or 4 and represents the length of vector.

            And the BuildinMatrixTypeName is similar as build-in vector type name.

            ArraySize is an integer demonstrating the size of fixed-length array or ‘V’ (void or variant) means that it is a variant length array.

            ArrayComponentTypeName is the description of type of component of array. For example, array component type of “int32_t[]” is “int32_t”. So array component type name is set to the mangled name of int32_t, “I4”.

            CallingConvention is a single character which shows the calling convention of this function. ‘S’ means “__stdcall”, ‘C’ means “__cdecl” and ‘F’ ,means “__fastcall”

            CallingConvention ::=

            ‘S’

            ‘C’

            ‘F’

            FunctionTypeName reuses all non-terminators and terminators mentioned above.

            FunctionTypeName ::= ReturnType PrarameterTypes CallConvetion ‘@@@’

            ReturnType ::= ParameterType ‘@@’

            posted @ 2010-09-26 19:12 空明流轉(zhuǎn) 閱讀(1690) | 評(píng)論 (2)編輯 收藏

            明拜之,請(qǐng)?jiān)唬昂?jiǎn)報(bào)可乎?”曰:“可。”

            咳咳。最近由于SoftArt的幾個(gè)參與人員工作都比較繁忙,因此進(jìn)度上比較松散。但是大體上,SoftArt一直是按照預(yù)先想好的計(jì)劃在進(jìn)展。為了讓大家知道SoftArt的開(kāi)發(fā)進(jìn)展,同時(shí)也是我們開(kāi)發(fā)人員自己的備忘,我們?cè)谏套h后,決定以簡(jiǎn)報(bào)的形式,不定期地將SoftArt的變化和進(jìn)展及時(shí)地呈現(xiàn)出來(lái)。

            簡(jiǎn)介

            本簡(jiǎn)報(bào)主要總結(jié)了09年11月份以來(lái)SoftArt的變更情況。

            對(duì)于SoftArt來(lái)說(shuō),09-10年度是非常重要的。在這一年中,盡管SoftArt并沒(méi)有加入多少新的特性的加入,但是架構(gòu)、性能都經(jīng)過(guò)了持續(xù)性的優(yōu)化。

            在Graphics方面,Minmin為SoftArt撰寫(xiě)了全新的光柵化算法。新的光柵化算法與Larrabe的細(xì)分方法類似。這一算法在并發(fā)能力上有很明顯的優(yōu)勢(shì)。盡管在目前性能上與上一版的掃描線算法相對(duì)弱勢(shì),但是經(jīng)過(guò)Minmin的辛苦工作,這一弱勢(shì)已經(jīng)逐步的縮小了。就目前而言,我們認(rèn)為該算法仍然有很大程度的提升空間。

            同時(shí),紋理單元也經(jīng)過(guò)了大量的SSE優(yōu)化,目前的紋理單元效率已經(jīng)遠(yuǎn)遠(yuǎn)超出最初我為之撰寫(xiě)的版本。

            經(jīng)過(guò)一段時(shí)間的調(diào)優(yōu)之后,目前程序的瓶頸主要集中在裁切和頂點(diǎn)變換上。已經(jīng)朋友為我們提出了非常好的建議,接下來(lái)這也是我們工作的重點(diǎn)之一。

            當(dāng)然,根據(jù)估計(jì),在經(jīng)過(guò)一段時(shí)間的調(diào)整后,這些問(wèn)題一定會(huì)得到解決的。我們估計(jì)最終SoftArt的瓶頸將主要集中在兩個(gè)地方,一個(gè)是IO,一個(gè)是Shading部分。目前我們只是使用了簡(jiǎn)單的shading code,相信在shading code復(fù)雜之后,瓶頸會(huì)在很大程度上有所轉(zhuǎn)移。

            對(duì)于IO部分的瓶頸主要由紋理和后備緩沖產(chǎn)生。對(duì)于現(xiàn)代圖形算法而言,紋理又是重中之重。沒(méi)有特殊紋理單元的CPU在這一點(diǎn)上實(shí)在是吃了大虧。盡管我們?cè)贑ache Hit Rate及消除Function Call上下過(guò)一定的功夫,并使用了SSE加速了雙線和Mipmap的紋理插值計(jì)算,但是效果仍然達(dá)不到我們的預(yù)期。一旦引入各向異性過(guò)濾,可以預(yù)見(jiàn),在這一部分,還需要我們投入大量的精力來(lái)研究并解決這一問(wèn)題。

            但是由于C++ Shader Code在SIMD特性上的限制,目前我們并沒(méi)有設(shè)計(jì)并實(shí)現(xiàn)更加復(fù)雜的Shader。這一切都有待SASL(SoftArt Shading Language)編譯器完成之后才能。Minmin為SASL與渲染器連結(jié)的Host API部分撰寫(xiě)了完整的Specification(神人啊,真的是做什么都可以)。盡管目前這一部分在描述上比較簡(jiǎn)略,但是與DX11相似,相信大家一定可以比較容易的接受這套API。

            在編譯器方面,主要有Ye負(fù)責(zé)。目前的編譯器各個(gè)階段的接口以及語(yǔ)言特性已經(jīng)基本成熟。語(yǔ)義和代碼生成部分也在有條不紊的開(kāi)展。在編譯器設(shè)計(jì)期間,得到了Zihan Chen在技術(shù)上的大力支持,在此特別表示感謝。

            變更清單

            Nov 01,2009 – Nov 29, 2009 (r1 - r10) 此階段的工作主要是將原先在sf.net上的項(xiàng)目,移動(dòng)到Google code上,并對(duì)工程進(jìn)行了一定的調(diào)整,同時(shí)移除了一些編譯器警告。

            Dec 01,2009 – Dec 09,2009 (r11 - r29) 此間,Minmin為現(xiàn)有的C++ Shading Code的接口進(jìn)行了重構(gòu),修復(fù)了一些Bugs,并進(jìn)行了一部分的優(yōu)化工作。

            Dec 10,2009 – Feb 08,2010( r30 – r65) Minmin為SoftArt的頂點(diǎn)和光柵化提供了并行能力。光柵器以Block為粒度對(duì)三角形并行光柵化。

            Dec 09,2009 – Feb 21,2010( r27 – r66 ) Ye將SASL的分析器由Spirit 1.8移植到2.1

            posted @ 2010-08-23 18:19 空明流轉(zhuǎn) 閱讀(1953) | 評(píng)論 (1)編輯 收藏

                 摘要: 呃,紀(jì)念一段生活,與技術(shù)沒(méi)什么關(guān)系,不過(guò)還是想發(fā)在首頁(yè)TAT  閱讀全文
            posted @ 2010-06-24 23:13 空明流轉(zhuǎn) 閱讀(5948) | 評(píng)論 (14)編輯 收藏

            Python寫(xiě)的。有哥們兒說(shuō),Perl多好,一行就OK了,我囧。我不會(huì)那么高深的玩意兒,就只好寫(xiě)的煩一點(diǎn)。大bug沒(méi)有,小bug肯定是有的,湊合著用吧。反正是腳本的,不滿意的同鞋可以慢慢改。。。

            有圖有真相

            image

            好吧,softart可憐兮兮的才15K行代碼,有一半以上都是叛叛貢獻(xiàn)的了可能。這里的統(tǒng)計(jì)還包括了一部分的py代碼。

            猛點(diǎn)我下載腳本

            posted @ 2010-06-22 01:18 空明流轉(zhuǎn) 閱讀(2033) | 評(píng)論 (4)編輯 收藏

            SoftArt是一款遵守GPLv2協(xié)議的開(kāi)源軟件渲染器,目的是在CPU上實(shí)現(xiàn)Direct3D 11的全部功能。

            項(xiàng)目介紹參見(jiàn)這里

            主頁(yè)參見(jiàn)這里

            目前固定管線的工作已經(jīng)結(jié)束,Shading Language的編譯器也在緊張開(kāi)發(fā)中。

            以下是目前的兩個(gè)Demo的截圖。

            ComplexMesh

            SampleWindow

            在接下來(lái)的工作中,除去核心部分的進(jìn)展外,性能示例、測(cè)試用例和特性展示。我們希望通過(guò)這些用戶程序的開(kāi)發(fā),暴露SoftArt的性能、穩(wěn)定性、Feature上的優(yōu)勢(shì)和缺陷。

            考慮到Roadmap和目前的人手情況,我們希望招募一些志愿開(kāi)發(fā)者從事Demo的開(kāi)發(fā)工作。我們以極大的熱誠(chéng),歡迎您的加盟。我們可以給予您一個(gè)良好的學(xué)習(xí)鍛煉的機(jī)會(huì)。考慮到主要成員均為在職,可能沒(méi)有更多的時(shí)間來(lái)輔導(dǎo)和培訓(xùn),因此我們希望你可以具備一些基本條件:

            * 有一年左右的C++經(jīng)驗(yàn);

            * 對(duì)開(kāi)發(fā)和圖形學(xué)有鉆研的興趣;

            * 有一定自學(xué)能力,在較少的指引下高效的學(xué)習(xí);

            * 有恒心,有熱情參與開(kāi)源項(xiàng)目;

            * 當(dāng)然,如果您有一定的圖形學(xué)基礎(chǔ),那就更好了。

            項(xiàng)目目前的核心開(kāi)發(fā)成員及顧問(wèn),均具有6-12年的開(kāi)發(fā)經(jīng)驗(yàn),供職于業(yè)內(nèi)的頂級(jí)企業(yè)。為了讓您能夠快速溶于項(xiàng)目中,項(xiàng)目組會(huì)視情況組織在線/線下的培訓(xùn)和交流活動(dòng)。相信每個(gè)成員均可以在本項(xiàng)目的實(shí)施過(guò)程中獲益匪淺,項(xiàng)目也會(huì)因?yàn)槟呢暙I(xiàn)而更添光彩。

            如果您有這方面的意向,請(qǐng)致Email于 wuye9036@gmail.com

            請(qǐng)?jiān)贓mail注明你的:

            ID:常用的ID,最好包括真實(shí)姓名

            Google Account:如果沒(méi)有,可以申請(qǐng)一個(gè)。因?yàn)槲覀兊腟VN Repository是建立在Google Code上的)

            聯(lián)系方式:IM(QQ,MSN,GTALK)和Email,有手機(jī)最好

            自我介紹:包括擅長(zhǎng)的技術(shù)啦,項(xiàng)目經(jīng)驗(yàn)啦,閑扯也可,呵呵

            希望參與的工作

            其他要求:任何要求皆可

            我們會(huì)在第一時(shí)間與您聯(lián)系,商討具體事宜。真誠(chéng)期待您的加盟!

            posted @ 2010-06-12 16:19 空明流轉(zhuǎn) 閱讀(2015) | 評(píng)論 (6)編輯 收藏

            Visual Studio 2010開(kāi)了一整天,敲了不到10行代碼,然后幾秒鐘就被Ctrl + Z掉了。將三方協(xié)議寄出之后,難免有些松懈與混沌。周四體檢結(jié)果出來(lái),一切也就塵埃落定了。既然沒(méi)心思干活,那可以隨便寫(xiě)點(diǎn)什么,總結(jié)一下自三月份求職以來(lái)的種種經(jīng)歷,打發(fā)一下時(shí)間。

            這幾個(gè)月求職對(duì)我來(lái)說(shuō),還算是比較順利的。到現(xiàn)在為止,MSRA的電話面試應(yīng)該算是全部通過(guò)了,V公司也到了談Offer的階段。不過(guò)由于時(shí)間限制、興趣、職位等種種因素,最終我還是選擇了A公司的Offer。這點(diǎn)要向被我放了鴿子的朋友和公司道歉。有些事情,真的要看緣分和運(yùn)氣。待遇、職位、工作內(nèi)容、工作地點(diǎn),對(duì)我來(lái)說(shuō)都比較適合,而且又有認(rèn)識(shí)的多位前輩在其中供職,對(duì)能有這份工作,我是很高興的。

            我收到面試的機(jī)會(huì)不算特別多,MSRA三次中文的電話面試,A公司的一次電話和兩次Face-to-face,V的Face-to-face,還有一個(gè)做GIS的單位G的Face-to-face的面試。

            最早接受的,是G單位的面試。G單位采取的面試方式是一個(gè)Introduction,就是介紹下自己做過(guò)什么工作,然后Manager會(huì)介紹一下公司主要做哪些方面的工作。由于沒(méi)什么問(wèn)題,所以面下來(lái),氣氛很好。不過(guò)最后我一個(gè)在公司里工作的朋友告訴我,我被拒了。為什么不知道,連正式通知都沒(méi)有。所以我也不好說(shuō)什么的。不過(guò)大體上,這次面試就拉開(kāi)了我被面的序幕。

            MSRA三輪電話面試倒是各有特色。第一輪主要問(wèn)我做過(guò)什么,對(duì)職業(yè)有什么規(guī)劃,傾向于什么。然后簡(jiǎn)單的問(wèn)了兩個(gè)技術(shù)問(wèn)題。第二輪是個(gè)單純的技術(shù)面試。問(wèn)我一個(gè)Large-scale的圖片瀏覽系統(tǒng)應(yīng)該怎么設(shè)計(jì)。然后我就在他的引導(dǎo)下,一步一步的深入,最后還算是比較順利的紙上談兵的解決了問(wèn)題。反正嘛,不外乎就是Tune-Opt這樣的順序。對(duì)于這類數(shù)據(jù)訪問(wèn)型的數(shù)據(jù),本質(zhì)上就是運(yùn)用Cache解決訪問(wèn)速度的問(wèn)題。解決的好不好,面試這么短時(shí)間內(nèi),也是問(wèn)不出來(lái)的。所以對(duì)付面試,有充分的分析問(wèn)題的能力比較好。至于解決問(wèn)題,那個(gè)面試很難考察的清楚。然后有一個(gè)徹底把我打垮的問(wèn)題:操作系統(tǒng)的常用內(nèi)核對(duì)象有哪些?我直接長(zhǎng)大了嘴,然后過(guò)了好幾分鐘,干凈利落的回答,不知道。然后是一些C++的問(wèn)題。比方說(shuō)struct和class有沒(méi)有什么相同和不同啦一類的。或者是一些很概念性的,諸如Template用在哪些場(chǎng)合。第三輪電話面試比較郁悶。有個(gè)哥們兒一口咬定,我不適合做研究。然后27min中的面試有10min是他在接別人電話,還有至少10分鐘,是糾結(jié)在我不適合做研究的問(wèn)題上。問(wèn)題是我本來(lái)就申請(qǐng)的是RSDE,哪有多少研究的。

            V是我第二個(gè)Face-to-face的面試。面試我的是一個(gè)挺能侃的哥們兒,看樣子是Team Leader。先讓我做了一套Cpp的題目,我在博客里面也總結(jié)了,這里就不再多說(shuō)了。然后就是一些公司發(fā)展啊,職業(yè)發(fā)展啊,定位啊一類的。圖形方面問(wèn)道的題目不多,倒是一些諸如不同調(diào)用協(xié)議之間的區(qū)別一類的匯編級(jí)的問(wèn)題被問(wèn)的很多。我對(duì)這些僅僅就了解了一個(gè)皮毛,因此回答的也很勉強(qiáng),很復(fù)雜的問(wèn)題,例如為什么cdecl下,參數(shù)是自右向左進(jìn)棧這樣的問(wèn)題,就很難回答的上來(lái)了。不過(guò)整體上,從他的侃大山里,學(xué)到了不少東西。

            A的兩次,是典型的大公司的兩次面試。第一次面試的是做QA的Team,最后因?yàn)楹臀业钠谕毼徊贿m合,所以他們的Leader沒(méi)有給我Offer。第二次就是現(xiàn)在拿Offer的這一次。

            一般來(lái)說(shuō),這類大公司面試,就是分為技術(shù)面試和Communication兩個(gè)部分。

            第一個(gè)部分就是考察你技術(shù)怎么樣。技術(shù)考察一般分為以下步驟:首先,你做過(guò)什么,簡(jiǎn)要的介紹一下。有什么動(dòng)機(jī),運(yùn)用了哪些技術(shù),效果如何,你主要做了寫(xiě)什么。這個(gè)時(shí)候比較好辦,吹水就可以了。遇到了什么問(wèn)題,怎么解決的。

            其次,一些專業(yè)技術(shù)性的問(wèn)題,比方說(shuō)算法一類的。這一類問(wèn)題底子好就比較容易搞,因?yàn)榧?xì)節(jié)不多。但是要注意回答到點(diǎn)子上。比方說(shuō)上一次被人問(wèn)了Mipmap究竟是什么含義。我偏導(dǎo)來(lái)、偏導(dǎo)去的解釋了半天,最后才算是猛的想起來(lái),回答是預(yù)計(jì)算的降采樣,面試我的哥們兒點(diǎn)點(diǎn)頭我才算過(guò)了關(guān)。

            再次就是工程學(xué)問(wèn)題。讓你寫(xiě)段代碼示例。這中間要注意很多方面,比方說(shuō)Guard Code。不是說(shuō)我不重視這些東西。但是我對(duì)于在白板這樣的思想交流工具上表達(dá)實(shí)現(xiàn)這么具體的東西很反感。有時(shí)候還會(huì)考一些基礎(chǔ)但是具體的算法實(shí)現(xiàn)。這一項(xiàng)上,我比較薄弱。不是算法本身就真的差到什么程度,主要還是因?yàn)槲沂鞘謨?cè)黨。沒(méi)有手冊(cè),你讓我寫(xiě)一個(gè)完全正確的算法,很困難。點(diǎn)到直線距離就讓我為難了好半天。這種基礎(chǔ)的東西,荒廢久了,還真難記得什么。所以代碼什么的漏洞百出,還讓面試我的前輩多少有點(diǎn)不太高興。這點(diǎn)還是因?yàn)槲姨贻p,頗有些沖動(dòng)和自以為是了。我一個(gè)朋友對(duì)我說(shuō),你有什么不重要,關(guān)鍵是,要是別人需要的,你都有,這才牛逼。我就把這句話當(dāng)做座右銘了,可惜目前的實(shí)施情況實(shí)在太不盡如人意。以后進(jìn)公司,這方面還是要注意一點(diǎn)比較好。

            第二個(gè)部分就是你的IQ啊,EQ啊,語(yǔ)言能力啊、交流能力啊一類的。這些比較寬泛,也很難有準(zhǔn)繩可以衡量。比方說(shuō)我第一次在A面試的時(shí)候,就遇到了HR給我出智商題。我就直言說(shuō)我這個(gè)人智商比較低。然后2道題就作出來(lái)1道,說(shuō)明我大體上是個(gè)誠(chéng)實(shí)的人。50%的正確率,大概和弱智沒(méi)多少區(qū)別了。第二次面試就沒(méi)有,直接面了英語(yǔ)。然后HR Z就說(shuō),我的英語(yǔ)太搓,云云。當(dāng)然比這個(gè)說(shuō)法婉轉(zhuǎn)。這個(gè)沒(méi)辦法,我得承認(rèn)。我的英語(yǔ)確實(shí)完全不靠譜。這個(gè)以后去了公司,還要多練練。

            就我不多的面試經(jīng)驗(yàn)來(lái)看。面試比我預(yù)先想的難度低。畢竟面試是允許不完美的,大差不差就可以了,不用把自己弄得太緊張。大公司也沒(méi)有一般人想象的那么難進(jìn),只要你能力上差不多,對(duì)得起一年10W左右的薪水(絕大部分外企的薪酬都在這個(gè)左右浮動(dòng)),就肯定能進(jìn)去。當(dāng)然,也是看緣分的。有時(shí)候沒(méi)有合適的職位,那也沒(méi)辦法,只要耐心一點(diǎn)等待就好了。

            最后祝將要找工作的同學(xué)一切順利。

            posted @ 2010-05-29 21:59 空明流轉(zhuǎn) 閱讀(2939) | 評(píng)論 (7)編輯 收藏

            對(duì)于C++一系的語(yǔ)言,Name Mangling主要用于同名函數(shù),同名類型和同名變量的重載。編譯器可以在編譯期將同名函數(shù)的不同簽名形式區(qū)分開(kāi)來(lái)。Name Mangling經(jīng)常用于以下場(chǎng)合:函數(shù)同名稱不同簽名(函數(shù)重載);跨編譯單元的變量、函數(shù)引用;動(dòng)態(tài)鏈接庫(kù)或其他形式的函數(shù)、變量導(dǎo)出。

            盡管現(xiàn)階段SASL不打算支持Member Function等比較復(fù)雜的行為,甚至?xí)簳r(shí)不考慮函數(shù)重載。但是作為現(xiàn)代語(yǔ)言編譯的基本要素,SASL在語(yǔ)義分析階段,仍然提供了較為完善的Name Mangling機(jī)制,為以后的編譯器特性擴(kuò)充打下基礎(chǔ)。

            SASL的Mangling語(yǔ)法如下:
            mangled_name = 'M' basic_name '@' return_value_type parameter_type_list '@' 'Z'
            basic_name = string '@'
            return_value_type = value_type
            parameter_type_list = ( value_type )*
            value_type = qualifier_code type_code
            qualifier_code = "UN" | "CN" | "NN" | "UC"
            type_code = buildin_typecode | struct_class_typecode | array_type_code
            buildin_typecode = dimension_code basic_type
            dimension_code = scalar | vector | matrix
            scalar = 'B'
            vector = 'V' (1|2|3|4)
            matrix = 'M' (1|2|3|4){2}
            basic_type =
              'S1' | 'U1' | 'S2' | 'U2' | 'S4' | 'U4' | 'S8' | 'U8' | 'F' | 'D' | 'V' | 'B'
            struct_class_typecode = 'S' string '@@'
            array_class_typecode = 'A' type_code size '@@'

            和主流語(yǔ)言相比,本Mangling暫時(shí)不支持Qualifier(Class Member,Namespace Qualifiers)。以后在需要Qualifier的時(shí)候再酌情添加。也就是說(shuō)暫時(shí)不會(huì)考慮現(xiàn)有版本和以后版本在二進(jìn)制上的兼容性。

            以下是一個(gè)mangling的例子:

            double foo();  => Mfoo@@NNBD@Z

            posted @ 2010-05-24 23:00 空明流轉(zhuǎn) 閱讀(1580) | 評(píng)論 (7)編輯 收藏

            SALVIA的近期計(jì)劃主要集中在工程方面。開(kāi)發(fā)組希望能在年底前放出第一個(gè)Release。在年底之前,大致的安排如下:

            6月份,Code Review Standard。大體上參照Boost和Google的Standard來(lái)制定。

            6月底之前,Roadmap。Roadmap將按照兩個(gè)階段分別制定項(xiàng)目計(jì)劃表。第一個(gè)階段到年底,即第一個(gè)Release發(fā)布之前。第二個(gè)階段為2011年之后。

            在6月份和12月份,項(xiàng)目組將分別撰寫(xiě)一份工作報(bào)告。工作報(bào)告預(yù)計(jì)包含 For Developer, For User, For Manager, For Roadmap四個(gè)部分。For Developer主要總結(jié)開(kāi)發(fā)進(jìn)展,針對(duì)部分有代表性或關(guān)鍵代碼的Code Review撰寫(xiě)報(bào)告,并對(duì)下個(gè)階段的項(xiàng)目實(shí)施提出建議。For User將主要總結(jié)API和文檔在這一階段的變化情況,并提供一份性能、功能、安全性、健壯性和Bug部分的用戶指南。For Manager將對(duì)半年來(lái)的配置管理、任務(wù)分配等一系列的工作進(jìn)行整理、匯報(bào)和評(píng)價(jià),提出下一階段的工作的綱要和工作指導(dǎo)。For Roadmap將對(duì)Roadmap的實(shí)施程度、變更情況加以解釋和說(shuō)明,并對(duì)Roadmap進(jìn)行修正,提出完整的下一階段工作計(jì)劃。

            12月底之前,Wiki、Forum和FAQ的建設(shè)。

            12月底之前,用戶文檔開(kāi)發(fā)者文檔的整理編寫(xiě)工作。我們將盡量使用戶文檔能夠在Release時(shí)發(fā)布,但是囿于人手,項(xiàng)目組暫時(shí)不能對(duì)文檔的進(jìn)度予以承諾。

            同時(shí),SALVIA開(kāi)發(fā)者的招募工作仍然在繼續(xù)當(dāng)中詳情可以參見(jiàn)本博的置頂帖。

            最后,項(xiàng)目組成員感謝您對(duì)本公告的關(guān)注,并真誠(chéng)希望您的參與!

            posted @ 2010-05-12 18:56 空明流轉(zhuǎn) 閱讀(1627) | 評(píng)論 (2)編輯 收藏

                 摘要: 感謝那些在碩士期間幫助過(guò)我的淫們~  閱讀全文
            posted @ 2010-04-29 16:00 空明流轉(zhuǎn) 閱讀(5304) | 評(píng)論 (14)編輯 收藏

            僅列出標(biāo)題
            共12頁(yè): 1 2 3 4 5 6 7 8 9 Last 
            久久人与动人物a级毛片| 久久亚洲高清综合| 久久久久99精品成人片欧美| 久久棈精品久久久久久噜噜| 香蕉久久一区二区不卡无毒影院 | 无码任你躁久久久久久老妇| 久久久久久久综合狠狠综合| 国内精品伊人久久久久AV影院| 精品久久久久久无码中文字幕 | 久久天天躁狠狠躁夜夜躁2014| 久久久久亚洲av无码专区导航| 久久AAAA片一区二区| 久久久无码精品亚洲日韩按摩| 久久91精品综合国产首页| 亚洲国产精品无码久久久不卡| 日本精品久久久久中文字幕8 | 久久精品国产第一区二区三区| 久久久网中文字幕| 久久国产精品99久久久久久老狼 | 国产午夜久久影院| 99久久做夜夜爱天天做精品| 狠狠色丁香婷婷综合久久来来去| 久久久国产乱子伦精品作者| 中文字幕乱码久久午夜| 婷婷久久综合九色综合九七| 93精91精品国产综合久久香蕉| 久久国产精品无码HDAV| 青草国产精品久久久久久| 久久国产AVJUST麻豆| 亚洲精品无码专区久久同性男| 国产国产成人精品久久| 午夜精品久久久久久影视777 | 一97日本道伊人久久综合影院| 99久久免费国产特黄| 久久久久99精品成人片欧美| 久久免费视频1| 久久久久av无码免费网| 久久久久久久波多野结衣高潮 | 国产精品美女久久久免费| 99精品伊人久久久大香线蕉| 国产综合成人久久大片91|