Asp.net 怎樣從入門到精通?
怎樣快速的上手用http://asp.net做項目
在2017年我接觸http://asp.net core之後,
我的學習路線大概為
c#基礎,c#三本-&>http://asp.net core-&>typescript-&>angular-&>rxjs-&>redux
http://asp.net現在已經升級成為了http://asp.net core,這段時間因為愛好開始做自己的幾個小站,分享下我學習c#的個人心得
語言基礎:
c sharp第一本:http://asp.net的主流開發語言是c#,要學習C#首先要看的書是《深入理解C#》作者是Jon Skeet,這本書會按C#的發展過程,帶你逐步深入理解C#語法,從一開始的泛型,委託等,到基於他們構建起來的linq,然後基於linq,構建起來的linq to sql,並行編程,到C#5的Task(Task),一步步下來,你會比國內很多人了解C#的語法,你會分辨出網上對C#的誤解與明白C#的強大。
c sharp第二本:然後繼續看《CLR VIA C#》,作者是Jeffrey Richter,翻譯是周靖,裡面很多東西可能會晦澀難懂,看完這本書你會知道,為什麼C#裡面的一些東西是怎麼設計的,知道該怎麼使用。
c sharp第三本:很多時候,你會感覺自己寫的代碼結構,命名的參數、變數非常噁心,總是感覺還差點什麼,這時可以看《.NET設計規範 : 約定、慣用法與模式》很多C#專家參與進來,分享給你微軟c#官方,使用C#時,遇到的種種坑, 使你的代碼結構有很大的提
http://asp.net知識:
http://asp.net core 2.0:ASP.NET Core 官方中文文檔,asp.net GitHub項目首頁ASP.NET, asp.net core的官方入門示例音樂商店項目aspnet/MusicStore (asp.net core最新的技術潮流用在這個簡單的示例上面),asp.net core的大型項目Nop商城項目 nopSolutions/nopCommerce (Nop已經推出了4.0 asp.net core 2.0版本,多研究代碼吧)
http://asp.net core: http://asp.net core 1.x 原名為http://asp.net mvc6,而且早於.net core誕生,後來.net core出來後,為了統一平台,於是http://asp.net mvc6更名為http://asp.net core,現在中文http://asp.net core學習資料還比較少,http://asp.net core2.x正式版都快出來了,中文http://asp.net core1.x的資料都不多。如果英語差,沒有mvc基礎,可以先研究mvc5然後配合英文資料學習http://asp.net core。
推薦直接學習http://asp.net core 2.0
http://asp.net core Razor:糅合了mvvm框架+mvc+webform精華。學習的話,當前可以看http://asp.net core官方文檔和官方音樂商店示常式序(上面已經給出了)。
http://asp.net mvc入門:精通 http://ASP.NET MVC 5,作者:Adam Freeman ,(精通 http://ASP.NET core 2.0 mvc英文版已經出來了)
深入asp.net:http://ASP.NET MVC 5 框架揭秘 作者:蔣金楠,大家可以關注下他的博客:Artech - 博客園 這個大牛博客裡面有部分講解asp.net core原理的資料
資料庫應用設計:
理解關係資料庫:明白關係資料庫的表的優化,建立表之間的高效索引
理解Entity Framework Core:EF Core如何建立表之間的關係,一對一,一對多,多對多關係,級聯,EF Core擴展,性能優化,數據遷移(一定要花點時間研究下,做好項目的向後兼容)。
另外還應該研究下國外http://asp.net開源框架,比如,我自己研究時看的,nopcomerce。http://asp.net core,EntityFramework,http://asp.net Identity,都是開源的,建議大家也研究下,幫助挺大的。
實戰:
寫一個博客系統,或者寫一個微型論壇,或者在線商店http://asp.net core web程序(支付介面那裡不用必須完成)
前端:
html,css基礎:找本基礎書。
-----------------------------------------------------------------------------------------------
TypeScript,angular,RxJS,Redux為新一代前端語言和框架。
typescript:由微軟主導,C#的首席架構師已經加入了typescript的開發,javascript的超集,已經將擴展部分提交給javaScript語言委員會。在javascript的基礎上,添加了泛型、面向對象的類、靜態類型,錯誤安全檢測。TypeScript可以編寫支持javaScript的代碼。減少了大型項目開發時,因為javascript的動態類型,難以開發維護大型項目的缺點。TypeScript 官網。可以在官網看一下教程和文檔。
angular:新一代的非同步框架,現代網站開發必備。angular的學習我看的ng-book:The Complete Guide to Angular 4 結合這本書看的RxJS in Action (豆瓣) 和自述 | Redux 中文文檔順便入門了RxJs和Redux。Angular 中文文檔
RxJS(Reactivex Js):微軟發明的基於事件的函數式編程框架,基於流的概念,Angular中的倚天劍。RxJS 中文文檔
Redux:由Dan Abramov在2015年創建。是受2014年Facebook的Flux架構以及函數式編程語言Elm啟發,Angular中的屠龍刀。在angular中Rxjs可以很容易實現Redux。Redux 中文文檔
Webpack:webpack 中文文檔
------------------------------------------------------------------------------------------------
javaScript:我看的犀牛書(JavaScript權威指南,作者:David Flanagan )入門的,你可以看本薄一點的。
jquery基礎:鋒利的jquery,作者:單東林 / 張曉菲 / 魏然
ajax:前端非同步腳本
前端框架:深入理解Bootstrap,作者:徐濤
bootstrap:文檔我看的Bootstrap 中文文檔 · Bootstrap 是世界上最流行的、移動設備優先的、響應式前端開發框架。
http://asp.net core web api:可以配合fiddler邊學邊驗證,可以配合前端非同步腳本開發優秀的網站程序,以及開發移動端app
其它補充:
ASP.NET Core 性能對比評測(ASP.NET,Python,Java,NodeJS)用.net core 寫後端-- c++外的另一種選擇?ASP.NET Core 性能提升23倍是怎麼回事?
http://asp.net core發行之後,我看過
Entity Framework Core 1.0 Cookbook - Second Edition
Mastering TypeScript - Second Edition
Angular 2 Cookbook - Second Edition
http://asp.net core官方文檔
另外,我看完這些後,感覺自己離精通差很遠的距離,只能說是剛學會走路吧,
題主我自己也是個業餘學編程7年的菜鳥,2014年發表的這個回復,2016年業餘時間開始為了去做一個自己夢想中的網站系統,花時間深入研究C#語法,http://asp.net,發現了自己之前的很多不足。到2017年5月,大概學了這些
舊版回復2016年以前:
不知道上面回復,以及網上其它地方存在的http://asp.net,如何入門這問題的回答,都為什麼沒有回答到重點!!!!!!!!!!!!!!!!!!!
http://asp.net開發從0到入門的過程大概為1、學會使用工具(比如FrontPage或DreamWeaver),能做出一個像樣的頁面 這一步要學習html,css語言,然後學習工具,如果再學習了學習JavaScript更好2、學習資料庫與T-SQL3、開發語言
本來想要詳細回答的,搜索了下,發現對岸的一個同胞大大回答的很好,所以直接複製過來了,希望更多跟我一樣學習http://asp.net的新人看到少走彎路,希望知乎手下留情,--------------------------------------------------------------------------------------------------------------------------------------想要作網頁程式(Web Application),原因有很多。當然,它這幾年很熱門,我們日常使用的系統,絕大部分都變成Web系統了。例如:E-Mail(我都用Gmail,不用Outlook下載了)、BBS(改用網站論壇)、看新聞與網路拍賣等等。要學習網頁程式,首先,HTML傳統的靜態網頁,要稍微會一點。就算不會背誦HTML碼,至少也要會用FrontPage或DreamWeaver來設計一個網頁。
Q: 您可以設計一個自我介紹的網頁嗎? 上面要有三種字體變化(大小、粗體)、有超連結、有一個表格(&)完成後,您就過關了。透過上述的網頁編輯器,用久了,就會自然而然地熟悉一些HTML語法。關於CSS或是JavaScript,會的話更好。因為這部份的基礎,是所有HTML網頁的根源。要進入網頁程式設計,任何人都要學~========================================================接下來,是資料庫與T-SQL指令。不管您採用哪一種資料庫,MS SQL / Access / Oracle / MySQL等等。
最基本的T-SQL指令都差不多。
Q: 您會使用 Insert into / Delete / Update這些指令來修改資料嗎? 您會用 Select指令,簡單的撈取(搜尋)、排序資料嗎?完成後,您就過關了。......當然,資料庫與T-SQL指令,這門學問博大精深,該學的還多著呢。========================================================最後,就是選擇程式語法。1. ASP / PHP / JSP,在「最基本」的語法和用法上,都很類似。 我把自己ASP的幾支程式,改成PHP與JSP版,都用不了兩天就OK了。2. 而http://ASP.NET是一個大革命!它是徹頭徹尾的大改造與大革新!以我的觀點來看,http://ASP.NET比較類似是「把傳統VB 6.0的"視窗"程式設計師,拉拔到Internet Web世界」的。比較不像是「ASP」的衍生或後續版本。
因此,傳統VB的程式設計師,來接觸ASP.NET......真的比傳統ASP的設計師「升級」更簡單。而,傳統ASP的設計師,要升級http://ASP.NET。我的天啊!簡直要自廢八成武功,砍掉重練(至少我當年升級的路程,滿痛苦的。對ASP越熟悉,好像挫折越大)革命是如此劇烈,所以http://ASP.NET的Web控制項(Web Controls),跟傳統HTML的表單(&