The future is here - learn how to use it

PRE-SALE price of the course:

192€ | 237$ | 849zł

(+VAT if applies)

Course description

The world is changing fast and so C# does either. Some of us can even remember introducing generics in C# 2.0 or async/await in C# 5.0. Many of the new changes introduced in the successive versions of C# language quickly has become golden standard in everyday programming. Some maybe become a little less popular, but it is still good to know them to feel comfortable in various C#/.NET codebases we can encounter.

That's why we believe an in-depht and complex training about the newest C# 9.0 is so important. We can expect features like records and init only setters will quickly become a new standard while using C#. Moreover, many smaller improvments in the fields like type system and new syntax here and there will quickly blend into the everyday reality of .NET developers. Proficiency in C# 9.0 will become not only useful, but required.

We prepared C# 9.0 Professional online course to help you in gaining all the knowledge related to the newest C# edition. It is 9 solid weeks of learning through which we will show you all the new features. Not only explaining their syntax but also rationale behind them and their practical use cases. Every module contains an automated, unit-tested homework to give you fast and consistent learning feedback.

PRE-SALE price of the course:

192€ | 237$ | 849zł

(+VAT if applies)

Course agenda

1

Records and immutability - part I

  1. syntax and rationale
  2. - positional records
    - deconstruction
    - with expression
  3. init only setters
  4. - syntax and rationale
  5. Homework
2

Records and immutability - part II

  1. vs F#
  2. records as DDD Value Objects
  3. records as WebApi commands
  4. records in Test Builder pattern
  5. Homework
3

Top-level statements

  1. syntax and possibilities
  2. behind the scene: generated class/method
  3. local variables, functions & types
  4. use case: the simplest WebAPI examples
  5. use case: teaching/demos
  6. Homework
4

Pattern matching enhancements

  1. switch expression syntax
  2. type pattern
  3. and/or/not and parenthesized ()
  4. relational patterns
  5. use cases: is pattern expressions, switch expressions, nested patterns
  6. Homework
5

Target typing

  1. Target-typed new expressions
  2. - vs var
    - throw new()
  3. Target-typed conditional expressions
  4. Homework
6

Functions improvements

  1. Static anonymous functions/lambda expressions
  2. - reducing allocations
    - behind the scenes: generated class/method
  3. Attributes on local functions
  4. - use cases: Conditional, MethodImpl, DllImport
  5. Homework
7

Type system improvements

  1. Covariant return types
  2. - covariance and contravariance
    - use case: factory methods, builder pattern
    - the Clone story
  3. Extension GetEnumerator support for foreach loops
  4. - everything as collection
    - async enumerables
  5. Lambda discard parameters
  6. Homework
8

Low-level improvements

  1. Native sized integers
  2. - vs IntPtr/UIntPtr
    - why Mono has it?
  3. Function pointers
  4. - behind the scene: calli and ldftn
  5. Suppress emitting localsinit flag
  6. - SkipLocalsInit on a local function :)
  7. Homework
9

Code generators support

  1. New features for partial methods
  2. - definition vs declaration
    - partial classes recap - WinForms
  3. Module initializers
  4. - eager, one-time initialization
    - case: source generators global initialization logic
  5. Homework

What do I get?

🔍 Access to 9-weeks C# 9.0 Professional on-line course - Access to full C# 9.0 course material.

🔍 Automated homeworks - Homeworks based on unit tests allows you to limitless experiments and fast, consistent feedback.

🔍 Access to the course platform - The access to the platform that not only keeps recordings, but also allows you to discuss and contact with instructor and other participants of that course.

🔍 Access to the repository - Besides the access to the recordings and ability to contact others, you receive the access to repository that includes code examples.

PRE-SALE price of the course:

192€ | 237$ | 849zł

(+VAT if applies)

Course authors

Szymon Kulec


Dotnetos co-founder, Microsoft MVP, architect, speaker


I like to incorporate an unique combination of Software Architecture and Performance Engineering. With broad knowledge of modern architecture principles, distributed systems, as well as deep understanding of performance principles I make every allocation fear for its existence. I never allocate before noon.

Konrad Kokosa


Dotnetos co-founder, Microsoft MVP, author, speaker


I’m a Pro .NET Memory Management book author and independent consultant, blogger, speaker and a professional Tweeter [see: Twitter]. I share my passion as a .NET trainer, especially in the performance and app diagnosis field.

Łukasz Pyrzyk


Dotnetos co-founder, Microsoft MVP, author, speaker


I’m a software developer interested in performance topics, microservices and optimizations. Moreover, I’m a speaker (more than a blogger) and an active Twitter user.

Questions and answers

🔍 Which programming language will be used in examples?

All the examples as well as all our work will be done in C# 9.0, of course 💜

🔍 Which version of .NET will be used in samples?

We will work .NET 5, but mentioning possibilites to use presented C# 9 features on older frameworks.

🔍 When does the course begin and for how long does it last?

We plan to start the course in April 2021. Every week you will receive an access to the next week-unit. New material will be added every week to not overwhelm you and to allow all the group to get through it at the same time.

🔍 What is the format of that course?

It is a video course. Recordings are uploaded to the platform. After signing in with your login and password, you have an access to your account. Besides the recordings, the platform includes a forum, thanks to which you can communicate with an instructor and other participants. Links, password and login will be passed one week before the course begins.

🔍 How long will I have the access to the course?

You will receive life-long access to that edition of the course, including its updates.

🔍 What if I would not be satisfied with the course?

If you watch less than 30% of the course and decide that the course is not for you, you will receive a refund. You have 30 days to decide. Just write to [email protected], and we will return you 100% value.

🔍 Will I receive all the course material at once?

No. We add new materials each week to not overwhelm you and to keep the group pace at the same tempo.

🔍 Will I receive an invoice?

Yes, you will receive a VAT invoice with your purchase, if it applies. It will be sent to you within few days to the e-mail address provided during the order.

🔍 How can I pay for that course?

Payment is done with the use of our on-line shop. Each type of payment supported by it is ok for us.

🔍 Can I pay later, on installments, etc.?

No. During the pre-sale course is sold for the lowered price. If you can't pay now, joining later will be possible, however the course will cost more.

🔍 How many people can access one course account?

The access is given to one person, using an address provided during the purchase. If you are interested in buying more accesses please contact us using [email protected] e-mail address.

🔍 What if I have a problem with something or something is unclear?

Write to us with that e-mail address: [email protected]

Share!

If you think that C# 9.0 Professional is a nice dose of knowledge, share it with friends. Just use one of the buttons below!
Thank you!