特價 -20%

從新手到高手:.NET框架程式開發實作DM2360

原始價格:NT$880。目前價格:NT$704。

出版商 深智數位股份有限公司
出版日期 2023年09月20日
語言 繁體中文
頁數 608
ISBN 9786267273944
Add to Wishlist
貨號: DM2360 Category:

描述

內容簡介

【新書簡介】

 

還在擔心微軟產品的跨平台相容性嗎?或者你認為Linux才是真正的程式開發嗎?時代真的變了,.NET架構應該是全世界最多人使用的框架,只要安裝了Visual Studio,就可以開發Windows、MacOS、Linux、Web、雲端、Docker/K8S、主控台等應用,只要你會使用C#!但本書不強調C#的語法,本書的重點在於.NET框架中的開發及設定,並且全書都圍繞在Visual Studio上,也包含了目前最流行的.vscode的應用。在了解基本使用之外,本書直攻問題的核心,包括執行緒、鎖定等機制,並且也精解了JIT等編輯器的原理及方法。最後就是大家關心的平台部署了。本書使用了目前業界最新的部署標準Docker/K8s,更完整說明了compose、swarm等進階Docker技術。還等什麼,Linux的世界也可以用.NET進入,學習一個.NET就可以完成跨平臺開發,這本書就是你贏在終點的起跑點。

 

【本書看點】

✪ .NET環境安裝、Visual Studio最新版安裝

✪ .NET執行原理、CLI介紹

✪ ASP.NET的多執行模式介紹

✪ 相依性插入、設定和選項、工作排程

✪ IHostedService和BackgroundService的背景工作介紹

✪ 中介軟體完整攻略,快取的應用,當地語系,系統健康檢查

✪ 檔案系統的開發及詳解,各種日誌的詳細說明

✪ 多執行緒及工作平行,執行緒同步及鎖定

✪ 記憶體管理、診斷偵錯

✪ 編輯技術及部署

✪ Docker、K8S的部署

 

【適合讀者】

☛ 初級和中級開發人員。

☛ 對.NET技術有興趣的讀者。

☛ 準備投入.NET開發,或進一步提升自己的讀者

作者簡介

馮輝    

 

Microsoft MVP、Dapr Member、.NET Conf China 2020/2021講師、開源技術的積極倡導者與貢獻者。具有豐富的.NET開發經驗,並專注於.NET平臺、雲原生、服務化和DevOps等技術領域的研究。

目錄

第1章        .NET概述和環境安装

1.1  .NET框架簡介

1.2  .NET的開發環境

1.3  小結

 

2 .NET執行原理概述

2.1  .NET CLI概述

2.2  小結

 

3  ASP.NET Core 應用程式的多種執行模式

3.1  自宿主

3.2  IIS服務承載

3.3  將WebAPI嵌入桌面應用程式中

3.4  服務承載

3.5  延伸閱讀:WindowsFormsLifetime

3.6  小結

 

4   相依性插入

4.1.NET相依性插入

4.2實作批次服務註冊

4.3小結

 

5   設定與選項

5.1  設定模式

5.2  選項模式

5.3  設計一個簡單的設定中心

5.4  小結

 

6   使用IHostedServiceBackgroundService實作背景工作

6.1  IHostedService

6.2  BackgroundService

6.3  工作排程

6.4  小結

 

7   中介軟體

7.1  中介軟體的作用

7.2  中介軟體的呼叫過程

7.3  撰寫自訂中介軟體

7.4  在篩檢程式中應用中介軟體

7.5  製作簡單的API統一回應格式與自動包裝

7.6  延伸閱讀:責任鏈模式

7.7  延伸閱讀:中介軟體常見的擴充方法

7.8  小結

 

8   快取

8.1  記憶體快取

8.2  分散式快取

8.3  HTTP快取

8.4  小結

 

9   當地語系化

9.1  內容當地語系化

9.2  多樣化的資料來源

9.3  小結

 

10   健康檢查

10.1  檢查當前應用的健康狀態

10.2  發佈健康報告

10.3  視覺化健康檢查介面

10.4  小結

 

11   檔案系統

11.1  ASP.NET Core靜態檔案

11.2  自訂一個簡單的檔案系統

11.3  小結

 

12   日誌

12.1  主控台日誌

12.2  偵錯日誌

12.3  事件日誌

12.4  EventSource日誌

12.5  TraceSource日誌

12.6  DiagnosticSource日誌

12.7  小結

 

13   多執行緒與工作平行

13.1  執行緒簡介

13.2  基於工作的非同步程式設計

13.3  執行緒平行

13.4  小結

 

14   執行緒同步機制和鎖定

14.1  不可部分完成作業

14.2  自旋鎖

14.3  混合鎖

14.4  互斥鎖

14.5  旗號

14.6  讀寫鎖

14.7  小結

 

15   記憶體管理

15.1  記憶體分配

15.2  垃圾回收器

15.3  資源釋放

15.4  垃圾回收器的設定

15.5  小結

 

16   診斷和偵錯

16.1  性能診斷工具

16.2  Linux偵錯

16.3  小結

 

17   編譯技術精講

17.1  IL解析

17.2  JIT簡介

17.3  JIT編譯

17.4  AOT編譯

17.5  小結

 

18   部署

18.1  發佈與部署

18.2  Docker

18.3  撰寫Dockerfile檔案

18.4  建構.NET應用鏡像

18.5  Docker Compose

18.6  Docker Swarm

18.7  Kubernetes

18.8  小結

前言

隨著.NET技術的發展,湧現出眾多的設計思想和核心概念。值得開發人員關注的技術點有很多,如ASP.NET Core模組的設計、跨平台偵錯與部署等。

.NET已經成為一種熱門的現代技術系統,從.NET徹底邁向跨平台和開放原始碼開始,已經歷經了約10個版本。新一代的.NET平台以擁抱雲端原生為核心,擁有更小的體積、更少的資源佔用和更快的啟動速度,並且支援水平擴充。

筆者也算是一個親歷者,從.NET Core 1.0到現在,是一個從重生到繁榮的成長階段,.NET生態更加開放,開放原始碼社區越來越活躍,不僅支持傳統的x86架構系統,還支持ARM架構,並且獲得了諸多新興架構系統的踴躍支持,同時在工業、IoT、車聯網等領域獲得了廣泛運用。無論是從社區參與度,還是從NuGet的下載量,都不難看出.NET的發展速度。

.NET具備原生的跨平台部署能力,是一種用於建構多端應用的開放平台。使用.NET可以建構桌面應用、雲端服務、嵌入式應用及機器學習應用等,讀者可以從GitHub官網的dotnet組織中獲取它所有的原始程式碼。

電腦科學家Alan J. Perlis曾說過:“不能影響你的程式設計思維方式的語言不值得學習和使用。”由此可知,“思維”非常重要,只有了解一門程式語言或框架的基礎模型與核心設計,才能將其應用到日常的程式設計中。

框架的設計過程是非常複雜的,筆者偏向於將複雜問題簡單化,先研究它的實現方式,再了解它的設計模式,透過這一層層的推導過程,慢慢地了解整體脈絡。閱讀原始程式碼是一個枯燥但會帶來收穫的過程。在本書中,筆者將框架設計方法,以及它們的實現(可擴充性)方式毫無保留地寫下來。

本書整合了筆者在工作中使用.NET開發應用程式的撰寫經驗和偵錯經驗,同時結合了筆者關於Linux平台和容器雲端平台的使用經驗。透過本書,筆者將介紹每個模組的核心設計與實現,因為要想在生產環境中大規模使用,就需要在這個複雜而龐大的專案中抓到主線,了解內部的實現和偵錯技術,以便快速定位問題和解決問題。

本書對ASP.NET Core的部分核心內容進行了深入解析,在這個基礎上延伸內容,以及自訂擴充實例,初學者可以更深入地了解ASP.NET Core內部的運作方式。本書也涵蓋了很多基礎知識,如垃圾回收、偵錯、執行緒等,除此之外,增加了部署方面的內容,將應用程式部署到宿主機、Docker和Kubernetes中。

筆者透過對.NET技術的原理進行剖析及實例的演示,幫助讀者快速熟悉框架的核心設計及實現原理。希望讀者在閱讀完本書後,能夠將書中的內容學以致用,使用.NET建構出高性能的應用程式,同時為開放原始碼社區貢獻一份心力。

 

✤ 本書特色

本書主要介紹.NET框架的核心部分,不僅闡述了框架的核心設計,還展示了實作程式和執行效果,同時根據不同的功能模組擴充出屬於自己的小元件。透過閱讀本書,讀者可以深入了解.NET框架的核心設計,掌握.NET性能最佳化和ASP.NET Core的部署方式。本書包含18章。第1~3章主要介紹.NET框架、開發環境和運行模式。第4~12章主要介紹相依性插入、設定與選項、背景工作、中介軟體、快取、當地語系化、健康檢查、檔案系統和日誌等常用功能模組。第13~17章主要介紹執行緒、執行緒同步、記憶體管理、診斷和偵錯,以及編譯技術等內容。第18章主要介紹應用程式的部署方式,包括宿主機的部署,以及Docker和Kubernetes的部署。

本書可供.NET開發人員和.NET初學者閱讀與參考,也適合具備其他編程語言基礎且想要學習.NET的開發人員閱讀,還可為讀者在工作及鞏固基礎時提供有力的支援。

 

額外資訊

出版商

深智數位股份有限公司

出版日期

2023年09月20日

語言

繁體中文

頁數

608

ISBN

9786267273944