Learn C# with Visual Studio 2017 and Console Programs

  • Course provided by Udemy
  • Study type: Online
  • Starts: Anytime
  • Price: See latest price on Udemy
Udemy

Course Description

Very Important:

1. Friends, please take the time to review the curriculum carefully before buying so you can see exactly whether this is the right course for you. Please do not join until you have completed this step.

2. Please watch the free preview videos so you can see whether the presentation style works for you. Please remember I am just one person, and I make my videos often after I have been working for many hours already. PLease do not join until you have completed this step.

3. If something needs fixing, please let me know. Again, I'm just one person and not a big team of people. I will try to fix it as quickly as possible. Thank you.


Course Overview:

1. This course consists of standalone examples designed to illustrate specific skills. There are no big applications built in this course.

2. You must use Visual Studio 2017 to be sure you have the latest version of C# running. Lower versions of Visual Studio will cause errors because newer programming elements will not be found.

3. This is a beginners course, but I do not spare the details, even when they are very technical. This means in a few videos I show you the .NET Framework source code. I do this because it's important to look at things as they actually are, and not at an artificially simplified perspective.

4. I talk fairly slowly in some of the videos.

5. If you feel the way I talk is too slow for you, please watch at 1.25x, which you can set easily on the player.

6. I made the videos in 1080p HD. If you have trouble with the resolution, please try reloading the page a few times.

7. This course covers C# through console programs only. It does not have ASP.NET, Windows Forms, MVC, .NET Core or anything like that.

8. There are questions throughout the videos. At those times, please pause and try answering them. Success invariably results from understanding how the many small and intricate pieces of anything fit together. This takes time, consistent effort and a willing to push yourself. Success is the result of a whole-hearted effort, exerted daily and consistently. This is what years of struggle have taught me:)

9. The videos are just coding videos done in Visual Studio Community 2017. This is the free version of Visual Studio.

10. This is a course dedicated to code only, so you do not see any of the following: a talking head, PowerPoints or fancy graphics. To me, these are distractions that shift focus away from the things that truly matter.


11. Exercises start in video two. I have overlays embedded that say "Pause and try this: ...", with the specific question in place of the ellipses.

12. In some of the videos, there are several questions because I guide you through building a bigger piece of code.

13. Some of the videos don't have any questions.

14. All the code is written from scratch in the code editor window in Visual Studio Community 2017.

15. In some of the videos, I use the debugger to step through the code, line by line, and intricate detail by intricate detail.

16. I talk frequently about reading the various tips that show as you type in Visual Studio. You must learn how to read them because they provide valuable information.

17. In some of the videos, I show you how C# looks in your computer memory. You must look at the memory of your computer to truly understand what's happening. Just reading messages in the console window is not the same as truly understanding what they mean.

18. In some of the videos, I zoom in on various things I feel need special attention.

19. For the hearing-impaired, closed-captions are added automatically. I do not have control over those, so they might not be perfect.

On a personal note, I can tell you only that it is through consistent, WHOLE-HEARTED effort, that something technical like a programming language can be learned. That's what I have learned from years of struggling. I would urge you to embrace this philosophy because it's a very powerful. I hope you will find great value in this course. Thank you for reading, and I will see you inside!
Tom


Who this course is for:

  • People who are interested in C# should take this course.
  • People who are new to C# should take this course.
  • People who feel it's valuable to pause at times and try an assignment or a mental exercise before continuing.
  • People who understand that the average video length is about 7 minutes should join.
  • People who like fast talking should not join.
  • The vast majority of the examples are standalone.
  • When I say beginner, I don't mean that in an overly simplified sense.

Instructor

Spreader of Knowledge
  • 4.4 Instructor Rating
  • 6,259 Reviews
  • 40,619 Students
  • 26 Courses

I love computers , math and programming.

I teach because it gives me great joy to understand things deeply and to share that knowledge with others.


My education:

1. Master's degree in Statistical Computing

2. BA in mathematics


3. Professional development certificates from Microsoft in each area below:

1. Deep learning with Python

2. Introduction to Artificial intelligence

3. Data science with Python

4. Math for machine learning

5. Data science research methods with Python


4. Professional certificates from other schools:

1. Columbia university certificate in introduction to corporate finance

2. MIT certificate in introductory economics

Expected Outcomes

  1. Find, download and install Visual Studio 2017 Community Describe a console window Create and run a simple c# program Describe the purpose of the Console class Understand how to use class methods Understand the concept of a method as a behavior or an action that can be performed Describe the purpose of the .NET Framework library Use the object explorer in Visual Studio Describe the concept of a class member Describe the purpose of the dot member access notation Explain what it means to call or invoke a method Give examples of method arguments Define the concept of a string in C# Understand the concept of a data type Understand the consequences of data casts Describe how string interpolation works Describe the purpose of the .NET Framework Understand how to use the debugger Understand how to use the locals window Understand how to use the call stack window Describe how to use implicit methods Understand the difference between parameters and arguments Understand the meaning of the word public Describe how to use a name space, class name and method name using dot notation Understand how to use the Concat method Understand how to ensure that data types do not clash Describe an example of when an implicit data cast is safe Understand the consequences of making one change and ensuring that the code is properly fixed Understand how to use Visual Studio tool tips to help with resolving error messages Understand where to find the object explorer and how to find class details using the defintion Understand how to read /write numeric values Understand how to nest methods Understand how to decipher error messages and trace them through the .NET Framework Understand how to use properties Understand the concept of an enumeration and how to use it Understand the concept of a logical condition Understand how to make decisions with logical conditions Understand how to use methods with if/else Understand how to use ++x, x++, x+=2 and other compound operators Understand the motivation for while loops Understand how a while loop actually operates Understand the motivation for a for loops Understand how to create a variety of for loops Understand how strings behave in memory Understand the mechanical execution aspect of a loop Understand how to use for each loops Understand how to nest if inside loops Understand how to use linq methods like sum, average, min and max Understand how to use the ForEach method on lists Understand the concept of a generic list Understand how to combine try parse, while, and lists Understand the operation of a basic ternary operator Understand how the ternary operator can be used with method calls Understand how you can rewrite more condensed code from long-winded code Understand how to control the header of a for loop and how to change it meaningfully and with control Describe why switch blocks are needed Explain how switch blocks operate Understand how C# handles division by zero Understand why and how to put code under switch block case labels Understand how to use the logical and operator with simple values Understand how to use the logical and operator with methods Understand how the logical and operator executes, step by step and how it short-circuits Understand the prototypical operation of the basic or logical operator Understand how to use the logical or operator in an application Understand how to use while(true) (infinite loop), break and key inputs like the Escape key Understand how to create methods with void return types Understand how to create methods that return a value Describe the concept of matching data types when methods are created Describe the concept of the call stack and how methods load and unload from memory Understand how parameters function as local variables in methods and where parameters can and cannot be reached Understand how to use modern C# switch blocks Use methods from the Math class like DivRem Understand the difference between % and / in the context of integer division Understand how and why to use try/catch blocks Understand the concept of a null-reference exception Understand how to catch null reference exceptions Understand how to use the word null in logical comparisons Understand how to create and use a method with a string parameter/ return data type Understand how to use hard coded values to understand the operation of if/else blocks better Understand how to call a method with a null value and how to protect against the consequences Understand how to create a method with a List<double> parameter Understand how to return an IEnumerable<int> from a method Understand how to call methods in a variety of positions in the code, including foreach loops Describe how to create an array Describe how to read a value from an array using array access notation Describe how to assign values to an array using array access notation Understand how to use the params keyword in method headers Understand how to use a foreach loops to produce a sum of values inside a method Understand how to use a foreach loop to produce a product of values inside a method Explain the meaning of a reference variable in the context of arrays Explain the meaning of a reference variable in the context of lists Understand how to create an array using a for loop Understand how to read an array using a foreach loop Understand how to print an array backwards using a for loop Understand how to define an array of arrays (two dimensional case) Describe why two for loops are needed to print the entries of a two dimensional array Understand how to code up the data types needed in nested foreach loops Understand how reference types like arrays and lists behave in memory Understand how to set the value of a two-dimensional array using for loops Understand how to create a jagged array Understand how to display the value of a jagged array Show more Show less Course content 7 sections • 89 lectures • 9h 29m total length Expand all sections Get the Tools 1 lecture • 4min Find, download and install Visual Studio 2017 Community Preview 03:48 Understand the Supporting Fundamentals 5 lectures • 33min Create your first executable file Preview 07:37 Print one line of output 04:24 Dig into the Console class 08:03 What is the .NET Framework? 09:04 Using directives 03:56 Create Programs 15 lectures • 1hr 46min Use one variable to represent a changing quantity 07:42 Understand the consequences of a data type 04:43 Describe an object with multiple data types 07:36 Print multiple variable values 08:38 Use the debugger, part 1 06:29 Use the debugger, part 2 05:26 Perform simple calculations, part 1 07:59 Perform simple calculations, part 2 05:18 Accept string input and produce string output 05:45 Use the Concat method from the String class 09:44 Accept numeric input and produce numeric output, part 1 07:03 Numeric input/output, part 2 07:22 Decipher an error message 05:15 Understand the concept of method chaining 07:44 Understand and use basic properties 09:25 Program Flow 29 lectures • 3hr 1min Understand the concept of a logical condition 08:54 Understand a simple if/else condition check 06:06 Use a sequence of if/else checks 05:06 Understand how to use the debugger with if/else 01:50 Use if/else with a method 07:07 Write more stable code with TryParse, part 1 05:51 Write more stable code with TryParse, part 2 03:25 Using TryParse, part 3 11:34 Understand compound operators 08:13 Create and run a while loop, part 1 06:42 Create and run a while loop, part 2 05:42 Exiting from while loops, part 3 11:07 Create and run a for loop, part 1 06:10 Create and run a for loop, part 2 05:23 Adjusting indexes in for loops, part 3 05:26 Strings as indexed constructs 06:56 Strings with for loops 08:44 Nest an if/else inside a for loop 08:18 Understand string behavior in memory 03:45 Execution mechanics of a for loop 02:26 Linq basics, part 1 07:56 Lists with ForEach 07:22 While with TryParse 07:35 Ternary operator with numbers, part 1 05:11 Ternary operator with methods, part 2 04:08 Rewrite code so it's more compact 04:32 Switch blocks, part 1 06:55 Switch blocks, part 2 01:50 Switch blocks, part 3 07:10 Logical Operators 5 lectures • 37min Decide on two conditions with "and", part 1 05:15 Decide on two logical conditions with "and", part 3 05:35 TryParse with while, "and", break and continue 10:28 Decide on two or more conditions with or 05:46 Use multiple "ors" with foreach 09:30 Methods 18 lectures • 1hr 48min Create a void method 06:54 Get/Set of properties 02:57 Create a method with one parameter and a return value 06:48 Understand the call stack and parameters as local variables 04:07 Understand the concept of block methods and expression body methods 02:09 Create a method with two parameters and one return value, part 1 05:19 Create a method with two parameters, part 2 07:48 Using modern switch blocks 08:48 Methods that crash, part 1 07:30 Methods that crash, part 2 06:34 Try/Catch challenge with solution 03:56 Nulls with strings and try /catch 07:11 Create a method with a string parameter and return type 07:50 Change DivRem so it doesn't crash 04:29 Create a method with a tuple return value, part 1 05:59 Methods that return a tuple, part 2 06:19 Method with a List<int> parameter that returns an IEnumerable<int>, part 1 06:45 Method with a List<int> parameter that returns an IEnumerable<int>, part 2 06:15 Arrays 16 lectures • 1hr 41min Understand the concept of an index for arrays 08:36 Create a more flexible method with the Params keyword 05:06 Params method with multiplication challenge 05:15 Split method from string class 06:48 Arrays and lists are reference types 06:00 Passing by reference vs. passing by value, part 1 07:19 Passing by reference and value, part 2 03:49 Step through an array with a for loop 08:55 Difference in memory between strings and other types like integers, decimals 04:59 Define a two-dimensional array with manual indexes 08:35 Extend the size of a multidimensional array 03:54 Multidimensional arrays with methods 06:56 Fill a two-dimensional array with a for loops 09:55 Print a multidimensional array 04:35 Create and print jagged arrays 10:21 Thank you for watching! 00:08 Requirements Students MUST use at least the version of Visual Studio Community 2017 described in the first, free preview video. Description Very Important: 1. Friends, please take the time to review the curriculum carefully before buying so you can see exactly whether this is the right course for you. Please do not join until you have completed this step. 2. Please watch the free preview videos so you can see whether the presentation style works for you. Please remember I am just one person, and I make my videos often after I have been working for many hours already. PLease do not join until you have completed this step. 3. If something needs fixing, please let me know. Again, I'm just one person and not a big team of people. I will try to fix it as quickly as possible. Thank you. Course Overview: 1. This course consists of standalone examples designed to illustrate specific skills. There are no big applications built in this course. 2. You must use Visual Studio 2017 to be sure you have the latest version of C# running. Lower versions of Visual Studio will cause errors because newer programming elements will not be found. 3. This is a beginners course, but I do not spare the details, even when they are very technical. This means in a few videos I show you the .NET Framework source code. I do this because it's important to look at things as they actually are, and not at an artificially simplified perspective. 4. I talk fairly slowly in some of the videos. 5. If you feel the way I talk is too slow for you, please watch at 1.25x, which you can set easily on the player. 6. I made the videos in 1080p HD. If you have trouble with the resolution, please try reloading the page a few times. 7. This course covers C# through console programs only. It does not have ASP.NET, Windows Forms, MVC, .NET Core or anything like that. 8. There are questions throughout the videos. At those times, please pause and try answering them. Success invariably results from understanding how the many small and intricate pieces of anything fit together. This takes time, consistent effort and a willing to push yourself. Success is the result of a whole-hearted effort, exerted daily and consistently. This is what years of struggle have taught me:) 9. The videos are just coding videos done in Visual Studio Community 2017. This is the free version of Visual Studio. 10. This is a course dedicated to code only, so you do not see any of the following: a talking head, PowerPoints or fancy graphics. To me, these are distractions that shift focus away from the things that truly matter. 11. Exercises start in video two. I have overlays embedded that say "Pause and try this: ...", with the specific question in place of the ellipses. 12. In some of the videos, there are several questions because I guide you through building a bigger piece of code. 13. Some of the videos don't have any questions. 14. All the code is written from scratch in the code editor window in Visual Studio Community 2017. 15. In some of the videos, I use the debugger to step through the code, line by line, and intricate detail by intricate detail. 16. I talk frequently about reading the various tips that show as you type in Visual Studio. You must learn how to read them because they provide valuable information. 17. In some of the videos, I show you how C# looks in your computer memory. You must look at the memory of your computer to truly understand what's happening. Just reading messages in the console window is not the same as truly understanding what they mean. 18. In some of the videos, I zoom in on various things I feel need special attention. 19. For the hearing-impaired, closed-captions are added automatically. I do not have control over those, so they might not be perfect. On a personal note, I can tell you only that it is through consistent, WHOLE-HEARTED effort, that something technical like a programming language can be learned. That's what I have learned from years of struggling. I would urge you to embrace this philosophy because it's a very powerful. I hope you will find great value in this course. Thank you for reading, and I will see you inside! Tom Who this course is for: People who are interested in C# should take this course. People who are new to C# should take this course. People who feel it's valuable to pause at times and try an assignment or a mental exercise before continuing. People who understand that the average video length is about 7 minutes should join. People who like fast talking should not join. The vast majority of the examples are standalone. When I say beginner, I don't mean that in an overly simplified sense. Show more Show less Instructor A O Spreader of Knowledge 4.4 Instructor Rating 6,259 Reviews 40,619 Students 26 Courses I love computers , math and programming. I teach because it gives me great joy to understand things deeply and to share that knowledge with others. My education: 1. Master's degree in Statistical Computing 2. BA in mathematics 3. Professional development certificates from Microsoft in each area below: 1. Deep learning with Python 2. Introduction to Artificial intelligence 3. Data science with Python 4. Math for machine learning 5. Data science research methods with Python 4. Professional certificates from other schools: 1. Columbia university certificate in introduction to corporate finance 2. MIT certificate in introductory economics Show more Show less Udemy Business Teach on Udemy Get the app About us Contact us Careers Blog Help and Support Affiliate Impressum Kontakt Terms Privacy policy Cookie settings Sitemap © 2021 Udemy, Inc. window.handleCSSToggleButtonClick = function (event) { var target = event.currentTarget; var cssToggleId = target && target.dataset && target.dataset.cssToggleId; var input = cssToggleId && document.getElementById(cssToggleId); if (input) { if (input.dataset.type === 'checkbox') { input.dataset.checked = input.dataset.checked ? '' : 'checked'; } else { input.dataset.checked = input.dataset.allowToggle && input.dataset.checked ? '' : 'checked'; var radios = document.querySelectorAll('[name="' + input.dataset.name + '"]'); for (var i = 0; i (function(){window['__CF$cv$params']={r:'6778ca475ff240f5',m:'0bef3e8b972ea426d9ba5d7b6222e110fcfd191b-1627755097-1800-ARrMCVYiJVTBMunhiDeqW298WCBkfQECuqZCzy9TDzGpW7fhbamwRCsZ+Y9PvXWi+d3Ch05NvOljPR7m/Ah/+4nhk3nevCnJ1rdTO91fmnfvoElg/xU2BJEmREXZiUWLkvBnzwWzCx1pPKJwU4sY0HU=',s:[0xdda8a03d29,0xff149613d5],}})();
  2. Describe a console window Create and run a simple c# program Describe the purpose of the Console class Understand how to use class methods Understand the concept of a method as a behavior or an action that can be performed Describe the purpose of the .NET Framework library Use the object explorer in Visual Studio Describe the concept of a class member Describe the purpose of the dot member access notation Explain what it means to call or invoke a method Give examples of method arguments Define the concept of a string in C# Understand the concept of a data type Understand the consequences of data casts Describe how string interpolation works Describe the purpose of the .NET Framework Understand how to use the debugger Understand how to use the locals window Understand how to use the call stack window Describe how to use implicit methods Understand the difference between parameters and arguments Understand the meaning of the word public Describe how to use a name space, class name and method name using dot notation Understand how to use the Concat method Understand how to ensure that data types do not clash Describe an example of when an implicit data cast is safe Understand the consequences of making one change and ensuring that the code is properly fixed Understand how to use Visual Studio tool tips to help with resolving error messages Understand where to find the object explorer and how to find class details using the defintion Understand how to read /write numeric values Understand how to nest methods Understand how to decipher error messages and trace them through the .NET Framework Understand how to use properties Understand the concept of an enumeration and how to use it Understand the concept of a logical condition Understand how to make decisions with logical conditions Understand how to use methods with if/else Understand how to use ++x, x++, x+=2 and other compound operators Understand the motivation for while loops Understand how a while loop actually operates Understand the motivation for a for loops Understand how to create a variety of for loops Understand how strings behave in memory Understand the mechanical execution aspect of a loop Understand how to use for each loops Understand how to nest if inside loops Understand how to use linq methods like sum, average, min and max Understand how to use the ForEach method on lists Understand the concept of a generic list Understand how to combine try parse, while, and lists Understand the operation of a basic ternary operator Understand how the ternary operator can be used with method calls Understand how you can rewrite more condensed code from long-winded code Understand how to control the header of a for loop and how to change it meaningfully and with control Describe why switch blocks are needed Explain how switch blocks operate Understand how C# handles division by zero Understand why and how to put code under switch block case labels Understand how to use the logical and operator with simple values Understand how to use the logical and operator with methods Understand how the logical and operator executes, step by step and how it short-circuits Understand the prototypical operation of the basic or logical operator Understand how to use the logical or operator in an application Understand how to use while(true) (infinite loop), break and key inputs like the Escape key Understand how to create methods with void return types Understand how to create methods that return a value Describe the concept of matching data types when methods are created Describe the concept of the call stack and how methods load and unload from memory Understand how parameters function as local variables in methods and where parameters can and cannot be reached Understand how to use modern C# switch blocks Use methods from the Math class like DivRem Understand the difference between % and / in the context of integer division Understand how and why to use try/catch blocks Understand the concept of a null-reference exception Understand how to catch null reference exceptions Understand how to use the word null in logical comparisons Understand how to create and use a method with a string parameter/ return data type Understand how to use hard coded values to understand the operation of if/else blocks better Understand how to call a method with a null value and how to protect against the consequences Understand how to create a method with a List<double> parameter Understand how to return an IEnumerable<int> from a method Understand how to call methods in a variety of positions in the code, including foreach loops Describe how to create an array Describe how to read a value from an array using array access notation Describe how to assign values to an array using array access notation Understand how to use the params keyword in method headers Understand how to use a foreach loops to produce a sum of values inside a method Understand how to use a foreach loop to produce a product of values inside a method Explain the meaning of a reference variable in the context of arrays Explain the meaning of a reference variable in the context of lists Understand how to create an array using a for loop Understand how to read an array using a foreach loop Understand how to print an array backwards using a for loop Understand how to define an array of arrays (two dimensional case) Describe why two for loops are needed to print the entries of a two dimensional array Understand how to code up the data types needed in nested foreach loops Understand how reference types like arrays and lists behave in memory Understand how to set the value of a two-dimensional array using for loops Understand how to create a jagged array Understand how to display the value of a jagged array Show more Show less Course content 7 sections • 89 lectures • 9h 29m total length Expand all sections Get the Tools 1 lecture • 4min Find, download and install Visual Studio 2017 Community Preview 03:48 Understand the Supporting Fundamentals 5 lectures • 33min Create your first executable file Preview 07:37 Print one line of output 04:24 Dig into the Console class 08:03 What is the .NET Framework? 09:04 Using directives 03:56 Create Programs 15 lectures • 1hr 46min Use one variable to represent a changing quantity 07:42 Understand the consequences of a data type 04:43 Describe an object with multiple data types 07:36 Print multiple variable values 08:38 Use the debugger, part 1 06:29 Use the debugger, part 2 05:26 Perform simple calculations, part 1 07:59 Perform simple calculations, part 2 05:18 Accept string input and produce string output 05:45 Use the Concat method from the String class 09:44 Accept numeric input and produce numeric output, part 1 07:03 Numeric input/output, part 2 07:22 Decipher an error message 05:15 Understand the concept of method chaining 07:44 Understand and use basic properties 09:25 Program Flow 29 lectures • 3hr 1min Understand the concept of a logical condition 08:54 Understand a simple if/else condition check 06:06 Use a sequence of if/else checks 05:06 Understand how to use the debugger with if/else 01:50 Use if/else with a method 07:07 Write more stable code with TryParse, part 1 05:51 Write more stable code with TryParse, part 2 03:25 Using TryParse, part 3 11:34 Understand compound operators 08:13 Create and run a while loop, part 1 06:42 Create and run a while loop, part 2 05:42 Exiting from while loops, part 3 11:07 Create and run a for loop, part 1 06:10 Create and run a for loop, part 2 05:23 Adjusting indexes in for loops, part 3 05:26 Strings as indexed constructs 06:56 Strings with for loops 08:44 Nest an if/else inside a for loop 08:18 Understand string behavior in memory 03:45 Execution mechanics of a for loop 02:26 Linq basics, part 1 07:56 Lists with ForEach 07:22 While with TryParse 07:35 Ternary operator with numbers, part 1 05:11 Ternary operator with methods, part 2 04:08 Rewrite code so it's more compact 04:32 Switch blocks, part 1 06:55 Switch blocks, part 2 01:50 Switch blocks, part 3 07:10 Logical Operators 5 lectures • 37min Decide on two conditions with "and", part 1 05:15 Decide on two logical conditions with "and", part 3 05:35 TryParse with while, "and", break and continue 10:28 Decide on two or more conditions with or 05:46 Use multiple "ors" with foreach 09:30 Methods 18 lectures • 1hr 48min Create a void method 06:54 Get/Set of properties 02:57 Create a method with one parameter and a return value 06:48 Understand the call stack and parameters as local variables 04:07 Understand the concept of block methods and expression body methods 02:09 Create a method with two parameters and one return value, part 1 05:19 Create a method with two parameters, part 2 07:48 Using modern switch blocks 08:48 Methods that crash, part 1 07:30 Methods that crash, part 2 06:34 Try/Catch challenge with solution 03:56 Nulls with strings and try /catch 07:11 Create a method with a string parameter and return type 07:50 Change DivRem so it doesn't crash 04:29 Create a method with a tuple return value, part 1 05:59 Methods that return a tuple, part 2 06:19 Method with a List<int> parameter that returns an IEnumerable<int>, part 1 06:45 Method with a List<int> parameter that returns an IEnumerable<int>, part 2 06:15 Arrays 16 lectures • 1hr 41min Understand the concept of an index for arrays 08:36 Create a more flexible method with the Params keyword 05:06 Params method with multiplication challenge 05:15 Split method from string class 06:48 Arrays and lists are reference types 06:00 Passing by reference vs. passing by value, part 1 07:19 Passing by reference and value, part 2 03:49 Step through an array with a for loop 08:55 Difference in memory between strings and other types like integers, decimals 04:59 Define a two-dimensional array with manual indexes 08:35 Extend the size of a multidimensional array 03:54 Multidimensional arrays with methods 06:56 Fill a two-dimensional array with a for loops 09:55 Print a multidimensional array 04:35 Create and print jagged arrays 10:21 Thank you for watching! 00:08 Requirements Students MUST use at least the version of Visual Studio Community 2017 described in the first, free preview video. Description Very Important: 1. Friends, please take the time to review the curriculum carefully before buying so you can see exactly whether this is the right course for you. Please do not join until you have completed this step. 2. Please watch the free preview videos so you can see whether the presentation style works for you. Please remember I am just one person, and I make my videos often after I have been working for many hours already. PLease do not join until you have completed this step. 3. If something needs fixing, please let me know. Again, I'm just one person and not a big team of people. I will try to fix it as quickly as possible. Thank you. Course Overview: 1. This course consists of standalone examples designed to illustrate specific skills. There are no big applications built in this course. 2. You must use Visual Studio 2017 to be sure you have the latest version of C# running. Lower versions of Visual Studio will cause errors because newer programming elements will not be found. 3. This is a beginners course, but I do not spare the details, even when they are very technical. This means in a few videos I show you the .NET Framework source code. I do this because it's important to look at things as they actually are, and not at an artificially simplified perspective. 4. I talk fairly slowly in some of the videos. 5. If you feel the way I talk is too slow for you, please watch at 1.25x, which you can set easily on the player. 6. I made the videos in 1080p HD. If you have trouble with the resolution, please try reloading the page a few times. 7. This course covers C# through console programs only. It does not have ASP.NET, Windows Forms, MVC, .NET Core or anything like that. 8. There are questions throughout the videos. At those times, please pause and try answering them. Success invariably results from understanding how the many small and intricate pieces of anything fit together. This takes time, consistent effort and a willing to push yourself. Success is the result of a whole-hearted effort, exerted daily and consistently. This is what years of struggle have taught me:) 9. The videos are just coding videos done in Visual Studio Community 2017. This is the free version of Visual Studio. 10. This is a course dedicated to code only, so you do not see any of the following: a talking head, PowerPoints or fancy graphics. To me, these are distractions that shift focus away from the things that truly matter. 11. Exercises start in video two. I have overlays embedded that say "Pause and try this: ...", with the specific question in place of the ellipses. 12. In some of the videos, there are several questions because I guide you through building a bigger piece of code. 13. Some of the videos don't have any questions. 14. All the code is written from scratch in the code editor window in Visual Studio Community 2017. 15. In some of the videos, I use the debugger to step through the code, line by line, and intricate detail by intricate detail. 16. I talk frequently about reading the various tips that show as you type in Visual Studio. You must learn how to read them because they provide valuable information. 17. In some of the videos, I show you how C# looks in your computer memory. You must look at the memory of your computer to truly understand what's happening. Just reading messages in the console window is not the same as truly understanding what they mean. 18. In some of the videos, I zoom in on various things I feel need special attention. 19. For the hearing-impaired, closed-captions are added automatically. I do not have control over those, so they might not be perfect. On a personal note, I can tell you only that it is through consistent, WHOLE-HEARTED effort, that something technical like a programming language can be learned. That's what I have learned from years of struggling. I would urge you to embrace this philosophy because it's a very powerful. I hope you will find great value in this course. Thank you for reading, and I will see you inside! Tom Who this course is for: People who are interested in C# should take this course. People who are new to C# should take this course. People who feel it's valuable to pause at times and try an assignment or a mental exercise before continuing. People who understand that the average video length is about 7 minutes should join. People who like fast talking should not join. The vast majority of the examples are standalone. When I say beginner, I don't mean that in an overly simplified sense. Show more Show less Instructor A O Spreader of Knowledge 4.4 Instructor Rating 6,259 Reviews 40,619 Students 26 Courses I love computers , math and programming. I teach because it gives me great joy to understand things deeply and to share that knowledge with others. My education: 1. Master's degree in Statistical Computing 2. BA in mathematics 3. Professional development certificates from Microsoft in each area below: 1. Deep learning with Python 2. Introduction to Artificial intelligence 3. Data science with Python 4. Math for machine learning 5. Data science research methods with Python 4. Professional certificates from other schools: 1. Columbia university certificate in introduction to corporate finance 2. MIT certificate in introductory economics Show more Show less Udemy Business Teach on Udemy Get the app About us Contact us Careers Blog Help and Support Affiliate Impressum Kontakt Terms Privacy policy Cookie settings Sitemap © 2021 Udemy, Inc. window.handleCSSToggleButtonClick = function (event) { var target = event.currentTarget; var cssToggleId = target && target.dataset && target.dataset.cssToggleId; var input = cssToggleId && document.getElementById(cssToggleId); if (input) { if (input.dataset.type === 'checkbox') { input.dataset.checked = input.dataset.checked ? '' : 'checked'; } else { input.dataset.checked = input.dataset.allowToggle && input.dataset.checked ? '' : 'checked'; var radios = document.querySelectorAll('[name="' + input.dataset.name + '"]'); for (var i = 0; i (function(){window['__CF$cv$params']={r:'6778ca475ff240f5',m:'0bef3e8b972ea426d9ba5d7b6222e110fcfd191b-1627755097-1800-ARrMCVYiJVTBMunhiDeqW298WCBkfQECuqZCzy9TDzGpW7fhbamwRCsZ+Y9PvXWi+d3Ch05NvOljPR7m/Ah/+4nhk3nevCnJ1rdTO91fmnfvoElg/xU2BJEmREXZiUWLkvBnzwWzCx1pPKJwU4sY0HU=',s:[0xdda8a03d29,0xff149613d5],}})();
  3. Create and run a simple c# program Describe the purpose of the Console class Understand how to use class methods Understand the concept of a method as a behavior or an action that can be performed Describe the purpose of the .NET Framework library Use the object explorer in Visual Studio Describe the concept of a class member Describe the purpose of the dot member access notation Explain what it means to call or invoke a method Give examples of method arguments Define the concept of a string in C# Understand the concept of a data type Understand the consequences of data casts Describe how string interpolation works Describe the purpose of the .NET Framework Understand how to use the debugger Understand how to use the locals window Understand how to use the call stack window Describe how to use implicit methods Understand the difference between parameters and arguments Understand the meaning of the word public Describe how to use a name space, class name and method name using dot notation Understand how to use the Concat method Understand how to ensure that data types do not clash Describe an example of when an implicit data cast is safe Understand the consequences of making one change and ensuring that the code is properly fixed Understand how to use Visual Studio tool tips to help with resolving error messages Understand where to find the object explorer and how to find class details using the defintion Understand how to read /write numeric values Understand how to nest methods Understand how to decipher error messages and trace them through the .NET Framework Understand how to use properties Understand the concept of an enumeration and how to use it Understand the concept of a logical condition Understand how to make decisions with logical conditions Understand how to use methods with if/else Understand how to use ++x, x++, x+=2 and other compound operators Understand the motivation for while loops Understand how a while loop actually operates Understand the motivation for a for loops Understand how to create a variety of for loops Understand how strings behave in memory Understand the mechanical execution aspect of a loop Understand how to use for each loops Understand how to nest if inside loops Understand how to use linq methods like sum, average, min and max Understand how to use the ForEach method on lists Understand the concept of a generic list Understand how to combine try parse, while, and lists Understand the operation of a basic ternary operator Understand how the ternary operator can be used with method calls Understand how you can rewrite more condensed code from long-winded code Understand how to control the header of a for loop and how to change it meaningfully and with control Describe why switch blocks are needed Explain how switch blocks operate Understand how C# handles division by zero Understand why and how to put code under switch block case labels Understand how to use the logical and operator with simple values Understand how to use the logical and operator with methods Understand how the logical and operator executes, step by step and how it short-circuits Understand the prototypical operation of the basic or logical operator Understand how to use the logical or operator in an application Understand how to use while(true) (infinite loop), break and key inputs like the Escape key Understand how to create methods with void return types Understand how to create methods that return a value Describe the concept of matching data types when methods are created Describe the concept of the call stack and how methods load and unload from memory Understand how parameters function as local variables in methods and where parameters can and cannot be reached Understand how to use modern C# switch blocks Use methods from the Math class like DivRem Understand the difference between % and / in the context of integer division Understand how and why to use try/catch blocks Understand the concept of a null-reference exception Understand how to catch null reference exceptions Understand how to use the word null in logical comparisons Understand how to create and use a method with a string parameter/ return data type Understand how to use hard coded values to understand the operation of if/else blocks better Understand how to call a method with a null value and how to protect against the consequences Understand how to create a method with a List<double> parameter Understand how to return an IEnumerable<int> from a method Understand how to call methods in a variety of positions in the code, including foreach loops Describe how to create an array Describe how to read a value from an array using array access notation Describe how to assign values to an array using array access notation Understand how to use the params keyword in method headers Understand how to use a foreach loops to produce a sum of values inside a method Understand how to use a foreach loop to produce a product of values inside a method Explain the meaning of a reference variable in the context of arrays Explain the meaning of a reference variable in the context of lists Understand how to create an array using a for loop Understand how to read an array using a foreach loop Understand how to print an array backwards using a for loop Understand how to define an array of arrays (two dimensional case) Describe why two for loops are needed to print the entries of a two dimensional array Understand how to code up the data types needed in nested foreach loops Understand how reference types like arrays and lists behave in memory Understand how to set the value of a two-dimensional array using for loops Understand how to create a jagged array Understand how to display the value of a jagged array Show more Show less Course content 7 sections • 89 lectures • 9h 29m total length Expand all sections Get the Tools 1 lecture • 4min Find, download and install Visual Studio 2017 Community Preview 03:48 Understand the Supporting Fundamentals 5 lectures • 33min Create your first executable file Preview 07:37 Print one line of output 04:24 Dig into the Console class 08:03 What is the .NET Framework? 09:04 Using directives 03:56 Create Programs 15 lectures • 1hr 46min Use one variable to represent a changing quantity 07:42 Understand the consequences of a data type 04:43 Describe an object with multiple data types 07:36 Print multiple variable values 08:38 Use the debugger, part 1 06:29 Use the debugger, part 2 05:26 Perform simple calculations, part 1 07:59 Perform simple calculations, part 2 05:18 Accept string input and produce string output 05:45 Use the Concat method from the String class 09:44 Accept numeric input and produce numeric output, part 1 07:03 Numeric input/output, part 2 07:22 Decipher an error message 05:15 Understand the concept of method chaining 07:44 Understand and use basic properties 09:25 Program Flow 29 lectures • 3hr 1min Understand the concept of a logical condition 08:54 Understand a simple if/else condition check 06:06 Use a sequence of if/else checks 05:06 Understand how to use the debugger with if/else 01:50 Use if/else with a method 07:07 Write more stable code with TryParse, part 1 05:51 Write more stable code with TryParse, part 2 03:25 Using TryParse, part 3 11:34 Understand compound operators 08:13 Create and run a while loop, part 1 06:42 Create and run a while loop, part 2 05:42 Exiting from while loops, part 3 11:07 Create and run a for loop, part 1 06:10 Create and run a for loop, part 2 05:23 Adjusting indexes in for loops, part 3 05:26 Strings as indexed constructs 06:56 Strings with for loops 08:44 Nest an if/else inside a for loop 08:18 Understand string behavior in memory 03:45 Execution mechanics of a for loop 02:26 Linq basics, part 1 07:56 Lists with ForEach 07:22 While with TryParse 07:35 Ternary operator with numbers, part 1 05:11 Ternary operator with methods, part 2 04:08 Rewrite code so it's more compact 04:32 Switch blocks, part 1 06:55 Switch blocks, part 2 01:50 Switch blocks, part 3 07:10 Logical Operators 5 lectures • 37min Decide on two conditions with "and", part 1 05:15 Decide on two logical conditions with "and", part 3 05:35 TryParse with while, "and", break and continue 10:28 Decide on two or more conditions with or 05:46 Use multiple "ors" with foreach 09:30 Methods 18 lectures • 1hr 48min Create a void method 06:54 Get/Set of properties 02:57 Create a method with one parameter and a return value 06:48 Understand the call stack and parameters as local variables 04:07 Understand the concept of block methods and expression body methods 02:09 Create a method with two parameters and one return value, part 1 05:19 Create a method with two parameters, part 2 07:48 Using modern switch blocks 08:48 Methods that crash, part 1 07:30 Methods that crash, part 2 06:34 Try/Catch challenge with solution 03:56 Nulls with strings and try /catch 07:11 Create a method with a string parameter and return type 07:50 Change DivRem so it doesn't crash 04:29 Create a method with a tuple return value, part 1 05:59 Methods that return a tuple, part 2 06:19 Method with a List<int> parameter that returns an IEnumerable<int>, part 1 06:45 Method with a List<int> parameter that returns an IEnumerable<int>, part 2 06:15 Arrays 16 lectures • 1hr 41min Understand the concept of an index for arrays 08:36 Create a more flexible method with the Params keyword 05:06 Params method with multiplication challenge 05:15 Split method from string class 06:48 Arrays and lists are reference types 06:00 Passing by reference vs. passing by value, part 1 07:19 Passing by reference and value, part 2 03:49 Step through an array with a for loop 08:55 Difference in memory between strings and other types like integers, decimals 04:59 Define a two-dimensional array with manual indexes 08:35 Extend the size of a multidimensional array 03:54 Multidimensional arrays with methods 06:56 Fill a two-dimensional array with a for loops 09:55 Print a multidimensional array 04:35 Create and print jagged arrays 10:21 Thank you for watching! 00:08 Requirements Students MUST use at least the version of Visual Studio Community 2017 described in the first, free preview video. Description Very Important: 1. Friends, please take the time to review the curriculum carefully before buying so you can see exactly whether this is the right course for you. Please do not join until you have completed this step. 2. Please watch the free preview videos so you can see whether the presentation style works for you. Please remember I am just one person, and I make my videos often after I have been working for many hours already. PLease do not join until you have completed this step. 3. If something needs fixing, please let me know. Again, I'm just one person and not a big team of people. I will try to fix it as quickly as possible. Thank you. Course Overview: 1. This course consists of standalone examples designed to illustrate specific skills. There are no big applications built in this course. 2. You must use Visual Studio 2017 to be sure you have the latest version of C# running. Lower versions of Visual Studio will cause errors because newer programming elements will not be found. 3. This is a beginners course, but I do not spare the details, even when they are very technical. This means in a few videos I show you the .NET Framework source code. I do this because it's important to look at things as they actually are, and not at an artificially simplified perspective. 4. I talk fairly slowly in some of the videos. 5. If you feel the way I talk is too slow for you, please watch at 1.25x, which you can set easily on the player. 6. I made the videos in 1080p HD. If you have trouble with the resolution, please try reloading the page a few times. 7. This course covers C# through console programs only. It does not have ASP.NET, Windows Forms, MVC, .NET Core or anything like that. 8. There are questions throughout the videos. At those times, please pause and try answering them. Success invariably results from understanding how the many small and intricate pieces of anything fit together. This takes time, consistent effort and a willing to push yourself. Success is the result of a whole-hearted effort, exerted daily and consistently. This is what years of struggle have taught me:) 9. The videos are just coding videos done in Visual Studio Community 2017. This is the free version of Visual Studio. 10. This is a course dedicated to code only, so you do not see any of the following: a talking head, PowerPoints or fancy graphics. To me, these are distractions that shift focus away from the things that truly matter. 11. Exercises start in video two. I have overlays embedded that say "Pause and try this: ...", with the specific question in place of the ellipses. 12. In some of the videos, there are several questions because I guide you through building a bigger piece of code. 13. Some of the videos don't have any questions. 14. All the code is written from scratch in the code editor window in Visual Studio Community 2017. 15. In some of the videos, I use the debugger to step through the code, line by line, and intricate detail by intricate detail. 16. I talk frequently about reading the various tips that show as you type in Visual Studio. You must learn how to read them because they provide valuable information. 17. In some of the videos, I show you how C# looks in your computer memory. You must look at the memory of your computer to truly understand what's happening. Just reading messages in the console window is not the same as truly understanding what they mean. 18. In some of the videos, I zoom in on various things I feel need special attention. 19. For the hearing-impaired, closed-captions are added automatically. I do not have control over those, so they might not be perfect. On a personal note, I can tell you only that it is through consistent, WHOLE-HEARTED effort, that something technical like a programming language can be learned. That's what I have learned from years of struggling. I would urge you to embrace this philosophy because it's a very powerful. I hope you will find great value in this course. Thank you for reading, and I will see you inside! Tom Who this course is for: People who are interested in C# should take this course. People who are new to C# should take this course. People who feel it's valuable to pause at times and try an assignment or a mental exercise before continuing. People who understand that the average video length is about 7 minutes should join. People who like fast talking should not join. The vast majority of the examples are standalone. When I say beginner, I don't mean that in an overly simplified sense. Show more Show less Instructor A O Spreader of Knowledge 4.4 Instructor Rating 6,259 Reviews 40,619 Students 26 Courses I love computers , math and programming. I teach because it gives me great joy to understand things deeply and to share that knowledge with others. My education: 1. Master's degree in Statistical Computing 2. BA in mathematics 3. Professional development certificates from Microsoft in each area below: 1. Deep learning with Python 2. Introduction to Artificial intelligence 3. Data science with Python 4. Math for machine learning 5. Data science research methods with Python 4. Professional certificates from other schools: 1. Columbia university certificate in introduction to corporate finance 2. MIT certificate in introductory economics Show more Show less Udemy Business Teach on Udemy Get the app About us Contact us Careers Blog Help and Support Affiliate Impressum Kontakt Terms Privacy policy Cookie settings Sitemap © 2021 Udemy, Inc. window.handleCSSToggleButtonClick = function (event) { var target = event.currentTarget; var cssToggleId = target && target.dataset && target.dataset.cssToggleId; var input = cssToggleId && document.getElementById(cssToggleId); if (input) { if (input.dataset.type === 'checkbox') { input.dataset.checked = input.dataset.checked ? '' : 'checked'; } else { input.dataset.checked = input.dataset.allowToggle && input.dataset.checked ? '' : 'checked'; var radios = document.querySelectorAll('[name="' + input.dataset.name + '"]'); for (var i = 0; i (function(){window['__CF$cv$params']={r:'6778ca475ff240f5',m:'0bef3e8b972ea426d9ba5d7b6222e110fcfd191b-1627755097-1800-ARrMCVYiJVTBMunhiDeqW298WCBkfQECuqZCzy9TDzGpW7fhbamwRCsZ+Y9PvXWi+d3Ch05NvOljPR7m/Ah/+4nhk3nevCnJ1rdTO91fmnfvoElg/xU2BJEmREXZiUWLkvBnzwWzCx1pPKJwU4sY0HU=',s:[0xdda8a03d29,0xff149613d5],}})();
  4. Describe the purpose of the Console class Understand how to use class methods Understand the concept of a method as a behavior or an action that can be performed Describe the purpose of the .NET Framework library Use the object explorer in Visual Studio Describe the concept of a class member Describe the purpose of the dot member access notation Explain what it means to call or invoke a method Give examples of method arguments Define the concept of a string in C# Understand the concept of a data type Understand the consequences of data casts Describe how string interpolation works Describe the purpose of the .NET Framework Understand how to use the debugger Understand how to use the locals window Understand how to use the call stack window Describe how to use implicit methods Understand the difference between parameters and arguments Understand the meaning of the word public Describe how to use a name space, class name and method name using dot notation Understand how to use the Concat method Understand how to ensure that data types do not clash Describe an example of when an implicit data cast is safe Understand the consequences of making one change and ensuring that the code is properly fixed Understand how to use Visual Studio tool tips to help with resolving error messages Understand where to find the object explorer and how to find class details using the defintion Understand how to read /write numeric values Understand how to nest methods Understand how to decipher error messages and trace them through the .NET Framework Understand how to use properties Understand the concept of an enumeration and how to use it Understand the concept of a logical condition Understand how to make decisions with logical conditions Understand how to use methods with if/else Understand how to use ++x, x++, x+=2 and other compound operators Understand the motivation for while loops Understand how a while loop actually operates Understand the motivation for a for loops Understand how to create a variety of for loops Understand how strings behave in memory Understand the mechanical execution aspect of a loop Understand how to use for each loops Understand how to nest if inside loops Understand how to use linq methods like sum, average, min and max Understand how to use the ForEach method on lists Understand the concept of a generic list Understand how to combine try parse, while, and lists Understand the operation of a basic ternary operator Understand how the ternary operator can be used with method calls Understand how you can rewrite more condensed code from long-winded code Understand how to control the header of a for loop and how to change it meaningfully and with control Describe why switch blocks are needed Explain how switch blocks operate Understand how C# handles division by zero Understand why and how to put code under switch block case labels Understand how to use the logical and operator with simple values Understand how to use the logical and operator with methods Understand how the logical and operator executes, step by step and how it short-circuits Understand the prototypical operation of the basic or logical operator Understand how to use the logical or operator in an application Understand how to use while(true) (infinite loop), break and key inputs like the Escape key Understand how to create methods with void return types Understand how to create methods that return a value Describe the concept of matching data types when methods are created Describe the concept of the call stack and how methods load and unload from memory Understand how parameters function as local variables in methods and where parameters can and cannot be reached Understand how to use modern C# switch blocks Use methods from the Math class like DivRem Understand the difference between % and / in the context of integer division Understand how and why to use try/catch blocks Understand the concept of a null-reference exception Understand how to catch null reference exceptions Understand how to use the word null in logical comparisons Understand how to create and use a method with a string parameter/ return data type Understand how to use hard coded values to understand the operation of if/else blocks better Understand how to call a method with a null value and how to protect against the consequences Understand how to create a method with a List<double> parameter Understand how to return an IEnumerable<int> from a method Understand how to call methods in a variety of positions in the code, including foreach loops Describe how to create an array Describe how to read a value from an array using array access notation Describe how to assign values to an array using array access notation Understand how to use the params keyword in method headers Understand how to use a foreach loops to produce a sum of values inside a method Understand how to use a foreach loop to produce a product of values inside a method Explain the meaning of a reference variable in the context of arrays Explain the meaning of a reference variable in the context of lists Understand how to create an array using a for loop Understand how to read an array using a foreach loop Understand how to print an array backwards using a for loop Understand how to define an array of arrays (two dimensional case) Describe why two for loops are needed to print the entries of a two dimensional array Understand how to code up the data types needed in nested foreach loops Understand how reference types like arrays and lists behave in memory Understand how to set the value of a two-dimensional array using for loops Understand how to create a jagged array Understand how to display the value of a jagged array Show more Show less Course content 7 sections • 89 lectures • 9h 29m total length Expand all sections Get the Tools 1 lecture • 4min Find, download and install Visual Studio 2017 Community Preview 03:48 Understand the Supporting Fundamentals 5 lectures • 33min Create your first executable file Preview 07:37 Print one line of output 04:24 Dig into the Console class 08:03 What is the .NET Framework? 09:04 Using directives 03:56 Create Programs 15 lectures • 1hr 46min Use one variable to represent a changing quantity 07:42 Understand the consequences of a data type 04:43 Describe an object with multiple data types 07:36 Print multiple variable values 08:38 Use the debugger, part 1 06:29 Use the debugger, part 2 05:26 Perform simple calculations, part 1 07:59 Perform simple calculations, part 2 05:18 Accept string input and produce string output 05:45 Use the Concat method from the String class 09:44 Accept numeric input and produce numeric output, part 1 07:03 Numeric input/output, part 2 07:22 Decipher an error message 05:15 Understand the concept of method chaining 07:44 Understand and use basic properties 09:25 Program Flow 29 lectures • 3hr 1min Understand the concept of a logical condition 08:54 Understand a simple if/else condition check 06:06 Use a sequence of if/else checks 05:06 Understand how to use the debugger with if/else 01:50 Use if/else with a method 07:07 Write more stable code with TryParse, part 1 05:51 Write more stable code with TryParse, part 2 03:25 Using TryParse, part 3 11:34 Understand compound operators 08:13 Create and run a while loop, part 1 06:42 Create and run a while loop, part 2 05:42 Exiting from while loops, part 3 11:07 Create and run a for loop, part 1 06:10 Create and run a for loop, part 2 05:23 Adjusting indexes in for loops, part 3 05:26 Strings as indexed constructs 06:56 Strings with for loops 08:44 Nest an if/else inside a for loop 08:18 Understand string behavior in memory 03:45 Execution mechanics of a for loop 02:26 Linq basics, part 1 07:56 Lists with ForEach 07:22 While with TryParse 07:35 Ternary operator with numbers, part 1 05:11 Ternary operator with methods, part 2 04:08 Rewrite code so it's more compact 04:32 Switch blocks, part 1 06:55 Switch blocks, part 2 01:50 Switch blocks, part 3 07:10 Logical Operators 5 lectures • 37min Decide on two conditions with "and", part 1 05:15 Decide on two logical conditions with "and", part 3 05:35 TryParse with while, "and", break and continue 10:28 Decide on two or more conditions with or 05:46 Use multiple "ors" with foreach 09:30 Methods 18 lectures • 1hr 48min Create a void method 06:54 Get/Set of properties 02:57 Create a method with one parameter and a return value 06:48 Understand the call stack and parameters as local variables 04:07 Understand the concept of block methods and expression body methods 02:09 Create a method with two parameters and one return value, part 1 05:19 Create a method with two parameters, part 2 07:48 Using modern switch blocks 08:48 Methods that crash, part 1 07:30 Methods that crash, part 2 06:34 Try/Catch challenge with solution 03:56 Nulls with strings and try /catch 07:11 Create a method with a string parameter and return type 07:50 Change DivRem so it doesn't crash 04:29 Create a method with a tuple return value, part 1 05:59 Methods that return a tuple, part 2 06:19 Method with a List<int> parameter that returns an IEnumerable<int>, part 1 06:45 Method with a List<int> parameter that returns an IEnumerable<int>, part 2 06:15 Arrays 16 lectures • 1hr 41min Understand the concept of an index for arrays 08:36 Create a more flexible method with the Params keyword 05:06 Params method with multiplication challenge 05:15 Split method from string class 06:48 Arrays and lists are reference types 06:00 Passing by reference vs. passing by value, part 1 07:19 Passing by reference and value, part 2 03:49 Step through an array with a for loop 08:55 Difference in memory between strings and other types like integers, decimals 04:59 Define a two-dimensional array with manual indexes 08:35 Extend the size of a multidimensional array 03:54 Multidimensional arrays with methods 06:56 Fill a two-dimensional array with a for loops 09:55 Print a multidimensional array 04:35 Create and print jagged arrays 10:21 Thank you for watching! 00:08 Requirements Students MUST use at least the version of Visual Studio Community 2017 described in the first, free preview video. Description Very Important: 1. Friends, please take the time to review the curriculum carefully before buying so you can see exactly whether this is the right course for you. Please do not join until you have completed this step. 2. Please watch the free preview videos so you can see whether the presentation style works for you. Please remember I am just one person, and I make my videos often after I have been working for many hours already. PLease do not join until you have completed this step. 3. If something needs fixing, please let me know. Again, I'm just one person and not a big team of people. I will try to fix it as quickly as possible. Thank you. Course Overview: 1. This course consists of standalone examples designed to illustrate specific skills. There are no big applications built in this course. 2. You must use Visual Studio 2017 to be sure you have the latest version of C# running. Lower versions of Visual Studio will cause errors because newer programming elements will not be found. 3. This is a beginners course, but I do not spare the details, even when they are very technical. This means in a few videos I show you the .NET Framework source code. I do this because it's important to look at things as they actually are, and not at an artificially simplified perspective. 4. I talk fairly slowly in some of the videos. 5. If you feel the way I talk is too slow for you, please watch at 1.25x, which you can set easily on the player. 6. I made the videos in 1080p HD. If you have trouble with the resolution, please try reloading the page a few times. 7. This course covers C# through console programs only. It does not have ASP.NET, Windows Forms, MVC, .NET Core or anything like that. 8. There are questions throughout the videos. At those times, please pause and try answering them. Success invariably results from understanding how the many small and intricate pieces of anything fit together. This takes time, consistent effort and a willing to push yourself. Success is the result of a whole-hearted effort, exerted daily and consistently. This is what years of struggle have taught me:) 9. The videos are just coding videos done in Visual Studio Community 2017. This is the free version of Visual Studio. 10. This is a course dedicated to code only, so you do not see any of the following: a talking head, PowerPoints or fancy graphics. To me, these are distractions that shift focus away from the things that truly matter. 11. Exercises start in video two. I have overlays embedded that say "Pause and try this: ...", with the specific question in place of the ellipses. 12. In some of the videos, there are several questions because I guide you through building a bigger piece of code. 13. Some of the videos don't have any questions. 14. All the code is written from scratch in the code editor window in Visual Studio Community 2017. 15. In some of the videos, I use the debugger to step through the code, line by line, and intricate detail by intricate detail. 16. I talk frequently about reading the various tips that show as you type in Visual Studio. You must learn how to read them because they provide valuable information. 17. In some of the videos, I show you how C# looks in your computer memory. You must look at the memory of your computer to truly understand what's happening. Just reading messages in the console window is not the same as truly understanding what they mean. 18. In some of the videos, I zoom in on various things I feel need special attention. 19. For the hearing-impaired, closed-captions are added automatically. I do not have control over those, so they might not be perfect. On a personal note, I can tell you only that it is through consistent, WHOLE-HEARTED effort, that something technical like a programming language can be learned. That's what I have learned fro