Autoplay
Autocomplete
Previous Lesson
Complete and Continue
The Complete C# Masterclass
Introduction
Welcome and a brief Introduction to the Course (6:26)
Guide Lecture - How to install Visual Studio (3:26)
Guide Lecture - Creating a Project in Visual Studio (5:15)
Your First C# Program (4:29)
Primitive Data Types and Variables
What is a Variable and what is its relationship with the Data Types (14:30)
The "numbers" data type - Integers (11:42)
The "numbers with a decimal point" data types - Float, Double, Decimal (15:13)
The "Yes or No" data types - Booleans (6:53)
The "single symbol" data types - Characters (6:46)
The "information as text" data types - Strings (5:38)
Collections of Information from a specific data type - Arrays (14:25)
Some cool, useful tricks with Strings (10:53)
Transforming any data type into a string - allows you to use string methods (6:11)
The 3 different ways to build strings (11:18)
The 3 different ways to convert one data type to another (7:18)
Primitive Data Types - Source Code
Working with The Console
Write vs WriteLine, when to use which? (10:39)
Outputting special characters on the console - Escaping (10:58)
Formatting your console outputs - Alignments, Currency, Decimal Point and more (18:39)
Accepting single character inputs from the Console - Read method (5:12)
Accepting string inputs from the Console - ReadLine method (8:13)
Accepting inputs as keys from the Console - ReadKey (6:49)
Changing the color of the text and the background of the text in the Console (13:43)
Changing cursor settings in the Console - Size, Visibility, Position (7:01)
Controlling the size of the Console window - WindowSize, BufferSize and more (12:34)
Working with The Console - Source Code
Operators and Expressions
Arithmetic Operators - Perform mathematical operations with C# (18:10)
Assignment Operators - Just a shortcut for some of the arithmetic operators (3:45)
Comparison Operators - Your first logical operators (7:29)
THE Logical Operators and their use as conditions (22:20)
Ternary Operator - The most basic conditional statement (7:36)
Operators and Expressions - Source Code
Conditional Statements - Flow Control
If "true" do this, else if "false" do that (9:52)
Practicing the If/Else Conditional Statement (17:50)
The "else if" conditional statement - adding more conditions (12:15)
Practicing the "else if" conditional statement (13:42)
Nested Conditional Statements (14:42)
The "switch" statement and how does it exactly work (14:39)
Conditional Statements - Source Code
Loops - The backbone of every single software
Introduction to Loops - What is a loop? (7:53)
Practicing the "while" loops (20:55)
The Do-While loop and the difference with while loop (3:11)
The "for" loops and their common uses (10:45)
Practicing the "for" loops (24:35)
The "foreach" loop - a derivation of the "for" loop for specific scenarios (4:00)
Nested loops (7:02)
Practicing nested loops (12:53)
Loops - Source Code
Methods
Introduction to Methods - Your First Method (7:03)
Methods that do not return values - Void (9:00)
Methods that do return values - Data Types (11:04)
Overloading methods - Different variations of the same method (14:54)
Methods with variable number of arguments (19:08)
Methods with optional number of arguments (7:34)
Reference and Value types in C# (9:00)
Methods with Ref and Out arguments (9:19)
Methods - Source Code
One Dimensional Arrays and Lists - Collections of Data
Introduction to One Dimensional Arrays (16:15)
Outputting Arrays (27:25)
Correctly Cloning Arrays (10:47)
Reversing Arrays (11:06)
Algorithm: Bubble sort sorting algorithm (13:34)
Algorithm: Selection sort sorting algortihm (12:15)
Algorithm: Binary search algorithm (18:48)
Checking an array for symmetry (8:13)
Introduction to Lists and how do they differ from arrays (11:44)
Practicing working with Lists (17:50)
Arrays - Source Code
Multidimensional Arrays
Introduction to Multidimensional Arrays (25:42)
Practicing working with Multidimensional Arrays (17:59)
Outputting Matrices in different patterns (23:00)
Generating a randomized RGB Image - 3 dimensional array (28:31)
Multidimensional Arrays - Source Code
Strings Processing
Splitting strings by different characters or strings (21:01)
Trimming strings from unwanted white space or other characters (23:19)
Extracting substrings from a string (31:08)
Removing substrings from a string (12:34)
Replacing substrings from a string (15:23)
Building strings THOUSANDS of times faster! (13:10)
Strings - Source Code
Exceptions Handling
Introduction to Exceptions Handling - No more exceptions! (7:07)
Catching Multiple Exceptions (5:57)
Using the catched exception as a variable to obtain its information (6:27)
The "finally" block and a real-world scenario (7:56)
Discussion - Try/Catch vs If/Else when to use which? (6:51)
Exceptions - Source Code
The Building Blocks of a Class
Introduction to Object Oriented Programming (5:12)
Creating a Basic Class (15:43)
Fields and Properties - The Variables of a Class (11:20)
Methods - The Actions of a Class (9:50)
Constructors - The Builders of a Class (6:58)
Namespaces and Files - Structuring your project (11:32)
Fields and Properties
Enveloping Fields with Properties to protect them (13:51)
Controlling the Accessors of a Property - Read, Write and Read-Write Properties (4:07)
Implementing Validation in Properties (10:35)
Validation and Exceptions (7:39)
Properties and Fields - When to use which (5:28)
Constructors
The THIS keyword - What is it? When to use it? How to use it? (10:59)
Building a Class from scratch (10:34)
Multiple Constructors in a Class (6:31)
Chaining Multiple Constructors to reduce code (11:39)
Access Modifiers
The public and private Access Modifiers (2:35)
The internal and protected Access Modifiers (5:17)
Static
Static Fields and Properties (9:42)
The two types of Constants in C# - const and readonly (14:53)
Static Methods (6:25)
Static Classes (7:21)
Enumerations - Limiting the input choices! (11:45)
Inheritance - The First Pillar of Object Oriented Programming
Introduction to Inheritance - Eliminating Redundant Code (22:21)
Constructors in Inheriting Classes (15:51)
The "base" keyword vs the "this" keyword (6:02)
Virtual Methods and Properties (9:50)
Is-A and Has-A Relationships (1:34)
Abstraction & Encapsulation - The Second and Third Pillars
Abstraction - The Second Pillar of Object Oriented Programming (5:11)
What is an Interface? (11:40)
Interface Example (4:35)
Abstract Classes, Abstract Methods and the difference with Interfaces (7:04)
Encapsulation - The Third Pillar of Object Oriented Programming (2:26)
Polymorphism - The Fourth Pillar of Object Oriented Programming
Introduction to Polymorphism (4:29)
Collections of Different Types (4:38)
Collection of Different Types by an Interface (5:18)
Implementing Polymorphism in the Project (10:27)
Final Quality Code Guidelines (6:02)
Finishing The Project
Initializing our Characters (6:28)
Creating the Game Logic Algorithm (3:39)
Decoupling The Classes (8:04)
Implementing the Character Abilities (5:59)
Implementing the Game Logic (9:53)
Dedicated Constants File (6:48)
A utility static class - Tools (3:02)
Magic Destroyers Source Code
Final Quality Code Guidelines
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock