.NET BCL Fundamentals
Do not reinvent the wheel. The .NET base class libraries (BCL) provides a great deal of built-in tried-and-true functionality. This course will teach you how to build applications using the existing System.* and Microsoft.* .NET libraries.
What you'll learn
Developing any type of application usually requires a common set of functionality, for example reading and writing files, parsing XML/JSON, calling a web API, or other similar methods. In this course, .NET BCL Fundamentals, you’ll learn to use the built-in .NET libraries, also known as base class libraries (BCL). First, you’ll explore the common type system. Next, you’ll discover how to work with input and output including how to parse files from various data interchange formats. Then, you’ll learn how to work with and query data. Next, you’ll explore the security related namespaces. You will then move forward into network programming. Additionally, you’ll learn about how to globalize and localize applications. Then, you will explore how to debug an application as well as how to create multithreaded applications. Finally, you’ll explore some lesser known System and Microsoft namespaces that may come in handy from time to time. When you’re finished with this course, you’ll have the skills and knowledge of how to avoid reinventing the wheel by using the built-in .NET base class libraries needed to create an amazing .NET application.
Table of contents
- The Building Blocks of a .NET Application 2m
- The Common Type System 2m
- Primitive Types in the System Namespace 3m
- The System.Array Class 5m
- Collections and Data Structures 4m
- System.Collections 12m
- System.Collections.Generic 9m
- System.Collections.Concurrent 8m
- System.Collections.Immutable 2m
- System.Collections.Specialized 2m
- System.Collections.ObjectModel 2m
- Takeaway 1m
- Input, Output, Encodings, and Text Manipulation 1m
- The System.IO Namespace 3m
- Working with the System.IO.File Class 6m
- Create, Write, and Read Files with System.IO 6m
- Working with the System.IO.Stream Class 2m
- Create, Read, and Write Using Streams 3m
- Working with Directories Using the System.IO.Directory Class 1m
- Create, List, and Delete Directories 4m
- Compressing Files and Folders with the System.IO.Compression Namespace 2m
- Compress and Extract Zip Files 3m
- The System.Text Namespace 2m
- Encoding And Decoding Strings 5m
- The System.Text.RegularExpressions Namespace 2m
- Searching for Text Patterns Using Regular Expressions 5m
- Improving Performance on String Concatenation with the StringBuilder Class 3m
- Takeaway 1m
- The System.Xml and System.Text.Json Namespaces 1m
- Working with XML Using the System.Xml Namespace 3m
- Reading and Writing XML Documents Using the XmlDocument Class 7m
- Querying XML Documents Using XPath 5m
- Reading and Writing XML Documents Using the XmlReader And XMLWriter Classes 7m
- Serializing And Deserializing XML with the XmlSerializer Class 5m
- Working with JSON Using the System.Text.Json Namespace 5m
- JSON Serialization Using the JsonSerializer and JsonSerializerOptions Class 4m
- Working with JSON Using the JsonDocument and JsonNode Classes 10m
- High Performance Reading and Writing JSON Using Utf8JsonWriter and Utf8JsonReader 6m
- Takeaway 2m
- Writing Code That Deals with the Network 1m
- The System.Net Namespace 2m
- Working with Uniform Resource Identifiers (URIs) 5m
- NetworkInformation And DNS 6m
- Establishing Connections Between Clients and Servers Using Sockets 6m
- Sending HTTP Requests and Receiving HTTP Responses Using HttpClient 4m
- Uploading Files Using FTP 6m
- Sending Mail With SMTP 5m
- Encoding And Decoding HTML using System.Web.HttpUtility 2m
- Takeaway 1m
- Diagnosing Applications 1m
- .NET Diagnostics Tools and the System.Diagnostics Namespace 2m
- .NET Configurations: Debug/Release 2m
- Debug and Trace Classes 2m
- Listeners 5m
- Directives and Conditional Compilation 5m
- Working with a Process 3m
- Metrics 4m
- Other Diagnostics Namespaces 1m
- ConfigurationManager 0m
- Takeaway 1m
- Creating Multi-threaded Applications 1m
- The System.Threading Namespace 7m
- The Lock Statement 1m
- Synchronizing Access Using Monitor 3m
- Ensuring Only One Object Access a Resource with Mutex Even on External Threads 3m
- Limiting the Number of Threads Accessing a Resource with Semaphore 3m
- Other Threading Namespaces 2m
- Takeaway 1m
- Exploring the Microsoft, System.Runtime and System.Reflection Namespaces 1m
- The System.Reflection Namespace 2m
- System.Type, the Class Used to Access Metadata with Reflection 5m
- Reflecting on Methods, Fields, and Properties 3m
- Dynamically Loading An Assembly 4m
- System.Runtime 2m
- Microsoft.VisualBasic 1m
- Microsoft.Win32 1m
- Takeaway 1m