什麼是.NET?
.NET 8.0 SDK下載地址:https://dotnet.microsoft.com/zh-cn/download/dotnet/8.0
.NET 是一個免費的跨平臺開源開發人員平臺,用於生成許多不同型別的應用。使用 .NET,可以使用多種語言(C#、F#、VB)、編輯器(VS、VSC、Rider)和庫(以Microsoft主導的社群提供超過100,000+包來)來構建 Web、移動和桌面、機器學習、遊戲開發、IOT 等眾多應用。
本系列全程採用.NET 8作為主幹,Web專案為案例,帶領大家從入門到精通
為什麼選.NET?
高效生產力
.NET 提供泛型、LINQ 和非同步程式設計等高階語言功能,併為開發人員提供廣泛的類庫和多語言支援。
.NET提供一致性Standard標準,這是一組標準的基類庫和API,這些庫和API對所有.NET應用程式都是通用的。
.NET還提供了一系列基於基礎庫構建的應用程式模板,幫助你更快地生成應用,例如Web、移動和桌面、微服務、雲服務等等。
.NET 是面向重視生產力、效能、安全性和可靠性的開發人員的終極平臺。
跨應用跨語言跨平臺
藉助.NET,可以面向在任何平臺上執行的任何應用程式型別。開發者可以在熟悉的環境中在其之間重複使用技能和程式碼。這意味著開發人員能夠以更少的成本,更快地構建應用。從在 iOS、Android 和 Windows 上執行的移動應用程式到在 Windows Server 和 Linux 上執行的企業伺服器應用程式,或在雲中執行的大規模微服務,.NET 提供了一個解決方案。
這一切都歸功於.NET擁有一個非常罕見的完整程式設計平臺:CLR,CLR不是本系列主題,如果需要的同學多可以單開一個系列帶大家瞭解CLR。
強大的生態
.NET位於.NET Foundation基金會下,.NET基金會為獨立組織,旨在促進圍繞 .NET 生態系統的開放型開發和協作。目前已有100,000+ OSS貢獻,3,700+ OSS公司參與者。
.NET平臺擁有Microsoft的官方支援,並受到數以千計的公司和數百萬開發人員的信任。除了社群和 Microsoft之外,技術指導組成員 Google、JetBrains、Red Hat、Samsung 和 Unity 正在指導 .NET 平臺的未來。
令人驚歎的迭代速度
.NET Core的是.NET的前身,從2016年6月27日釋出.NET Core 1.0.0到2018年5月30日釋出的2.1.0,.NET Core開始被市場接受,市場表現十分“熱鬧”。有C#體系下“技術狂熱分子”的追捧,也有“守舊派”的牴觸,還有不少其它平臺的嘲諷。然而這些都沒有影響到微軟此次開源的決心,沒錯,.NET Core最大的特點之一就是開源,時至今日都有不少人對C#這門語言的印象停留在Framework,閉源且臃腫。
至.NET Core2.1起,微軟投入更多資源來迭代它,以一年一個STS版本的速度進行升級,直到2020年釋出.NET 5.0,.NET Core 3.1和Framework 4.8正式被合併為一個統一的版本,至此,微軟已經將重點全面轉移到了.NET平臺。
版本 | 原始釋出日期 | 最新補丁版本 | 補丁釋出日期 | 終止支援 |
---|---|---|---|---|
.NET 8 | 預計2023年11月 | -- | -- | 預計2026年11月 |
.NET 7 | 2022年11月8日 | 7.0.13 | 2023年10月24日 | 2024年5月14日 |
.NET 6 | 2021年11月8日 | 6.0.24 | 2023年10月24日 | 2024年11月12日 |
.NET 5 | 2020年11月10日 | 5.0.17 | 2022年5月10日 | 2022年5月10日 |
.NET Core 3.1 | 2019年12月3日 | 3.1.32 | 2022年12月13日 | 2022年12月13日 |
.NET Core 3.0 | 2019年9月23日 | 3.0.3 | 2020年2月18日 | 2020年3月3日 |
.NET Core 2.2 | 2018年12月4日 | 2.2.8 | 2019年11月19日 | 2019年12月23日 |
.NET Core 2.1 | 2018年5月30日 | 2.1.30 | 2021年8月19日 | 2021年8月21日 |
.NET Core 2.0 | 2017年8月14日 | 2.0.9 | 2018年7月10日 | 2018年10月1日 |
.NET Core 1.1 | 2016年11月16日 | 1.1.13 | 2019年5月14日 | 2019年6月27日 |
.NET Core 1.0 | 2016年6月27日 | 1.0.16 | 2019年5月14日 | 2019年6月27日 |
怎麼學NET?
如上述,.NET平臺涵蓋太多方向,沒有人能夠有精力毫無方向的去學習。在接下來的章節中我將聚焦於.NET Web服務端程式設計領域。
時至今日,前後端分離已經是市場上Web領域的主流架構,而我們聚焦的是後端。
前置內容
在學習.NET Core之前,我希望你能夠:
-
掌握基本C#語法,非同步程式設計
-
瞭解物件導向、面向切面程式設計思想,常見的設計模式
-
掌握一種ORM,瞭解常用中介軟體、資料庫
-
對計算機網路、作業系統、常見資料結構演算法有所瞭解
學習途徑
你有且不限於透過經典書籍、影片、部落格、官方文件、原始碼等渠道獲取你想要的內容。但網際網路上的噪音非常大,希望每一位讀者有選擇性的擇取內容。
本系列將以.NET Web初學者的視角,由淺到深的攻克每一個關鍵技術點。對於有一定經驗的同學,請自行區分所需內容。歡迎同學們反饋。
作者寄言
怎麼學?這也許是很多同學的心聲,我與你一樣,在初遇一個陌生技術棧時,會緊張不安。希望有人提供一個完美的學習路線,會在網路上不停的搜尋同型別的技術,對比一下誰強誰弱
。。事實上我們花了太多的時間去確認一個本就無法確認的東西,以至於別人都能夠寫出炫酷的作品時,我們還在門口觀望。我想,學習最重要的不是怎麼學,而是學
本身,學習的初期沉沒成本是很低的,我希望初學者不要有那麼多為什麼?
而是多一些是不是?
,因為後者是夾雜你個人思考與實踐的體現。
什麼時候學?種一顆樹最好的時間是十年前,其次是現在!
學習沒有技巧嗎?當然有啊,當前提是你有足夠的儲備!如果你連基礎語法都沒有掌握住,來這裡問Web怎麼學,是不是有一些顛倒因果了呢?對於學習這件事情,作者本身其實也不在行,只有一些老套路--重複且高頻、歸納與演繹、驗證並預測
最後,做內容創作真的是一件不易的事情,如果你認為這些內容對你有益,能夠幫助到你,請幫作者點贊和轉發吧,幫助到更多的人吧~