Improving Your C# Skills
暫譯: 提升你的 C# 技能
Ahmed Khan, Ovais Mehboob, Callaway, John, Hunt, Clayton
- 出版商: Packt Publishing
- 出版日期: 2019-02-22
- 售價: $2,030
- 貴賓價: 9.5 折 $1,929
- 語言: 英文
- 頁數: 606
- 裝訂: Quality Paper - also called trade paper
- ISBN: 1838558381
- ISBN-13: 9781838558383
-
相關分類:
C#
海外代購書籍(需單獨結帳)
相關主題
商品描述
Key Features
- Understand how to use .NET frameworks like the Task Parallel Library (TPL)and CryptoAPI
- Develop a containerized application based on microservices architecture
- Gain insights into memory management techniques in .NET Core
Book Description
This Learning Path shows you how to create high performing applications and solve programming challenges using a wide range of C# features. You’ll begin by learning how to identify the bottlenecks in writing programs, highlight common performance pitfalls, and apply strategies to detect and resolve these issues early. You'll also study the importance of micro-services architecture for building fast applications and implementing resiliency and security in .NET Core. Then, you'll study the importance of defining and testing boundaries, abstracting away third-party code, and working with different types of test double, such as spies, mocks, and fakes. In addition to describing programming trade-offs, this Learning Path will also help you build a useful toolkit of techniques, including value caching, statistical analysis, and geometric algorithms. This Learning Path includes content from the following Packt products:
- C# 7 and .NET Core 2.0 High Performance by Ovais Mehboob Ahmed Khan
- Practical Test-Driven Development using C# 7 by John Callaway, Clayton Hunt
- The Modern C# Challenge by Rod Stephens
What you will learn
- Measure application performance using BenchmarkDotNet
- Leverage the Task Parallel Library (TPL) and Parallel Language Integrated Query (PLINQ)library to perform asynchronous operations
- Modify a legacy application to make it testable
- Use LINQ and PLINQ to search directories for files matching patterns
- Find areas of polygons using geometric operations
- Randomize arrays and lists with extension methods
- Use cryptographic techniques to encrypt and decrypt strings and files
Who this book is for
If you want to improve the speed of your code and optimize the performance of your applications, or are simply looking for a practical resource on test driven development, this is the ideal Learning Path for you. Some familiarity with C# and .NET will be beneficial.
商品描述(中文翻譯)
**主要特點**
- 了解如何使用 .NET 框架,如任務平行庫 (Task Parallel Library, TPL) 和 CryptoAPI
- 開發基於微服務架構的容器化應用程式
- 獲得 .NET Core 中記憶體管理技術的見解
**書籍描述**
這條學習路徑將教你如何創建高效能的應用程式並解決編程挑戰,使用廣泛的 C# 特性。你將首先學習如何識別編寫程式中的瓶頸,突顯常見的效能陷阱,並應用策略及早檢測和解決這些問題。你還將研究微服務架構在構建快速應用程式和實現 .NET Core 中的韌性與安全性的重要性。接著,你將學習定義和測試邊界、抽象第三方代碼以及使用不同類型的測試替身(如間諜、模擬和虛假)的重要性。除了描述編程的取捨,這條學習路徑還將幫助你建立一套有用的技術工具包,包括值快取、統計分析和幾何算法。這條學習路徑包含以下 Packt 產品的內容:
- Ovais Mehboob Ahmed Khan 的《C# 7 和 .NET Core 2.0 高效能》
- John Callaway 和 Clayton Hunt 的《使用 C# 7 的實用測試驅動開發》
- Rod Stephens 的《現代 C# 挑戰》
**你將學到什麼**
- 使用 BenchmarkDotNet 測量應用程式效能
- 利用任務平行庫 (TPL) 和平行語言集成查詢 (PLINQ) 庫執行非同步操作
- 修改遺留應用程式以使其可測試
- 使用 LINQ 和 PLINQ 在目錄中搜尋符合模式的檔案
- 使用幾何運算找出多邊形的面積
- 使用擴展方法隨機化陣列和列表
- 使用加密技術加密和解密字串及檔案
**本書適合誰**
如果你想提高代碼的速度並優化應用程式的效能,或只是尋找有關測試驅動開發的實用資源,這是理想的學習路徑。對 C# 和 .NET 有一定的熟悉度將會有幫助。
目錄大綱
- What's New in .NET Core 2 and C# 7?
- Understanding .NET Core Internals and Measuring Performance
- Multithreading and Asynchronous Programming in .NET Core
- Securing and Implementing Resilience in .NET Core Applications
- Why TDD is Important
- Setting Up the .NET Test Environment
- Setting Up a JavaScript Environment
- What to Know Before Getting Started
- Tabula Rasa
- Testing JavaScript Applications
- Exploring Integrations
- Changes in Requirements
- The Legacy Problem
- Unraveling a Mess
- Geometry
- Randomization
- Files and Directories
- Advanced C# and .NET Features
- Cryptography
目錄大綱(中文翻譯)
- What's New in .NET Core 2 and C# 7?
- Understanding .NET Core Internals and Measuring Performance
- Multithreading and Asynchronous Programming in .NET Core
- Securing and Implementing Resilience in .NET Core Applications
- Why TDD is Important
- Setting Up the .NET Test Environment
- Setting Up a JavaScript Environment
- What to Know Before Getting Started
- Tabula Rasa
- Testing JavaScript Applications
- Exploring Integrations
- Changes in Requirements
- The Legacy Problem
- Unraveling a Mess
- Geometry
- Randomization
- Files and Directories
- Advanced C# and .NET Features
- Cryptography