Introducing this book and its contents
Let’s get started by introducing you to the code solutions and structure of this book.
Getting code solutions for this book
The GitHub repository for this book has solutions using full application projects for all code tasks and exercises, found at the following link:
https://github.com/markjprice/cs12dotnet8
After navigating to the GitHub repository in your web browser, press the .
(dot) key on your keyboard, or manually change .com
to .dev
in the link to convert the repository into a live code editor based on Visual Studio Code using GitHub Codespaces, as shown in Figure 1.1:
Figure 1.1: GitHub Codespaces live editing the book’s GitHub repository
We provide you with a PDF file that has color images of the screenshots and diagrams used in this book. You can download this file from https://packt.link/gbp/9781837635870.
Visual Studio Code in a web browser is great to run alongside your chosen local code editor as you work through the book’s coding tasks. You can compare your code to the solution code and easily copy and paste parts if needed.
You do not need to use or know anything about Git to get the solution code of this book. You can download a ZIP file containing all the code solutions by using the following direct link and then extract the ZIP file into your local filesystem: https://github.com/markjprice/cs12dotnet8/archive/refs/heads/main.zip.
.NET terms used in this book
Throughout this book, I use the term modern .NET to refer to .NET 8 and its predecessors like .NET 6 that derive from .NET Core. I use the term legacy .NET to refer to .NET Framework, Mono, Xamarin, and .NET Standard.
Modern .NET is a unification of those legacy platforms and standards.
The structure and style of this book
After this first chapter, the book can be divided into three parts: language, libraries, and web development.
First, the grammar and vocabulary of the C# language; second, the types available in the .NET libraries for building app features; and third, the fundamentals of cross-platform websites, services, and browser apps that you can build using C# and .NET.
Most people learn complex topics best by imitation and repetition rather than reading a detailed explanation of the theory; therefore, I will not overload you with detailed explanations of every step throughout this book. The idea is to get you to write some code and see it run.
You don’t need to know all the nitty-gritty details immediately. That will be something that comes with time as you build your own apps and go beyond what any book can teach you.
In the words of Samuel Johnson, author of the English dictionary in 1755, I have committed “a few wild blunders, and risible absurdities, from which no work of such multiplicity is free.” I take sole responsibility for these and hope you appreciate the challenge of my attempt to lash the wind by writing this book about rapidly evolving technologies like C# and .NET, and the apps that you can build with them.
If you have a complaint about this book, then please contact me before writing a negative review on Amazon. Authors cannot respond to Amazon reviews so I cannot contact you to resolve the problem and help you or listen to your feedback and try to do better in the next edition. Please ask a question on the Discord channel for this book at https://packt.link/csharp12dotnet8, email me at [email protected]
, or raise an issue in the GitHub repository for the book at the following link: https://github.com/markjprice/cs12dotnet8/issues.
Topics covered by this book
The following topics are covered in this book:
- Language fundamentals: Fundamental features of the C# language, from declaring variables to writing functions and object-oriented programming.
- Library fundamentals: Fundamental features of the .NET base class library as well as some important optional packages for common tasks like database access.
- Web development fundamentals: Fundamental features of the ASP.NET Core framework for server-side and client-side website and web service development.
Topics covered by Apps and Services with .NET 8
The following topics are available in a companion book, Apps and Services with .NET 8:
- Data: SQL Server, Azure Cosmos DB.
- Specialized libraries: Dates, times, time zones, and internationalization; common third-party libraries for image handling, logging, mapping, and generating PDFs; multitasking and concurrency; and many more.
- Services: Caching, queuing, background services, gRPC, GraphQL, Azure Functions, SignalR, and minimal APIs.
- User interfaces: ASP.NET Core, Blazor, and .NET MAUI.
This book, C# 12 and .NET 8 – Modern Cross-Platform Development Fundamentals, is best read linearly, chapter by chapter, because it builds up fundamental skills and knowledge.
The companion book, Apps and Services with .NET 8, can be read more like a cookbook, so if you are especially interested in building gRPC services, then you could read that chapter without the preceding chapters about minimal API services.
To see a list of all books I have published with Packt, you can use the following link:
https://subscription.packtpub.com/search?query=mark+j.+price
A similar list is available on Amazon:
https://www.amazon.com/Mark-J-Price/e/B071DW3QGN/
You can search other book-selling sites for my books too.