版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
Net目前主要的開發(fā)方向是:Web開發(fā)、桌面系統(tǒng)開發(fā)、移動開發(fā)。Web開發(fā)通俗的說就是開發(fā)網站,包括類似于大眾點評網等這樣的互聯(lián)網以及OA等內網系統(tǒng),Web開發(fā)是目前.Net開發(fā)的主要方向,大部分招聘.Net的職位都是做Web開發(fā),以我教的.Net班為例,2010年幾個就業(yè)班的學員90%以上找到的都是Web開發(fā)方向的職位。桌面系統(tǒng)一般指的是使用WinForm技術開發(fā)Windows軟件,比如以Windows軟件形式運行的倉庫管理系統(tǒng)、圖書管理系統(tǒng)等,也就是一般說的C/S開發(fā)(不嚴謹?shù)恼f法),目前很多公司都有WinForm開發(fā)的產品,不過由于大部分公司的產品都開始轉向基于Web的版本,WinForm版本都處于維護狀態(tài),因此基本不再招聘WinForm版本的新員工。移動開發(fā)主要指的是手機開發(fā)。.Net手機開發(fā)目前主要是WindowsMobile的開發(fā),目前中國大陸地區(qū)WindowsMobile開發(fā)的工作非常少。微軟在今年(2010年)推出了WindowsPhone7(簡稱WP7)手機操作系統(tǒng),微軟在WP7手機操作系統(tǒng)的推出上繼續(xù)采用了微軟一貫的“落后半步、后發(fā)制人”的戰(zhàn)略,微軟慣于后發(fā)制人,比如當年就曾經用IE干死了曾經領先一時的Netscape瀏覽器,再比如.Net更是從先行者Java口中奪下了半壁江山。因此我個人非??春肳indowsPhone的前景,預計在2011年底WindowsPhone將會在移動市場上掀起狂瀾,對移動開發(fā)感興趣的朋友可以提前關注一下WindowsPhone的開發(fā)。微軟在技術的延續(xù)性上做的非常好,無論是Web開發(fā)還是WinForm開發(fā)還是移動開發(fā),他們采用的技術都是相通、相近的。因為他們都是基于同一個.NetFramework進行開發(fā)的,調用的語法、類都是一樣的,學習的時候只要學習特有的小部分內容就可以了,比如訪問數(shù)據庫都是AD0.Net、系統(tǒng)間通訊都是WCF。對于想學習.Net抓緊找工作的同學可以先以Web開發(fā)方向為主要學習方向,關于Web開發(fā)方向要學什么東西、怎么學,我將會在下一篇文章中介紹。移動開發(fā)市場將會越來越大,微軟現(xiàn)在推廣WindowsPhone的力量非常大,而且商業(yè)策略非常厲害,因此我預計在2011年底WindowsPhone將會在移動市場上掀起狂瀾,到時候WindowsPhone開發(fā)也將會帶來非常多的工作機會。如果對WindowsPhone開發(fā)感興趣,可以在把Web開發(fā)掌握熟練后提前做知識儲備。因為WindowsPhone界面用Silverlight,可以先學習Web下的Silverlight,這樣也不需要安裝額外的開發(fā)環(huán)境,掌握了Silverlight再學WindowsPhone開發(fā)就會輕松很多了。對于移動開發(fā)來講并不是只有手機客戶端的開發(fā),還會涉及到服務端的開發(fā),所以ADO.Net、XML、WCF、ASP.Net等服務端編程技術同樣需要學習。WindowsPhone是移動設備操作系統(tǒng),手機作為一種移動終端,必須與服務器端結合才能發(fā)揮巨大的作用。WindowsPhone是為移動互聯(lián)網時代量身打造的,移動互聯(lián)網時代的服務模式是“手機終端+互聯(lián)網絡+應用軟件”,也就是所謂的“云終端+服務器”。比如開發(fā)一個查詢公交線路的手機軟件‘WindowsPhone端只是一個交互和展示頁面,具體查詢、運算邏輯是放在服務器端的,手機端軟件向服務器發(fā)出查詢請求,服務端進行查詢、運算,然后將運算結果返回給手機端軟件,由手機端軟件進行顯示。除去手機單機游戲、短信管理、播放器等完全不需要服務端支持的應用之外,大部分手機應用都是需要服務端支持的,比如鄰訊、淘寶手機客戶端、金蝶隨手記、手機版金山詞霸、新浪手機微博等。WindowsPhone只是承載移動終端軟件的操作系統(tǒng),而服務端技術用于開發(fā)互聯(lián)網絡應用,所以未來移動互聯(lián)網時代軟件的主流應用模式將是“手機客戶端+互聯(lián)網絡應用服務端”,這種模式要求做移動互聯(lián)網開發(fā)的程序員不但要掌握WindowsPhone這樣的手機終端軟件技術還要掌握開發(fā)互聯(lián)網絡應用的服務器端技術。中我講到了目前.Net開發(fā)主要方向是Web開發(fā),因此在本篇中我將主要講解做Web開發(fā)要學哪些東西,怎么學,由于內容比較多,我將分幾次發(fā)。下圖是我推薦的學習內容和學習順序(除了這里列出的內容,要走向高手之路肯定還有更多技術需要學習,我這里只是對于初學者列出的主干學習內容,并不是全部):
理解而向対彖、事件、控件答的概盒C#面向過秤編秤 為后碩練習翌定堪礎C#面向對線基礎 WinForm做売扱件適必須熟練使用常用
SQL譏旬,不能犯只
懂select*fromt的錯堅實的客戶端時
開發(fā)基咄是不成
為“拖控件型開
發(fā)人員”的基礎10、XML、字符串處理、數(shù)搖貉構(Dictionary,List)FrameworkH1ML.理解而向対彖、事件、控件答的概盒C#面向過秤編秤 為后碩練習翌定堪礎C#面向對線基礎 WinForm做売扱件適必須熟練使用常用
SQL譏旬,不能犯只
懂select*fromt的錯堅實的客戶端時
開發(fā)基咄是不成
為“拖控件型開
發(fā)人員”的基礎10、XML、字符串處理、數(shù)搖貉構(Dictionary,List)FrameworkH1ML.JQueryADO.Ntt不要在語法細打特:別魁面問刈裁上過J:糾結控制臺程庠即叮通過練習昭養(yǎng)程序化的思維能力,埋解時裝和簡單-的繼施"NoDP!簡單的WinForm基本的.Net數(shù)據庫開發(fā)avaScript^Dom、ASP.NctttpHa訕《■方式開發(fā)不要一匕來直接學ASRNet
不要回丁拖拉披就認為"fmASP.Net”AJAX學會煜可能不使用服錚端控件進徉開發(fā)耍學會輕量級的開發(fā)方式開發(fā)者口中的.Net全稱是.NetFramework,在中國大陸,一般將.Net讀作"道特耐特"(中文音標比英文音標更好讀,呵呵)或者“點耐特”。.Net是微軟推出的一門技術,它是一個技術平臺,基于這個平臺進行開發(fā)可以簡化很多工作。關于到底什么是.Net,不是一兩句話能說清楚的,而且也沒辦法讓初學者理解到底什么是.Net,因此你只要記住.Net這個詞,隨著我們越學越深入,你就會理解.Net到底是什么東西了?;?Net平臺上有很多語言,比如C#、VB.Net、IronPython、F#、Powershell等,F(xiàn)#、Powershell是滿足特定用途的語言,IronPython、IronRuby等并沒有廣泛應用,VB.Net是僅次于C#的第二大基于.Net的語言,不過按照微軟的戰(zhàn)略是把主要精力放到C#上,VB.Net只是微軟為了將VB開發(fā)人員平滑的轉移到.Net平臺下的語言。因此對于語言來說大家學習C#即可。C#在中國大陸的叫法一般是“Csharp(C煞普)”,也有少數(shù)人讀成“C井”,我不推薦這種叫法。初學者可能會弄不清C#和.Net的關系,.Net是一個技術平臺,而C#是這個技術平臺上的一門語言,就像Windows是一個操作系統(tǒng),而Word、QQ、FireFox則是在Windows上運行的一個程序。初學者不必糾結于這個概念,不是很明白也沒關系。.Net的開發(fā)工具是VisualStudio,VisualStudio現(xiàn)在有VisualStudio2005、VisualStudio2008、VisualStudio2010等版本,注意不要糾結于“到底裝VisualStudio2005還是VisualStudio2008,聽說有的公司還在用VisualStudio2005”、“到底是用新版本的VisualStudio2010還是用VisualStudio2008”這樣的問題,因為這些版本并沒有本質的不同,使用方法都類似,就像你會用WindowsXP,換了Windows7以后經過短暫的熟練會用Windows7了一樣。因為VisualStudio2010比較消耗資源,如果你的計算機配置較好可以安裝VisualStudio2010,如果配置較差則推薦安裝VisualStudio2008。要學習Web開發(fā)一定要按照正確的順序進行學習,很多人被一些《21天精通***》這樣的垃圾書的影響,不學C#、不學.NetFramework、不學Dom,直接上來就學ASP.Net,拖兩個控件、配兩個屬性、雙擊控件寫一個事件響應方法,就開始自詡“精通ASP.Net”了,照著書控件拖來拖去,可是連C#、.Net、ASP.Net、HTML、JavaScript之前的關系是什么都不清楚,鬧出了很多笑話。欲速則不達,速成的結果就是以后浪費更多的時間,回想這么多年你走過的路,有多少次為了走快點就跳著走,最后又浪費時間返工的事情,按照正確的順序才能更快、更好的掌握.Net。有的人可能認為“我不想成為高手,有一口飯吃就行了,會拖控件就行了唄”,千萬不要以為會“不拖控件的開發(fā)”就是高手了,高手沒有那么好當?shù)?。我沒有奢求學編程的人個個都是以“成為世界頂尖級程序員”、“國內.Net開發(fā)者中的知名開發(fā)者”為目標,這個也不現(xiàn)實,大部分人學編程只是看做軟件開發(fā)工資不低,想賺幾年錢娶媳婦生娃,這種想法并不是多沒出息的想法,畢竟“老婆孩子熱炕頭”是最樸實的幸福,你不需要背負“振興中國軟件產業(yè)”這種的重任,但是最起碼應該找到一份不錯的工作,工作幾年以后能有錢交得起房子首付(對于大部分人來講,能夠交得起首付成為房奴都是很奢侈的事情)、每月供月供吧,如果只會拖控件的話就不是能不能成為高手的問題,而是能不能養(yǎng)家糊口的問題了。下面來詳細講解學習的各個步驟:一、C#面向過程編程。學習C#語言分為C#面向過程編程和C#面向對象基礎兩部分。聽到“C#面向過程編程”有人會問了“C#不是一門面向對象的語言嗎,哪兒來的面向過程編程?”,其實面向對象不是代替面向過程的,面向對象是面向過程的一個補充和發(fā)展,面向過程就是代碼逐行執(zhí)行,面向過程就是if/else,面向過程就是for循環(huán),面向過程就是變量、函數(shù),C#中最基礎的也是if、for、變量、函數(shù)等這些東西,這些東西就是C#的面向過程部分。對于編程的初學者來說,最難的不是類、繼承、控件、ASP.Net、AJAX之類神乎其神的東西,而是“程序化的思維方式”,也就是怎么把一個問題的解決方式用計算機的思維方式進行描述。我接到過很多想深入學習.Net學生的咨詢,當我問到“你的.Net基礎怎么樣”的時候,很多人都回答“學過C#、.Net、ASP.Net,感覺基礎還行”,但是我給了他一個很簡單的題,比如“用for循環(huán)累加的方式計算1至到100之間整數(shù)的和”、“提示用戶輸入兩個數(shù)字,然后程序打印兩個數(shù)字的和”,很多人都做不出來。對于初學者來說先不用管面向對象、ASP.Net之類的東西迷惑,先學習用最樸實的for、if來編寫程序,通過親手編寫練習題代碼來逐漸形成程序化的思維方式,這個階段也不要使用“看起來很酷”的WinForm或者ASP.Net頁面來做,因為那樣就會涉及到這個階段不需要去了解的問題,先編寫最簡單的控制臺程序就可以。推薦大家看我錄制的視頻教程《【.Net視頻】第1季C#編程基礎》,這個教程針對C#零基礎的同學進行講解,并且在課程中給出了非常多的練習,一定要自己親手把代碼熟練的寫出來,記住是親手寫出來,而不是照著我的代碼抄,更不能是看懂了我的代碼就以為自己掌握了,要知道“看懂了”和“會寫了”之間差著十萬八千里呢。對于初學者來說一開始寫那些練習可能有點困難,先理解我寫的代碼,然后自己總結成“先***后***,再***,如果***則***”這樣的用語言描述的算法,然后照著算法描述自己寫代碼,發(fā)現(xiàn)有地方寫起來遇到問題的話再參考我的代碼,最后做到不用看我的代碼、不用看算法描述也能把代碼寫出來,這樣第一階段的任務就完成了。下面列出我視頻教程中的一些練習題,大家可以自測看這個階段自己是否合格:練習1:提示用戶輸入用戶名,然后再提示輸入密碼,如果用戶名是“admin”并且密碼是“888888”,則提示正確,否則提示錯誤,如果用戶名不是admin還提示用戶用戶名不存在。練習2:提示用戶輸入年齡,如果大于等于18,則告知用戶可以查看,如果小于10歲,則告知不允許查看,如果大于等于10歲,則提示用戶是否繼續(xù)查看(yes、no),如果輸入的是yes則提示用戶可以查看,否則提示不可以查看。(給出測試用例。)練習3:從一個整數(shù)數(shù)組中取出最大的整數(shù)練習4:計算一個整數(shù)數(shù)組的所有元素的和。練習5:將一個字符串數(shù)組輸出為|分割的形式,比如{“浮云”,”神馬”,”穿梭”}數(shù)組輸出為“浮云丨神馬丨穿梭”。不要使用String.Join等.Net內置方法。練習6:有一個整數(shù)數(shù)組,請聲明一個字符串數(shù)組,將整數(shù)數(shù)組中的每一個元素的值轉換為字符串保存到字符串數(shù)組中。練習7:將一個字符串數(shù)組的元素的順序進行反轉。{"3","a","8","haha"}轉換為{"haha","8","a","3"}。提示:第i個和第length-i-1個進行交換。學C#基礎的時候的參考書推薦如下兩本:(1) 《C#圖解教程》,這本書講的清晰易懂,不過部分內容安排順序不合理,大家按照我視頻中的順序進行學習就可以。(2) 《C#入門經典》適合零基礎的大部頭,不過非常厚,采用的是老外的描述方式,中國人讀起來有點別扭,而且中文版翻譯的不是太好。二、 C#面向對象基礎初學者學面向對象的時候沒必要(也做不到)把面向對象學的非常透、非常深,因為如果想深刻的理解面向對象,必須要有大量的編程經驗才能真正體會面向對象到底是怎么回事、有什么好處。以前聽到過有人建議初學者學習設計模式,我認為純屬誤人子弟,對于初學者來說沒有大量的編程經驗,根本看不懂設計模式在說什么。這個階段只要弄明白怎么聲明類、什么是訪問級別(主要是public、private)、什么是屬性、字段、方法、什么是繼承、什么是override就可以。面向對象有三個特性:封裝、繼承、多態(tài)。對于初學者來說理解多態(tài)是非常困難的也是沒太大必要的,這個階段只要能掌握封裝和繼承就可以。三、 簡單的WinForm編程WinForm是.Net中用來構建Windows窗體應用程序的技術,對于目前國內市場來講一般也就是用來桌面版管理系統(tǒng)等的技術。有人會問“我們不是學B/S的ASP.Net開發(fā)嗎?為什么還要學C/S的WinForm?”,一定要注意我在這段的標題寫的是“簡單的”WinForm。和ASP.Net比較起來,學WinForm需要學習的前置知識非常少,可以非??斓娜胧珠_發(fā),而學習ASP.Net則需要先學習HTML、JavaScript、Dom等知識。這個階段的學習重點不是WinForm本身,而是通過WinForm在案例中理解類、對象、屬性、方法、事件、索引器等概念,我們是“借殼學習”,因此不用對WinForm的深入技術(比如控件美化、布局、PInvoke、托盤編程、高級控件、ActiveX等)浪費時間去研究。初學者很難把握WinForm學習的度,還是推薦大家參考看我錄制的視頻教程《【.Net視頻】第3季WinForm基礎》。四、 常用.NetFramework類.NetFramework中的類是.Net中最豐富、最有價值的內容,.NetFramework中的類是和表現(xiàn)層無關的,也就是無論是在控制臺中、WinForm中還是ASP.Net中都可以調用這些類,比如把一個字符串轉換為整數(shù)都是使用Convert.ToInt32()這個方法,因此千萬不能因為你是在控制臺程序中寫這些類就認為自己在“編寫DOS程序”。.NetFramework是非常龐大的,擁有上萬個類,沒必要把這幾萬個類掌握,在這個階段把常用的.NetFramework類掌握了,會對后續(xù)階段的學習非常有幫助。這些類包括:String類常用方法、StringBuilder類、10類(FileStream、File、Path)、XML操作類、集合類(ArrayList、List〈T〉、Dictionary〈K,V〉)等。五、SQL語句這個階段主要學習SQL語法,能夠掌握常見的SQL語法。數(shù)據庫管理系統(tǒng)有MSSQLServer、Oracle、MySQL、DB2、Access等,這些不同的系統(tǒng)對于數(shù)據庫管理員來說使用方法各異,但是對于開發(fā)人員來說差不多,因為都是用的統(tǒng)一的操作語言“SQL”,通過SQL這門通用的語言,你可以和不同的數(shù)據庫進行溝通,所以只要掌握了.Net開發(fā)最常用的MSSQLServer,以后根據工作的需要使用其他的數(shù)據庫管理系統(tǒng)會非常簡單。現(xiàn)在企業(yè)招聘.Net開發(fā)人員的時候對于數(shù)據庫考查非常多,甚至很多公司的筆試題中有1/3都是關于SQL語句、存儲過程的,因此對于準備學習后找工作的同學來說必須把這部分內容學好。這部分內容主要學習:MSSQLServer的簡單管理,Select、Insert、Update、Delete語句,學完了這些內容就可以繼續(xù)學習后續(xù)的ADO.Net了。學有余力的同學可以學習Join、Union、子查詢、存儲過程等高級的內容。這部分內容學習時大家可以參考我的《程序員的SQL金典》這本書(我將近期發(fā)布這本書的全部免費電子版)和《【.Net視頻】第4季SQL從入門到提高》。這套視頻教程。六、 ADO.NetADO.Net是.Net中用來訪問數(shù)據庫的技術,通過AD0.Net我們就能通過程序告訴數(shù)據庫“請把年齡大于20歲的人員返回給我”。在學習AD0.Net之前一定要把常用的SQL語句掌握了,千萬不能學了一句Select*fromPersons就來學AD0.Net,否則可能會出現(xiàn)下面這個真實的故事中的笑話了:我以前碰到過一個人寫一個“查詢學號為S001的學生的姓名”的功能,他這么寫程序(示例性代碼,不嚴謹):SqlCommandcmd=conn.CreateCommand();cmd.CommandText=“Select*fromPersons”;SqlDataReaderreader=cmd.ExecuteReader();while(reader.Read()){Stringno=(string)reader[“No”];if(no==”S001”){stringname=(string)reader[“Name”];MessageBox.Show(name);}}看到這種寫法相信所有人都要崩潰了,因為好像從來沒學過where語句一樣。因此必須在把常用的SQL語句掌握以后再來學ADO.Net。這階段的學習主要學習使用SqlConnection、SqlCommand(ExecuteNonQuery、ExecuteReader、ExecuteScalar)等類的使用、參數(shù)化查詢等,掌握DataSet方式使用離線數(shù)據集,能夠自己從頭寫一個SqlHelper類出來即可。(注:這段我描述的是ADO.Net基于接口的編程,屬于深入一點的知識,對于初學者來說如果看不懂也沒關系,不用糾結于此)SqlConnection、SqlCommand等類是ADO.Net中用來連接MSSQLServer的類,連接Oracle等數(shù)據庫則使用OracleConnection、OracleCommand等類,雖然看似不同的類,但是由于ADO.Net通過IDbConnection、IDbCommand等接口統(tǒng)一了類的方法,所以OracleConnection、OracleCommand等類的用法和SqlConnection、SqlCommand基本一樣,而且如果通過DbProviderFactories進行基于接口的ADO.Net編程,那么編程的時候就是使用IDbConnection、IDbCommand接口,完全不用管SqlConnection、OracleConnection等這些不同的類。學有余力的同學可以深入研究一下ADO.Net的接口編程,會對你理解設計模式有很大的幫助。七、 HTML、JavaScript、DomHTML是對網頁長什么樣子的一個描述,也就是“這里顯示一個超鏈接、那里顯示一個按鈕”都是通過HTML來進行描述的。HTML做出來的頁面是靜態(tài)、不變化,如果要實現(xiàn),點擊【計算】按鈕的時候讓表格放大顯示”這樣的動態(tài)效果,則要通過程序操作Dom,一般使用JavaScript這種腳本語言來操作Dom。如果不想成為只會拖控件的開發(fā)人員的話,需要在學習ASP.Net之前把HTML、JavaScript、Dom這些好好學習。提到這一點有同學可能會提出異議“不是這樣的呀,ASP.Net已經封裝的很好了,拖幾個控件上來就可以了,ASP.Net都幫我們生成HTML了,也不用學JavaScript,動態(tài)效果寫C#代碼就可以了”。ASP.Net中這種拖ASP.Net控件的開發(fā)技術就叫做WebForm,微軟的WebForm封裝是非常偉大的技術,能夠將復雜的Web開發(fā)簡化到可以像開發(fā)WinForm程序一樣點擊,不得不佩服微軟技術的強悍。使用WebForm我們就可以進行傻瓜化的開發(fā),要是每天的工作、做每個項目的時候都能一直這樣,傻瓜”下去也是很美好的,但是很不幸有一些場合中是不能使用這種傻瓜化的開發(fā)方式的,舉幾個例子:例子1:在網站的注冊頁面中讓用戶所在的省、市,提供兩個下拉列表框(DropDownList),—個為省的列表框,一個為市的列表框,當用戶選擇不同的省的時候,市列表框中就列出這個省下的所有市供用戶選擇。對于這樣一個功能點,如果只會拖控件的人很可能會這么寫(假設省列表框id為ddlProvince,市列表框id為ddlCity),在Page_Load中加載省列表到ddlProvince,然后在ddlProvince的SelectedlndexChanged事件中響應ddlProvince的選擇變化,當ddlProvince選擇變化后根據選中項來填充ddlCity。用這種方法實現(xiàn)最大的缺點就是頁面會頻繁的刷新,每次選擇省以后頁面都會唰一下的刷新一次,這在網速比較慢或者服務器壓力比較大的時候是很慢的,而且用戶體驗很差。這種情況用JavaScript操作Dom的方法來操作才會比較好。例子2:ASP.NetWebForm中可以使用UpdatePanel控件很輕松的實現(xiàn)AJAX效果,不用懂JavaScript、Dom、Json,把控件用UpdatePanel包裹起來AJAX效果就出來了。但是用UpdatePanel實現(xiàn)AJAX只能在對性能要求不高的場合使用,如果要開發(fā)互聯(lián)網應用等對性能要求非常高的場合,UpdatePanel控件是沒法使用的。這時候就需要手寫實現(xiàn)AJAX,而手寫AJAX則需要對JavaScript、Dom非常熟悉。即使全部使用ASP.NetWebForm控件實現(xiàn),也是需要對HTML熟悉才可以的,比如不可能項目中使用ListView控件默認生成的代碼,都需要手動調整ListView的模板,而調整模板就需要手寫HTML,不是什么都“拖一拖”就行的。微軟現(xiàn)在還推出了一個WebForm的兄弟產品:ASP.NetMVC,ASP.NetMVC并不是替代WebForm的,各有所長,但是因為ASP.NetMVC的優(yōu)點,以后肯定會有越來越多的項目使用ASP.NetMVC。在ASP.NetMVC中就沒有WebForm中這么傻瓜化了,很多地方需要手寫HTML代碼,這就對HTML等要求更高。上面講了HTML、JavaScript、Dom的重要性,下面來講一下具體要學哪些東西、怎么學。需要提前說明:Web開發(fā)中一個非常麻煩的一點就是HTML、Dom在不同瀏覽器有少量的差異性,也就是一段代碼可能在IE中和FireFox中的效果不一樣,對于初學者來說暫時不需要管那些差異性,降低學習中不必要的難度,學習的時候以一個瀏覽器為主就可以了。剛接觸HTML的人可能感覺比較難,但是一旦熟悉了這種標簽式的用法,HTML就變得非常簡單了,HTML中標簽比較多,標簽的可用屬性更多,做為一個初學者沒必要把所有標簽、屬性都學習了,而且也不可能都掌握,把最常用的標簽以及它們的常用屬性掌握了即可,主要的標簽有:p、br、div、font、a、input、img、li、table、select、textarea、span。學習HTML的時候一定要堅持手寫HTML,千萬不要用VisualStudio、Dreamweaver等中的可視化的拖放方式來編寫HTML頁面,如果只會在設計器可視化拖出HTML頁面的話,后面的學習會困難重重。HTML學習的一個目標就是能夠完全手寫一個很多網站都有的那種靜態(tài)注冊頁面出來。HTML中還有一個知識點:CSS,CSS是用來對頁面進行美化的描述語言,通過CSS我們能夠將按鈕設置為紅色或者給一個圖片加上金色邊框。CSS中有非常多的樣式名,不需要掌握這么多樣式名,學習的時候只要過一遍,大概知道每個樣式名是做什么的就可以;也不需要學習怎么將頁面做的看好,不需要研究那些好看的CSS效果到底是什么做出來的,因為那些工作是美工做的事情,即使是沒有美工的小公司開發(fā)人員只要學會怎么“偷”別的網站做好的特效就可以了。初學者只要掌握幾種CSS選擇器和Div+CSS布局就可以。和ASP.Net后臺用C#寫代碼不一樣,對于Web前臺頁面的動態(tài)效果一般使用JavaScript(不用學已經在Web前端中被淘汰的VBScript)來編寫,因此需要首先掌握JavaScript語言,JavaScript和C#的語法一樣都是C語言發(fā)展過來,很多語法都和C#差不多,因此不用再從頭學JavaScript語法,只要學習JavaScript和C#相比特有的語法就可以。JavaScript語言也有很多可以很深入研究的東西,比如閉包、面向對象的實現(xiàn)等,但是除非做Web游戲開發(fā)、開發(fā)JavaScript庫等對JavaScript要求非常高的領域,如果是開發(fā)互聯(lián)網站、業(yè)務系統(tǒng)等(這占到公司項目中的大部分)對JavaScript并沒有太高的要求,只要熟悉一下JavaScript的語法就可以,然后在后面的Dom中通過練習逐步熟悉JavaScripto對于初學者來說JavaScript到底學到什么程度是夠用了是很難界定了,大家可以參考【.Net視頻】第7季JavaScript》這套視頻教程,然后學Dom的時候參考【.Net視頻】第8季Dom》進一步練習就可以。很多初學者剛接觸Dom的時候總是想弄明白“到底什么是Dom”,勸大家沒必要糾結于這些概念,只要知道它是干什么的就可以,“通過JavaScript調用Dom中的屬性、方法就可以動態(tài)的操作HTML頁面”、“getElementByld就是Dom、btnl.value='abc'就是dom、btnl.onclick=myclick就是dom”,通過練習你就會明白這一點就可以了,咱們不是編教科書的,不用搞那些無聊的概念定義。Dom的東西非常多,還是那個原則,不用什么都記住,主要掌握下面幾點:事件、動態(tài)設置事件、setInterval定時器、event對象、getElementByld、動態(tài)創(chuàng)建Dom元素(createElement、innerHTML、innerText)。掌握這些東西還是要通過大量的練習來掌握的,只要能把第8季Dom這套視頻中的練習熟練寫出來這幾個階段的目標就達到了。JQuery目前是最火的一個JavaScript的庫,千萬不要以為是一個新的語言,聽到過很多“Jquery是JavaScript的終結者,Jquery取代了JavaScript”的說法,殊不知,Jquery只是個JavaScript的一個圭寸裝庫,盡快Jquery語法看起來非常奇怪,但是Jquery確實是完全符合JavaScript語法的一個圭寸裝庫。Jquery只是對Dom操作的一個封裝,學之前需要Dom基礎,否則學起來會很暈。我不建議初學者學完了Dom以后立即學Jquery,還是用Dom多寫一些程序以后再來學Jquery才會掌握的又牢靠又快速,我講課的時候就在講完了Dom以后隔了8天的.Net高級技術才講Jquery也是基于這個考慮。學習Jquery時的推薦看《【.Net視頻】第9季JQuery》這套視頻,然后參考書可以看《鋒利的JQuery》。八、ASP.NetASP.Net是.Net中用來開發(fā)動態(tài)Web應用程序的技術,ASP.Net主要分ASP.NetWebForm(以后簡稱WebForm)和ASP.NetMVC兩種技術,大部分人說ASP.Net都是指的ASP.NetWebForm,而ASP.NetMVC則是微軟最近推出的一門技術,前面已經提到過了ASP.NetMVC并不是用來代替ASP.NetWebForm的,因此不要認為“ASP.NetMVC淘汰了WebForm,學WebForm過時了”,對于初學者來說還是先學習WebForm,等WebForm掌握的比較好以后根據自己的情況學習ASP.NetMVC,現(xiàn)在很多公司招聘的時候都提出了“掌握ASP.NetMVC優(yōu)先考慮”。下面我們還是主要來談WebForm的學習。很多人被那些“短平快”ASP.Net的書誤導了,開始學習就從Button控件、TextBox控件、Repeater控件、GridView控件開始學習,為龐大的ASP.Net體系所折服,看著千八百頁的書感嘆“暈呢,這么多控件、什么多方法、這么多屬性哪輩子
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年鶴壁汽車工程職業(yè)學院高職單招職業(yè)適應性測試備考題庫及答案詳細解析
- 2026年長沙航空職業(yè)技術學院單招職業(yè)技能考試參考題庫含詳細答案解析
- 2026年河北政法職業(yè)學院單招職業(yè)技能考試備考試題含詳細答案解析
- 2026年黑龍江農業(yè)工程職業(yè)學院高職單招職業(yè)適應性測試備考題庫及答案詳細解析
- 2026年安陽職業(yè)技術學院單招綜合素質考試備考題庫含詳細答案解析
- 2026年鄭州軌道工程職業(yè)學院高職單招職業(yè)適應性測試備考題庫及答案詳細解析
- 2026新疆兵團國資公司權屬企業(yè)總會計師市場化選聘1人筆試模擬試題及答案解析
- 2026年鄭州電子商務職業(yè)學院單招綜合素質考試備考題庫含詳細答案解析
- 2026年廣東省外語藝術職業(yè)學院單招綜合素質筆試模擬試題含詳細答案解析
- 2026年蘭州現(xiàn)代職業(yè)學院單招綜合素質筆試參考題庫含詳細答案解析
- 23J916-1 住宅排氣道(一)
- (正式版)JB∕T 7052-2024 六氟化硫高壓電氣設備用橡膠密封件 技術規(guī)范
- 計數(shù)器檢定規(guī)程
- 股權融資與股權回購協(xié)議
- 企業(yè)人才發(fā)展方案
- ISO 31000-2023 風險管理 中文版
- 花城版音樂七年級下冊53康定情歌教案設計
- 高考數(shù)學答題卡
- 燃料質量化學技術監(jiān)督
- 歷屆湖北華師一附中自主招生物理試題
- GM/T 0002-2012SM4分組密碼算法
評論
0/150
提交評論