接到一位前不久C#培訓學員的來信,這位學員雖然以前功底欠缺,但學習勁頭很足,在培訓中成長很快。即便基本吃透《.NET框架(修訂版)》還嫌不夠過癮,一心要成為高手中的高手。來信的目的是希望我來指點進階方向。
說實話,我一般不想在這些有關個人發(fā)展的大是大非的問題上給人指導,因為太多親身或眼見的經(jīng)歷告訴我人生實在是很難捉摸,善良、智慧、勤奮這些我們珍視的品格常常會碰到可怕的現(xiàn)實。我感覺我鼓勵一個人的時候,我只關注到了“程序正義”,并沒有多大的信心向他保證“結果正義”。人生不像軟件,可以在好的設計下有一個好的產(chǎn)出。
但我又不想讓后學失望,也就冒昧地寫下了下面一點個人淺陋的心得,摘錄一段,接受各位朋友的檢閱:
……
不談具體領域(比如搜索,視頻,網(wǎng)絡等),單就編程語言這個垂直方向,我大體上對它有一個如下的層次劃分。
1. 基本運用C#語法,在各種工具和示例代碼的支持下,完成一些基本程序任務
2. 熟練掌握面向?qū)ο笈c組件構造,知其然亦知其所以然,完成一般小規(guī)模信息管理類軟件項目開發(fā)任務
3. 深入理解CLR內(nèi)核機制,對各種類型與.NET平臺機制的優(yōu)缺點、適用場合、效率有清晰把握,能夠完成技術復雜度比較高的項目。
4. 能夠游刃有余把握松耦合原則,精準運用各種語言構造,架構大型軟件項目。
5. 能夠站在計算機抽象、系統(tǒng)和歷史發(fā)展的高度來理解和把握編程語言
我判斷你現(xiàn)在大致介于2-3之間的位置,當然在這些方向上的成長,有些部分是培訓能夠大幅度幫助大家的,有些部分培訓只能起輔助作用,經(jīng)驗和對技術的追求態(tài)度才更為重要
……
說實話,編程語言本來不該這么重要,但是現(xiàn)在接近兩年的培訓經(jīng)驗下來,接觸的培訓學員林林總總,從最底端幾乎沒有什么編程經(jīng)驗的,到高端的在企業(yè)擔任關鍵開發(fā)任務的。發(fā)現(xiàn)在中國,編程語言事實上是大多數(shù)開發(fā)人員的硬傷,大部分程序員介于1-2之間——原因就不多說了,中國大學的計算機教育只有在一個人徹底理解了計算機之后才會深刻體認到它是多么的荒謬和失敗。
可能是受早年蔡元培、梅貽琦等先賢的熏陶激情而發(fā),兩年前開始以做教育的心態(tài)趟上了軟件培訓這渾水,兩年下來著實辛苦,然看著現(xiàn)實在努力下一點點改變,固然不大,卻倍感欣慰。
更多信息請查看IT技術專欄