如何才能系統(tǒng)有效的學習asp
ASP.NET Core管道雖然在結構組成上顯得非常簡單,但是在具體實現(xiàn)上卻涉及到太多的對象,所以學習起來并沒有那么簡單。以下是學習啦小編分享給大家的有效學習asp的步驟的資料,希望可以幫到你!
有效學習asp的步驟
第一步 掌握一門.NET面向對象語言,C#或VB.NET 我強烈反對在沒系統(tǒng)學過一門面向對象(OO)語言的前提下去學ASP.NET。 ASP.NET是一個全面向對象的技術,不懂OO,那絕對學不下去!
第二步 對.NET Framework類庫有一定的了解 可以通過開發(fā)Windows Form應用程序來學習.NET Framework。ASP.NET是建構在.NET Framework之上的技術,你對.NET Framework了解得越深,學習ASP.NET就越快。 舉個例子:下面簡單列出幾個對掌握ASP.NET非常重要的概念: 對象的內存模型,委托,事件,多線程,程序集和應用程序域,安全模型 .NET Framework當然還有許多其它的東西,但不理解與把握清楚上述這些東西,是很難真正把握ASP.NET的。 出于急迫的心情與現(xiàn)實的考慮,不少人沒有扎實的面向對象基礎就想直接學習ASP.NET,其結果只能是欲速則不達。 在具備了OO基礎之后,以下是具體的學習ASP.NET技術步驟。
第一步:學習HTML與CSS
這并不需要去學一大堆的諸如Dreamweaver,F(xiàn)irework之類的各種網頁設計工具,關鍵是理解HTML網頁嵌套的block結構與CSS的box模型。許多ASP.NET控件最后都必須轉化為HTML。而且,div+CSS是當前主流的網頁布局模型。 學習這部分時,關鍵在于理解概念,而不需要將精力花在美化頁面的許多技巧上,那是網站美工的工作,不是程序員的工作。
第二步:學習JavaScript
JavaScript不是Java,它主要運行于瀏覽器端??梢酝瓿稍S多工作,功能也很強大:比如它將客戶端網頁中的HTML元素看成一棵樹,可以編寫代碼訪問并修改樹節(jié)點,動態(tài)生成新的HTML代碼,從而達到動態(tài)修改網頁顯示特性的目的。
JavaScript在目前的網站開發(fā)中用得很多,非常重要。
另外,它也是目前非常流行的AJAX技術的基礎。
第三步:學習計算機網絡原理
找一本大學<計算機網絡>教材,重點看看它的有關互聯(lián)網的部分,了解一些域名解析和HTTP協(xié)議等知識。這是進行互聯(lián)網開發(fā)的理論基礎。
第四步:學習ASP.NET表示層技術,會設計Web頁面
需要結合先前打好的面向對象技術的基礎,至少掌握以下內容:
(1) 各種Web控件的使用方法,
(2) 理解信息在網頁中的傳送方式,比如Cookie,ViewState,Session等的使用。
(3) ASP.NET應用程序與網頁的生命周期,以及相關對象(比如httpcontext,response,request)的用途。
(4) ASP.NET實現(xiàn)事件驅動的內幕
(5) 自定義用戶控件
再次強調一下,沒有OO基礎,很難掌握上述技術,就只能被這些東東牽著鼻子走了,會很被動。
第五步 掌握數據庫技術
具體地說,要學習以下內容:
(1) 學會使用SQL Server 2005:不要求精通它的各種工具與管理配置技術,但至少知道如何連接,如何建表,如何創(chuàng)建存儲過程
(2) 學習ADO.NET,掌握使用代碼人工訪問數據庫(別用VS2005的向導)的方法
(3) 學習數據綁定控件的使用
第六步 理解多層架構
這時,先前在OO學習階段涉及到的程序集與應用程序域等就派上用場了,現(xiàn)在,網站架構大多采用多層架構:表示層、業(yè)務邏輯層、數據存取層以及數據庫本身。
可以先上網找一此多層架構的資料看,再找一個現(xiàn)成的比較復雜的開源ASP.NET項目分析一下其架構就差不多了?;旧隙际且粋€套路,到處應用。
有的朋友問:學習架構是不是必須學習設計模式。
我的看法是:不必!當然,你如果學習過設計模式,那當然更好。但在實際開發(fā)中,如果只想著機械地套用某種模式,反而起不到好的結果。我的觀點:在學習設計模式時要多思多悟,其思想就會漸漸地融入你的大腦,在真實的設計實踐中,忘掉所有的寫在書上的模式,一切從實際出發(fā),相信你的直覺,只要達到設計要求的方案就是可行的方案,事實上,你這樣做了之后,回過頭來再看,會發(fā)現(xiàn)你的設計往往暗合設計模式的理論。
第七步 學習 XML與Web Service
先了解XML的基礎知識,找本講XML的書看一下就差不多了,然后,再學習Web Service。Web Service其實可類比為遠程方法調用(以XML格式表達的調用信息)。
學 到了這里,如果你還有興趣,不妨再去看看SOA,不過SOA的資料都是理論與概念,看起來比較郁悶,而且離實際開發(fā)可能比較遠。所以,這是可選項。
第八步 學習AJAX
學習AJAX的主要目的是創(chuàng)建具有更豐富特性的Web表示層,而經過前面七步的學習,到此再學習AJAX已水到渠成,所有的基礎都已具備,不會有太大的問題了。
在基礎未具備的前提下直接學AJAX,就象“浮沙之上筑高臺”,所以,將AJAX的學習次序安排在這里。
第九步 學習RIA技術
RIA:Rich internet application,可看成是將C/S與B/S優(yōu)點合二為一的嘗試。就具體技術來說,主要指微軟的Silverlight(WPF_E),畢竟前頭一路行來都是微軟路線。
有效學習asp建議
asp.net與自身現(xiàn)狀結合
當我在學習.net的時候,有不少朋友告訴我,現(xiàn)在做網站熱門的是用PHP,.net實有過時之嫌,雖然一樣是學習,還是不少人建議我直接學PHP;另一方面,.net是微軟公司出的技術,所以又有一種說法是”微軟不倒它不倒”,”它不倒我就不倒….”大概這個意思。
在存有疑惑的時候,我找了學長和其他朋友聊了不少,但是趨勢這個東西,誰又可以確定未來呢。偶然一天,翻看微信訂閱號推送的時候,看到一篇“為什么要學習MVC框架”的文章,大概內容是基于使用java做網頁時從JSP到java再到XML的一系列代碼都沒有使用MVC簡便而且快捷。
我認真地看了一眼JSP的代碼,怎么看怎么都跟.net的webform長得一模一樣,心里有點激動,回想起學長也對我說過,其實做網站思路都是一樣的,當初我沒有理解,現(xiàn)在看到了這個代碼,發(fā)現(xiàn)寫網頁用java也和.net其實差不多,我又跑去問了PHP,學長給我的答復還是那句話,PHP又是另一套語言,其實現(xiàn)在學.net就是在學習做網站的思想,以后如果要轉另一門語言其實也不難。
這讓我又堅定了學習.net的決心,也解開了心中的疑惑。學習思想總不會過時吧。
項目從webform改成MVC
這是我現(xiàn)在要學習的內容。
為什么要把項目從webform改成MVC呢。其實大概了解的人都知道,如果是用webform來做網站,基本上微軟把html,css都封裝起來了,甚至你都不需要看到前端代碼,直接使用控件拖拽就可以完成視圖的設計。但是問題也就在這里,畢竟拖拽后的頁面代碼是自動生成的,你并不能保證它會出現(xiàn)什么問題,這個時候你又要找回生成的html,css等,那么webform反而是一個麻煩制造者了。
“
MVC全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫,一種軟件設計典范,用一種業(yè)務邏輯、數據、界面顯示分離的方法組織代碼,將業(yè)務邏輯聚集到一個部件里面,在改進和個性化定制界面及用戶交互的同時,不需要重新編寫業(yè)務邏輯。MVC被獨特的發(fā)展起來用于映射傳統(tǒng)的輸入、處理和輸出功能在一個邏輯的圖形化用戶界面的結構中。
MVC解決以上問題,是一種現(xiàn)今熱門的開發(fā)模式。推薦大家了解和學習。
asp的結構
1. 新的配置方式
看看上圖的項目你發(fā)現(xiàn)Web.Config或者其他文件夾上的以Config為后序的文件不見了(之前總覺得讀/寫這種XML是一件痛苦的事情)。真心話,做技術當然不是一段婚姻,你需要喜新厭舊。那新的ASP.NET 5的配置文件去哪里了,變得怎么樣了?肯定是簡單了,更容易以自己喜歡的方式去定制不同的配置文件(XML,JSON,INI都可以)。在ASP.NET 5中主要通過Startup.cs取代Web.config去完成初始化配置工作。例如項目中包和包的依賴關系,更可以升級包的版本,啟動頁面等。而這種配置都是從IConfiguration開始。
2. Project.json
這個是配置你的項目所要的包,編譯設置,資源文件的主要文件。他通過JSON文件設置。有幾個比較關系的字段
Dependencies :設置你項目中所需要的包,當你使用kpm rebuild時會依據這個去加載你的包,如果你的包的版本更新也可以通過這里進行設置。如下圖這里設置了一個新項目所需要到的基礎包(JSON總比XML易讀易理解)
Framework : 針對aspnet50和aspnetcore50進行所需要的包進行設置。
Command : 設置運行K(DN)后面的參數,例如設置web / kestrel 的啟動服務和端口,單元測試,或者entity framework的支持等。
3. Config.json
配置數據庫連接和你對應的ORM引擎,這里默認是Entity Framework 7。我更希望有更多的ORM引擎加進來。
4. 前端配置npm/bower/grunt
你的項目需要引入JS庫/Bootstrap等,以往需要在項目中一個個下載,為了更節(jié)省時間npm+bower就可以幫你找了。而grunt更方便幫你部署項目時整理/壓縮你的JS,規(guī)范你的JS代碼。 這里更像NodeJS,或者說是模仿。
你現(xiàn)在應該基本了解一個ASP.NET 5項目的結構了,明天繼續(xù)。還是那句多多交流!
猜你喜歡: