如何閱讀CLR via C#?
01-13
有三年的http://asp.net開發經驗,主要是web開發,最近想讀點書,深入下,今天看第一章,感覺太難了。。請大咖們指點迷津。
大致分三種讀法:
細讀:都要讀懂,要都理解了,讀不懂反覆讀,找額外資料讀。
通讀:大致都了解可以幹嘛,盡量看懂。粗讀:隨手翻下,讀不懂可以跳過,時不時回頭看看。以第4版為例:
Ch1通讀。Ch2和3粗讀。Ch4到19:細讀,全是基礎內容。Ch20細讀,最後兩節(CER和Code Contract)可以粗讀。Ch21細讀,講GC的,比較重要。Ch22粗讀。Ch23到25通讀。Ch26細讀。Ch27到30通讀。2年前我之前看這個,陸陸續續,翻來覆去,看了幾遍。有的章節是第2-3次翻看的時候。才明白。
現在屁都想不起來。囧。這書基本上就是工具書。
對於工具書,基本上我是這樣用的。隨便翻翻,對整體有些映象之後,就丟一邊。
等有問題的時候,再回頭仔細看。當你被虐的死去活來,仔細研讀武功秘籍,突然獲得一大招。
反覆修行之後,成功使出。滅掉大BUG。爽!環顧四周!無人喝彩!坐下來,繼續干!娘匹西!悶騷程序猿就是這樣養成的!聽我的,跳過第一章。
雖然我沒看完,不過我可以給你個看書的好方法。
1,地毯式看書法。力求理解書內的「全部」知識細節, 一個不放過。前期這個方法對提高能力極端好用,缺點就是累啊,煩躁啊。2,地毯式看書法進階 分裂式學習法首先把自己分裂成兩個人,此步驟極端困難。一個是老師備課,一個是學生學習。注意一定要分離。然後同時作為老師和學生,老師備課,學生預習。一周以後,老師講課(說出聲最好),學生聽講並提出問題。一周以後,老師回答學生問題。
對於難懂、難記、難領會的知識。這兩個方法及其拔群。前25章細讀,後面的線程 非同步 內存模型 需要找其他書去了解。關於垃圾收集這塊,去結合java的虛擬機去對比看看。
作為在unity里用csharp 來熱更新邏輯這種方式的發明者,掌趣的ilruntime借鑒了我的發明。我就很不要b臉的假設自己有能力回答這個問題。1.我從沒看過clr via c#這本書,直到我決定用c#寫一個dotnet 虛擬機的時候。2.clr via c#是一本工具書。工具書是什麼,解釋太複雜,字典就是最典型的工具書。至今我也沒看完clr via c#,我認為這個世界上沒有一本工具書是需要你看完它的,請參照新華字典。3.你更應該關注工具書怎麼用,別的不說,新華字典若沒有老師教,怕也難用。若你完全找不到什麼事情需要查閱這本工具書,他對你就只是一本天書。題目已經答完了,其它的雖然偏題,還是要逼逼一下,我懷疑題主想問而沒問出來的東西。clr vir c#是一本什麼書,兩個部分,一,計算機原理,特指馮諾依曼機。二,dotnet 虛擬機的實現細節手冊。如果你已經學懂了計算機原理,這本書你不用看了,實現細節完全就是字典型的,你不去搞虛擬機,不去搞反編譯,不去查mono 的bug,好像就沒啥動機去查這本字典。如果你沒搞懂計算機原理,這倒是一本不錯的實踐教材。
一拿到手直接看你敢興趣的,估計你只挑感興趣的也能看很久(要消化掉)。其他的可以慢慢看,看不懂的至少得有個印象,以後碰到能想起就行,然後去慢慢琢磨。
推薦閱讀:
※如何評價 ASP.NET vNext?
※C#的前景怎麼樣? 真的沒落了嗎?
※CoreCLR 和 CLR 的差別很大嗎?
※WPF中如何通過數據綁定使用ProcessBar控制項?
※託管應用程序的性能實際上超過了非託管應用程序?