我是一個非計算機專業的學生,但是我卻對計算機有著相當大熱情。大一時我加入了學校網管中心下屬的一個網絡社團,參與維護和開發學校裡最大的網站——點擊網絡。此時網站是采用ASP技術實現的,為了方便改動一些頁面的布局和著色,我試著了解了一些ASP知識,不過也沒怎麼深入。大二我當上了站長,開始為整個網站的未來做打算。我個人的性格是比較喜歡追新的,ASP技術已經有點落伍了,又考慮到當時整個網站的速度在ASP+ACCESS的制約下變得相當慢,所以我想把整個網站的架構來一次大換血,綜合易用、兼容、安全和性能等多方面的考慮,我決定采用微軟比較新的技術ASP.NET。
在網上搜索了很多免費的ASP.NET整站程序,只有一個勉強符合我的要求,它還是用的ACCESS數據庫,而且有一些欄目沒有,要加上去。沒辦法,我只有現學現賣,好在當時在放寒假,有足夠的時間讓我來摸索。最開始我完全不會,就憑我那點“Response.Write”的ASP知識根本就不知道源碼裡的那些東西是什麼,沒法,我只有死記代碼,放假前在圖書館借了本《Ado.Net 技術內幕》,邊做邊摸索,一個假期下來,我還真成功了(改為ASP.NET+MS SQL Server, CodeBehind),要知道,之前我一點ASP.NET和SQL Server的知識都沒有哦。
再後來我不滿足於知道如何編寫代碼,我更想知道一些底層知識,了解為何要這麼寫,於是我開始閱讀一些比較“原理”一點的書,真的,了解了這些知道後,你會有一種豁然開朗的感覺,你會發現,哦,原來我背的那些東西原來是這麼一回事呀。了解一門語言,應該從它的底層開始,從局部到整體,從微觀到宏觀,這樣你才會用好它,讓它更能按你的意願去運行。
到現在我的ASP.NET還是半桶水,不敢妄言些什麼,但做為一個過來人,我可以給初學都一些建議和我的一些看法,希望對你們有點幫助。
首先要培養自己學習的興趣,沒有興趣,當完成任務樣的來學習知識,效果不好。
要具備一些計算機基礎知識。搞計算機的,怎麼能不懂計算機呢?不要求你對每方面的知識都很專,但起碼要各部分都要了解一點。不然電腦出了點小問題都不會解決,也太說不過去了。
英語要學好,數字要學好!很多資料是英文的,試想一下你只會漢語,就算你的技術很高,但是你總是會比別人慢半拍的,很多知識你也學不到,誰叫計算機這東西是老外發明的呢?數學的重要性不言而喻,它可以鍛煉你的思維。
當你有一個目標的時候,你就應該專心的、專一的、努力的去實現它,不要再想“我還要實現什麼什麼”之類的,一步一步,踏踏實實的來,你會發現這樣你學的更快。(不能一概而論,特殊原因除外)
經常在網上看到網友爭論到底是C#還VB.Net好,其實.Net平台的語言無關性,決定了C#和VB.NET沒有任何本質上的區別,它們只是表達的語法不同,爭論這些毫無意義,如果你非要問我哪個好,那麼我會說C#,為什麼呢,因為它看起來更漂亮,好像還有點流行,更重要的是,這樣可以堵上你的嘴。
非計算機專業的同學如果要學習編程,那麼.Net是一個非常好的選擇。為什麼這麼說呢?因為在CLR的管理下,微軟將很多編程的細節抽象化了,程序員不需要了解很多東西,這樣以犧牲了對性能的絕對控制來換得非常高的開發效率。在Web development這方面,這點性能的損失微不足道,也許這點是ASP.NET在整個.Net中占有比較重要地位的一個原因吧。
都說.Net入門容易,精通難,個人非常贊同這個觀點。.Net框架博大而精深,光是把namespace全部記住都有點難,何況是更為具體的class和struct呢?所以說,你小有所成了,不要沾沾自喜,路還長著呢,同學,繼續加油吧,let’s go on。
要學知識,不能不看書,但是並非看的越多越好,要看好書,具體的可以看看我的這篇BLOG,,文中觀點代表我個人的喜好,你還可以到China-Pub上去看看書評。單獨提一下,那這本書你不得不看:《Applied Microsoft .NET Framework programming》,建議看中文版:。看書的時候,最忌諱只看不動,根本不在電腦上實踐。除非你是絕頂聰明的人,過目不忘,不然我保證讓你關了書,你什麼都不知道了,所以一定要實踐,要敲代碼,一天敲它個幾百行的,不僅要知其然,還要知其所以然,這樣下來,過幾個月你就是高手了,呵呵。