來源:北大青鳥飛迅校區(qū)|發(fā)布時間:2013-04-17 16:45:41
說明:之所以叫不能說的秘密,并非因為保守,而是因為告訴一般人,他非但理解不了,還有可能要取笑你。所以有自尊的Hacker往往只傳自己信得過的人,以免自討沒趣。于是很多東西就逐漸成為了不能說的秘密。所以這個Hacker傳說系列也是一個嘗試,僅供參考。
一個Hacker相對于程序員來說有著超過100倍的驚人效率。并非是由于他們的智商超過一百倍。而在于他們掌握了程序員沒有掌握的"魔法"。
重量級秘密之一:Hacker的編程方式往往和普通程序員都是相反的。
Hacker的思維和工作流程都采用“以我為主"的指導(dǎo)原則。而程序員都是采用“以電腦為中心“的方式。
以一個最簡單的例子來說,程序員喜歡使用IntelliSense,利用電腦幫助選擇api,而Hacker會把大多數(shù)的api熟記在心。也許你會說這個怎么能記住呢?其實絕對是可以的, 只是沒有人和我們強調(diào)這個看上去簡單之極的方法。
我們拿英語為例,一般來說掌握英語至少需要記住5000個單詞,其實編程和寫文章沒有什么兩樣,api就如同英語單詞一般。如果我們一邊寫文章,一邊要查字典,不但效率低,而且文章質(zhì)量差。而所謂的IntelliSense只不過把紙質(zhì)字典換成了快譯通而已。
當一個Hacker編程的時候,他腦中已經(jīng)迅速的用單詞(api)組織成為文章(program),自然就效率奇高了。那么記住api很難嗎?其實很容易,因為很多api都是要天天用的,一個程序員如果一年編程下來還不能背出80%的api,那么智商就在平均水平以下了。
但是事實是大多數(shù)程序員記不住api,這就是IntelliSense惹的禍了,看似很方便的鼠標一點,卻失去了將api刻寫到腦中的機會。這也是所有的Hacker對Visual Studio不屑一顧的根本原因。當我們看到一個Hacker用文本編輯器來寫程序的時候,其實他不是在?(園子里面的很多朋友把這稱為“裝”),他只不過是用正確的方法來做正確的事而已。
所以當你采用微軟模式編程,那么開始會非?,但是沒有積累,最后只是黃梁一夢而已。而Hacker所使用的Hacker模式, 開始會很慢,然后會越來越快。效率會呈現(xiàn)線性增長(這是親身體會,絕不夸大)。
其實著名的Hello World 慣例也包含了這樣的一個隱喻,認認真真的象寫Hello World一樣“一個字一個字“寫每一個程序,最后自然會成為高手。
還有很多例子,也體現(xiàn)了Hacker“以我為主“的思想。
大量的Hacker都在紛紛轉(zhuǎn)向動態(tài)語言,這是因為動態(tài)語言具有api容易記住的優(yōu)良特性(比如參數(shù)的順序可以是任意,這個可以大大減輕記憶量),因此當CPU不再是瓶頸后,動態(tài)語言成了最佳選擇。
大多數(shù)的Hacker都喜歡做底層,因為底層的api數(shù)量最少, 隨版本的變動最少,所以他們可以用較少的力氣來保持或者增加他們的效率。
所有的Hacker都對微軟技術(shù)很頭痛, 因為微軟非常喜歡推出新的api,因此當一個新版本推出,即使一個頂級Hacker,效率也可能會損失50%以上。這會令他們非常抓狂。
即使是.Net之父Anders他也喜歡做底層,他研究的是語言特性,涉及的api不過幾十個而已。如果讓他來寫asp.net,效率可能和我們也差不多。
招生熱線: 4008-0731-86 / 0731-82186801
學校地址: 長沙市天心區(qū)團結(jié)路6號
Copyright © 2006 | 湖南大計信息科技有限公司 版權(quán)所有
湘ICP備14017520號-3