日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > C# >内容正文

C#

C#10 和 .NET6 代码跨平台开发

發布時間:2023/12/4 C# 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C#10 和 .NET6 代码跨平台开发 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

零、前言

有數千頁長的編程書籍,旨在成為 C# 語言、.NET 庫、網站、服務、桌面和移動應用等應用模型的綜合參考。

這本書不一樣。它簡潔明了,旨在成為一本輕快有趣的書,每一個主題都有實用的實踐演練。總體敘述的廣度是以某種深度為代價的,但如果你愿意,你會發現許多路標需要進一步探索。

這本書同時是一個逐步指導學習現代 C# 使用跨平臺.NET 驗證實踐的指南,并簡要介紹了可以使用它們構建的主要類型的實際應用。這本書最適合 C# 和.NET 的初學者,或者那些在過去使用過 C# 但在過去幾年的變化中感覺落后的程序員。

如果您已經有過使用舊版本 C# 語言的經驗,那么在第 2 章的第一節中,您可以查看新語言功能的表格并直接跳到它們。

如果您已經有了使用舊版本.NET 庫的經驗,那么在第 7 章的第一節打包和分發.NET 類型中,您可以查看新庫功能的表并直接跳到它們。

我將指出 C# 和.NET 的酷的角落和陷阱,這樣你就可以給同事留下深刻印象并快速提高工作效率。我認為你足夠聰明,可以用谷歌搜索相關主題的解釋,而不必包含在初級到中級指南中,因為該指南在印刷本中的空間有限。

在哪里可以找到代碼解決方案

您可以通過以下鏈接從 GitHub 存儲庫下載分步指導任務和練習的解決方案:https://github.com/markjprice/cs10dotnet6 。

如果你不知道怎么做,那么我會在第 1 章、的末尾給出如何做的說明,你好,C#!歡迎使用.NET!。

這本書涵蓋的內容

第一章、你好,C#!歡迎使用.NET!是關于設置您的開發環境,并使用 Visual Studio 或 Visual Studio 代碼創建使用 C# 和.NET 可能最簡單的應用。對于簡化的控制臺應用,您將看到 C# 9 中引入的頂級程序功能的使用。為了學習如何編寫簡單的語言結構和庫功能,您將看到.NET 交互式筆記本的使用。您還將了解一些尋求幫助的好地方,以及如何與我聯系以獲得有關某個問題的幫助,或通過 GitHub 存儲庫向我提供反饋以改進本書和未來版本。

*第 2 章**講 C#*,介紹了 C# 的版本,并有表格顯示了哪些版本引入了新功能。我將解釋您每天編寫應用源代碼時使用的語法和詞匯。特別是,您將學習如何聲明和使用不同類型的變量。

第 3 章**控制流、轉換類型和處理異常涵蓋了使用運算符對變量執行簡單操作,包括比較、編寫決策代碼、C# 7 到 C# 10 中的模式匹配、重復語句塊以及類型之間的轉換。它還包括在不可避免地發生異常時編寫代碼以防御性地處理異常。

第 4 章**編寫、調試和測試函數是關于遵循不要重復自己(DRY原則,使用命令式和功能實現風格編寫可重用函數。您還將學習如何使用調試工具跟蹤和刪除 bug,在代碼執行時監視代碼以診斷問題,并嚴格測試代碼以刪除 bug,確保在將其部署到生產環境之前的穩定性和可靠性。

第 5 章**使用面向對象編程構建您自己的類型,討論了類型可以擁有的所有不同類型的成員,包括存儲數據的字段和執行操作的方法。您將使用面向對象編程(OOP等概念,如聚合和封裝。您將了解一些語言功能,如元組語法支持和out變量、默認文本和推斷的元組名稱,以及如何使用 C# 9 中引入的record關鍵字、init純屬性和with表達式定義和使用不可變類型。

第 6 章**實現接口和繼承類,解釋了使用 OOP 從現有類型派生新類型。您將學習如何定義運算符和本地函數、委托和事件、如何實現基類和派生類的接口、如何重寫類型的成員、如何使用多態性、如何創建擴展方法、如何在繼承層次結構中的類之間強制轉換,隨著可空引用類型的引入,C# 8 發生了巨大的變化。

第 7 章**打包和分發.NET 類型,介紹了.NET 的版本,并有表格顯示哪些版本引入了新的庫功能,然后展示了符合.NET 標準的.NET 類型以及它們與 C# 的關系。您將學習如何在任何受支持的操作系統(Windows、macOS 和 Linux 變體)上編寫和編譯代碼。您將學習如何打包、部署和分發自己的應用和庫。

第 8 章**使用常見的.NET 類型,討論了允許代碼執行常見實際任務的類型,如操作數字和文本、日期和時間、在集合中存儲項目、使用網絡和操作圖像以及實現國際化。

第 9 章**涉及文件、流和序列化的內容包括與文件系統的交互、對文件和流的讀寫、文本編碼以及 JSON 和 XML 等序列化格式,包括改進的System.Text.Json類的功能和性能。

第 10 章**使用實體框架核心處理數據,說明了使用名為實體框架核心**的對象關系映射(ORM技術對關系數據庫(如 Microsoft SQL Server 和 SQLite)的讀寫 EF 核心**。您將學習如何定義映射到數據庫中現有表的實體模型,以及如何定義可以在運行時創建表和數據庫的代碼優先模型。

第 11 章**使用 LINQ查詢和操作數據,向您介紹了語言集成查詢(LINQs)——語言擴展,它增加了處理項目序列的能力,并對其進行過濾、排序和投影到不同的輸出中。您將了解并行 LINQ(PLINQ)和 LINQ 到 XML 的特殊功能。

第 12 章**使用多任務處理提高性能和可擴展性討論了允許多個操作同時發生,以提高性能、可擴展性和用戶生產力。您將了解async Main特性以及如何使用System.Diagnostics名稱空間中的類型來監控代碼,以衡量性能和效率。

第 13 章**介紹 C# 和.NET 的實際應用,向您介紹可以使用 C# 和.NET 構建的跨平臺應用的類型。您還將構建一個 EF 核心模型來表示 Northwind 數據庫,該數據庫將在本書的其余章節中使用。

第 14 章**使用 ASP.NET Core Razor Pages 構建網站是關于學習在服務器端使用 ASP.NET Core 構建具有現代 HTTP 架構的網站的基礎知識。您將學習如何實現稱為 Razor Pages 的 ASP.NETCore 功能,它簡化了為小型網站創建動態網頁的過程,以及如何構建 HTTP 請求和響應管道。

第 15 章**使用模型-視圖-控制器模式構建網站,是關于學習如何以易于單元測試和管理的方式與使用 ASP.NETCore MVC 的程序員團隊構建大型復雜網站。您將了解啟動配置、身份驗證、路由、模型、視圖和控制器。

第 16 章**構建和使用 Web 服務解釋了使用 ASP.NETCore Web API 構建后端 REST 架構 Web 服務,以及如何使用工廠實例化的 HTTP 客戶端正確使用它們。

第 17 章**使用 Blazor構建用戶界面,介紹如何使用 Blazor 構建可在服務器端或客戶端 web 瀏覽器內部執行的 web 用戶界面組件。您將看到 Blazor 服務器和 Blazor WebAssembly 之間的區別,以及如何構建更易于在兩個托管模型之間切換的組件。

三個額外的在線章節完成了這個豐收版。您可以在閱讀以下章節和附錄 https://static.packt-cdn.com/downloads/9781801077361_Bonus_Content.pdf :

第 18 章**構建和消費專業服務向您介紹了使用 gRPC 構建服務、使用 Signal 實現服務器和客戶端之間的實時通信、使用 OData 公開 EF 核心模型以及在云中使用 Azure 功能響應觸發器的托管功能。

第 19 章**使用.NET 毛伊島構建移動和桌面應用,介紹如何為 Android、iOS、macOS 和 Windows 構建跨平臺移動和桌面應用。您將學習 XAML 的基礎知識,XAML 可用于定義圖形應用的用戶界面。

第 20 章**保護您的數據和應用是關于保護您的數據不被惡意用戶使用加密查看,以及不被哈希和簽名操縱或破壞。您還將了解身份驗證和授權,以保護應用免受未授權用戶的攻擊。

附錄**考試答案您的知識問題在每章末尾都有考試問題的答案。

這本書你需要什么

您可以在許多平臺上使用 Visual Studio 代碼開發和部署 C# 和.NET 應用,包括 Windows、macOS 和多種 Linux。

一個支持 VisualStudio 代碼和 internet 連接的操作系統是完成除一章以外的所有章節所需的全部內容。

如果您喜歡使用 VisualStudioforWindows 或 macOS,或者像 JetBrains Rider 這樣的第三方工具,那么您可以。

您需要 macOS 在第 19 章**中構建 iOS 應用,使用.NET MAUI構建移動和桌面應用,因為您必須擁有 macOS 和 Xcode 才能編譯 iOS 應用。

下載本書的彩色圖像

我們還為您提供了一個 PDF 文件,其中包含本書中使用的屏幕截圖和圖表的彩色圖像。彩色圖像將幫助您更好地了解輸出中的更改。

您可以從下載此文件 https://static.packt-cdn.com/downloads/9781801077361_ColorImages.pdf 。

習俗

在本書中,您將發現許多文本樣式可以區分不同類型的信息。下面是這些風格的一些例子,并解釋了它們的含義。

CodeInText:表示文本中的碼字、數據庫表名、文件夾名、文件名、文件擴展名、路徑名、虛擬 URL、用戶輸入和 Twitter 句柄。例如Controllers、Models和Views文件夾包含 ASP.NETCore 類和要在服務器上執行的.cshtml文件

代碼塊設置如下:

// storing items at index positions names[0] = "Kate"; names[1] = "Jack"; names[2] = "Rebecca"; names[3] = "Tom";

當我們希望提請您注意代碼塊的特定部分時,會突出顯示相關行或項目:

// storing items at index positions names[0] = "Kate"; **names[****1****] =** **"Jack"****;** names[2] = "Rebecca"; names[3] = "Tom";

任何命令行輸入或輸出的編寫方式如下:

dotnet new console

粗體:表示一個新的術語、一個重要的單詞,或者您在屏幕上看到的單詞,例如,在菜單或對話框中。例如:“點擊下一個按鈕,您將進入下一個屏幕。”

重要的注釋和指向進一步閱讀的外部來源的鏈接顯示在這樣一個框中。

良好實踐:關于如何像專家一樣編程的建議如下。

注:通過閱讀原文或者在瀏覽器中打開 https://csharp.apachecn.org/#/docs/cs10-dnet6-modern-cross-plat-dev/README

總結

以上是生活随笔為你收集整理的C#10 和 .NET6 代码跨平台开发的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。