Join Scott Hanselman and .NET Distinguished Engineer David Fowler as they teach us C# from the ground up! From Hello World to LINQ and more, Scott and David share C# lessons at a deep and leisurely pace. By the end you'll be ready to explore the Foundational C# Certification from FreeCodeCamp!
Full Series: YouTube link: https://aka.ms/dotnet/beginnervideos/youtube/csharp
Learn link: https://aka.ms/dotnet/beginnervideos/learn/csharp
Individual Video Links:
- What is C#
- Hello World!
- Basics of VS Code and the C# Dev Kit
- Hello World, Introducing Strings!
- The Basics of Strings
- Searching Strings
- Numbers, Integers, and Math
- Numbers, Precision, Casting, Doubles, and More
- Branching, Ifs, and Conditional Logic
- Branching and While Loops
- For Loops
- List and Collections of Data
- Arrays, Lists, Indexing, and Foreach
- Sorting and Searching Lists
- Language Integrated Query (LINQ) and IEnumerable
- LINQ Query Expressions From, Where, Orderby, and Select
- LINQ Method Syntax vs Query
- Object-oriented Programming (OOP)
- OOP with derived or abstract classes, overrides
In this video series, we will learn to program with C#.
Goal | Learn the foundations of C# |
---|---|
What will you learn | Language syntax, special characteristics, and Object Oriented Programming. |
What you'll need | VS Code, C# Dev Kit, .NET SDK |
Number of videos | 19 |
Follow along | Find the examples in the C# documentation |
YouTube link: https://aka.ms/dotnet/beginnervideos/youtube/csharp
Learn link: https://aka.ms/dotnet/beginnervideos/learn/csharp
- Foundational C# Certification with freeCodeCamp
- More .NET Beginner Series Videos
- .NET YouTube
- .NET on Twitter
What is C#? It is a powerful and widely used programming language that you can use to make anything from websites, games, mobile apps, to IoT apps, and more! In this video, Scott and David introduce what C# is and what you can build with it.
Learning the basics of C#? Let's make our first C# Hello World console application and run it in Visual Studio Code!
Scott and David introduce the Visual Studio Code editor. They show off the C# Dev Kit extension and some key features, like the Solution Explorer. They also explain what a C# project looks like and different ways that you can run and debug your C# projects.
Basics of VS Code and the C# Dev Kit
Scott and David continue exploring more C# learning materials and different ways to run your C# code. In this video, learn C# in your browser and in your local environment.
Hello World, Introducing Strings
What is a string? How are characters "strung" together to make a string in C# and .NET? In this video, Scott and David show you how to declare a string, concatenate strings, use string interpolation, and trim whitespace.
Let’s learn how to search for Strings. We will cover several string methods including Replace, Contains, ToUpper, Length, and give a brief description of how the compiler reads your C# code.
In this video, Scott and David discuss Numbers, different ways to store numbers, casting, and precision. They use integers, longs, and floating-point numbers to avoid overflow.
Scott and David continue their conversation of types and natural types with Doubles, Floats, and Decimals. They dive deep into numbers and precision with math in C# and the implications of storing numbers as different types.
Numbers, Precision, Casting, Doubles, and More
Let’s ask some questions! If this, then that. How do you branch and do that thing or this other thing with C#? Learn the basics of conditionals and introduce another type...Booleans! Plus, Scott and David cover the concept of "scope" within your code.
Branching, Ifs, and Conditional Logic
We did a thing one time, so let’s do it many times, in a loop! What are the different kinds of loops? Do, While, For, and Foreach. David and Scott will explore how to repeat statements many times with C# and .NET.
Let's learn about For Loops! These powerful structures may be intimidating at first, but David and Scott will show you how to harness this tool in your C# code.
In this video, learn about managing data collections using List. We have now used numbers and strings (in previous videos), but how are they stored? Let’s initialize a list, loop through the list, and explore these basic data structures in C# and .NET. Plus, get details about var and new.
David and Scott continue our conversation about Lists and another new topic, arrays! Learn about the similarities and differences between these structures and when to use each of them.
Arrays, Lists, Indexing, and Foreach
Once you have a list of something, how do we sort that list using C#? What does it mean to sort a list in-place? In this video we explain all about sorting lists.
Learn what LINQ is, how to define a query expression, and how LINQ makes it easy to query any data source. In doing so, Scott and David explore declarative programming and deferred execution.
Language Integrated Query (LINQ) and IEnumerable
In this video, Scott and David dive into query expression basics. Discover the tools you can use to query data to find, filter, sort, or analyze data sources. Along the way, leverage the syntax you learned from previous videos in the series.
LINQ Query Expressions From, Where, Orderby, and Select
Learn how LINQ composes queries written in multiple statements, or multiple methods, into a single query operation. In this video, examine another approach to writing LINQ queries. This feature will help you create more readable code without compromising runtime efficiency.
In this video, David and Scott explain how to model the world with Object Oriented Programming. Let's create person and pet objects, and declare what those people/pets will look like. Along the way, learn best practices on how to create your object.
Object-oriented Programming (OOP)
Let's dive deeper into Object Oriented Programming with our Person/Pet example. We currently have a Person class and a Pet Class. Scott and David build the blueprints to expand our Pet example with base classes, abstract classes, and derived classes.
OOP with derivated or abstract classes, overrides
Be sure to give feedback about this workshop!