-
1 # 一米七八不穿鞋
-
2 # 遷徙de麻雀
先簡單回顧下asp.net過去十年
mvc流行前asp.net的服務端控制元件,將html和js一起封裝,很多客戶端事件自動透過生成的js將資料重新post回服務端。而對於很多剛入門的小夥伴來說,僅僅靠拖放控制元件和寫C#程式碼就可以實現一個可用的Web專案,大大降低了入門門檻。相應的,服務端控制元件這種過度耦合的設計帶來了很多缺點:自定義控制難,難以純粹將前後端分離,導致asp.net從業人員既不能精通前段技術,又不能涉獵更多的後端技術(生態問題)。
這個年代,.net被貼上了“拖放控制元件”的標籤。
mvc流行後微軟推出了asp.net mvc,很多公司已經開始嘗試前後端分離。就模式上面來說,已經和其它語言平臺基於mvc的web專案開發模式無異。
但是asp.net本身的服務框架太雜亂,尤其是艱難(如果你留意過,甚至可以說難產)支援async\await非同步程式設計後,他的同步上下文模型缺點太大:首先是原始碼的結構混亂,其次是使用過程很多人容易造成死鎖,非同步方法使用不當導致請求已返回上下文已釋放然後找不到同步物件導致的異常。問題的根源是大部分程式設計師對執行緒瞭解不深,如果專案有正確的規範用法還好,一旦沒有,產生異常很多人根本不知道問題出在哪裡。部落格園改造過程中就出現過的死鎖,有興趣的可以去看看部落格園官方部落格寫過。
aspnetcore新應用程式模型設計和程式碼實現,我非常喜歡。其它的不說,看看那簡潔的Reqeust和Response物件,是不是就會讓你欣喜?再看看中介軟體管道,上下文(Context)透過委託鏈鏈一路傳遞,再也不用晦澀的同步上下文,也移除了和Windows安全相關的特徵。
整個架構更加清晰,喜歡做擴充套件的人絕對會有一日看盡長安花的快感。
自然效能也不用說,可以關注github上微軟之前做過的除了mvc之外的效能測試對比。
net生態擁抱開源後,netcore,standard,aspnetcore,efcore等一系列實現全部都有了,明年的netcore3.0還會包含客戶端模型(wpf和winform,只能在windows下使用)。
github上面aspnet,dotnet,dotnet-architecture等分支包含大量微軟直接維護的開源專案。
開源社群大部分的專案已經跟進將三方元件基於standard標準打包。
微軟也久違地把散亂的文件彙集到docs子域名下
萬事劇本,就欠生態!如果apache基金會下面的重要專案都有.net的分支,相信依靠netcore必定可以再次搶佔不少的份額。
前景微服務流行後,其實內部可以混合多種平臺提供服務,用aspnetcore做對三方元件需求不太大的業務服務是完全的可以的,基於微軟一貫的作風,開發效率是很高的。
其實現在很多內部系統在用.net,只是面向網際網路相關的專案,更加需求豐富的三方資源,採用.net的比較少。不過很多大的公司都有.net的分支團隊。畢竟在桌面和開發效率上的優勢,還是有他存在的價值。
aspnet到底會如何發展,個人感覺還是要看社群的反應,要看生態是否能逐步豐富起來。
看在微軟這麼努力的份上,個人挺希望他能夠扳回一局。
所以?眼光放長遠一點,平臺只是我們的工具,一個IT人不應當把自己的技術範圍限定到某一個平臺。多學多積累,實際專案中應該針對需求、架構以及團隊做出選擇。
比如Java和.net同時掌握,各取所長,基於他們重疊性較高的原因,學習成本並不高。何況絕大部分的知識和平臺並無關係。
-
3 # 葉子75220707
我從來不關心哪個語言好,我只關心我做什麼,做win下的軟體,你說我不用微軟的技術?做Android我肯定用Google的技術,看你想幹什麼
-
4 # shark71320789
.net core 都已經演進到3.0了,工具鏈和開發方式早已甩JAVA幾條街,機器學習,AI等開源框架如火如荼,最新的效能測試已經全面超越java,並且在記憶體及cpu佔用方面更是壓倒性優勢,輕量化加上完整工具鏈簡直就是為微服務而生的!
-
5 # 北遊教育
相信不少的同學們都會認為學習程式語言是一件難以捉摸且枯燥的事情,而且難以決定要選哪家的培訓機構。
但是在黑馬先鋒,與傳統的教學模式不同的是,黑馬的老師們會透過一個有一個的案例,去培養同學們的邏輯思維以及計算機語言編寫能力,利用所學將現實中的思維方式變化成為計算機中相應的程式碼,從而融入到程式中,讓同學們能夠輕鬆領悟到學習web前端的精髓與樂趣。
-
6 # 玩著學程式設計
.Net技術已經從“不拖控制元件的菜鳥”階段進入了“擁抱開源,擁抱雲計算,擁抱移動網際網路”的新時代。
2014年10月,微軟新任CEO納德拉喊出了“Microsoft loves Linux”的口號!隨後開始了一系列的“開源、開放”的動作:釋出開源、跨平臺的開發工具Visual Studio Code;釋出開源、跨平臺的.Net Core 1.1(Linux下執行.Net程式);Azure雲支援Linux作業系統等一系列操作。
所以說 .NET 在未來的發展還是挺不錯的。以前在“ 如鵬網 ”上看過一個公開課影片叫《.net 程式設計師的未來之路該怎麼走》,講的挺詳細的,可以去了解一下。
有詳細的.net 的課程體系和學習路線,可以參考一下。
第一部分:.net 基礎第二部分:資料庫開發第三部分:.net高階技術第四部分:web前端第五部分:asp.net 核心程式設計第六部分:asp.net MVC第七部分:掌上租專案(技術要點)第八部分:高階技術擴充套件詳細的可以到 如鵬網 官網上去了解一下,有網路的地方就可以學習,根據自己的時間來靈活安排學習進度,有問題隨時提問,老師實時線上答疑,目前國內.net 最好的就是 如鵬網了,有技術大牛親自授課,口碑不錯,基本上都是慕名而去的。
.net 提高課程,包含Entity Framework、ASP.Net MVC、掌上租專案、.Net Core、Linux、多執行緒、非同步程式設計、NoSQL(MongoDB、Redis、memcached)、MySql資料庫、web api、Docker for .net等內容。
回覆列表
現在,asp.net用的少了,大部分java首選,php隨後,不管在web端還是其他,這兩個語言都是公司喜歡的。像go、python這些都是趨勢,