Want to learn how to develop modern high-performance, cross-platform software applications in C#? Join this course and learn how to develop high-performance software applications in C# by harnessing the power of the .NET Core platform and its rich ecosystem of tools and services.
Microsoft .NET has long been the leading platform for building web and desktop applications on Microsoft Windows, but the release of .NET Core has firmly established .NET as an ideal technology for developing high-performance, cross-platform software applications.
We'll get you started with the fundamentals of the C# language and the .NET runtime platform, by creating your first .NET Core application. You'll then learn how to how to use tools like the dotnet command line, Microsoft Visual Studio and VS Code to create websites, APIs and class libraries in lectures, discussions and plenty of hands-on workshops.
Upon completion of this C# and .NET Core course, you will know how to develop and deploy modern high-performance software applications in C# on this powerful platform.
Learn how to:
What the community says
"He explained things well, and used good examples to illustrate his points. He gave us ample opportunity to ask questions."Delegate
Introduction to .NET CoreCreating your first .NET Core application
- Working with Visual Studio and Visual Studio Code
- Using the dotnet command line tools
- Working with NuGet packages
.NET Programming Fundamentals
- Operators, flow control, pattern matching
- The .NET type system
- Classes, structs, interfaces and inheritance; namespaces and visibility
- Constructors, static types,
- Exception handling
- Collections, generics and LINQ
Building Web Applications with .NET Core
- Introducing ASP.NET
- The Model/View/Controller pattern
- Working with the Razor view engine
- Creating HTTP APIs using ASP.NET WebAPI
Databases, filesystems and data storage
- Working with files, streams and sockets
- Connecting to relational databases using SqlClient and ADO.NET
- Working with relational data using Entity Framework Core
- Connecting to APIs and data services
- Improving application performance using caching
Testing and Debugging .NET Applications
- Debugging .NET applications
- Writing unit tests with xUnit
- Using mocks, fakes and stubs
Advanced .NET Development Patterns
- Applying SOLID principles in .NET
- Introduction to the Task Parallel Library (TPL)
- Parallelization and asynchronous programming patterns
- Reflection and metaprogramming
Application security in .NET Core
- Understanding security vulnerabilities; introduction to OWASP
- Authentication and authorization models in .NET Core
- Securing web applications with ASP.NET Core and IdentityServer
Running .NET Core in Production
- Continuous integration for .NET applications
- Deployment strategies for .NET Core (on-premise, cloud, containers, serverless)
- Applying ‘cloud native’ architectural patterns in .NET applications
- Integrating .NET Core with your organization’s infrastructure
- Configuration management
- Monitoring and logging .NET applications
If you're a software developer (any language) and want to learn how to develop modern high-performance, cross-platform software applications in C#, this comprehensive Fundamentals of Modern Application Development with C# and .NET Core course is for you!
This is a course to get you started with C# and .NET, so no prior C# or .NET skills are required, but to benefit from this C# and .NET Core course, you should already be comfortable using a text editor to create and update source code files, know how to run a compiler or interpreter and have some prior experience working with relational databases.
Bring your own hardware
Laptops for your Course
You are invited to bring your own laptop with your preferred IDE to this C# and .NET course, so you can learn using the tools, languages and IDEs you are already familiar with, and can focus on learning the new concepts and skills covered in this course.
If you are unable to bring your own laptop and you let us know as soon upon booking and at least 1 week prior to your attendance of this course, so our team can provide you with a laptop that is pre-installed with the relevant environment.