title
C# Tutorial - Full Course for Beginners

description
This course will give you a full introduction into all of the core concepts in C# (aka C Sharp). Follow along with the course and you'll be a C# programmer in no time! ⭐️ Contents ⭐️ ⌨️ (0:00:00) Introduction ⌨️ (0:01:18) Installation & Setup ⌨️ (0:05:03) Drawing a Shape ⌨️ (0:17:23) Variables ⌨️ (0:30:06) Data Types ⌨️ (0:37:17) Working With Strings ⌨️ (0:49:34) Working With Numbers ⌨️ (1:00:01) Getting User Input ⌨️ (1:07:38) Building a Calculator ⌨️ (1:15:26) Building a Mad Lib ⌨️ (1:21:15) Arrays ⌨️ (1:29:49) Methods ⌨️ (1:40:29) Return Statement ⌨️ (1:46:06) If Statements ⌨️ (2:01:37) If Statements (con't) ⌨️ (2:10:21) Building a Better Calculator ⌨️ (2:17:22) Switch Statements ⌨️ (2:25:31) While Loops ⌨️ (2:34:22) Building a Guessing Game ⌨️ (2:48:49) For Loops ⌨️ (2:58:45) Building an Exponent Method ⌨️ (3:05:31) 2d Arrays ⌨️ (3:09:46) Comments ⌨️ (3:13:53) Exception Handling ⌨️ (3:24:34) Classes & Objects ⌨️ (3:37:39) Constructors ⌨️ (3:47:48) Object Methods ⌨️ (3:54:59) Getters & Setters ⌨️ (4:06:49) Static Class Attributes ⌨️ (4:14:45) Static Methods & Classes ⌨️ (4:20:55) Inheritance Course developed by Mike Dane. Check out his YouTube channel for more great programming courses: https://www.youtube.com/channel/UCvmINlrza7JHB1zkIOuXEbw 🐦Follow Mike on Twitter - https://twitter.com/GiraffeAcademy 🔗The Mike's website: http://www.giraffeacademy.com/ ⭐️Other full courses by Mike Dane on our channel ⭐️ 💻C: https://youtu.be/KJgsSFOSQv0 💻C++: https://youtu.be/vLnPwxZdW4Y 💻SQL: https://youtu.be/HXV3zeQKqGY 💻Ruby: https://youtu.be/t_ispmWmdjY 💻PHP: https://youtu.be/OK_JCtrrv-c 💻C#: https://youtu.be/GhQdlIFylQ8

detail
{'title': 'C# Tutorial - Full Course for Beginners', 'heatmap': [{'end': 2440.438, 'start': 2276.382, 'weight': 0.772}, {'end': 12532.107, 'start': 12363.604, 'weight': 0.825}, {'end': 14808.179, 'start': 14478.465, 'weight': 0.747}, {'end': 15293.157, 'start': 15130.538, 'weight': 0.82}], 'summary': 'Tutorial covers various aspects of c# programming, including setup, basics, data types, user input, programming concepts, switch statements, loops, games, exception handling, classes, objects, constructors, attributes, and inheritance.', 'chapters': [{'end': 549.375, 'segs': [{'end': 69.792, 'src': 'embed', 'start': 0.529, 'weight': 0, 'content': [{'end': 1.69, 'text': 'Hey, welcome to Draft Academy.', 'start': 0.529, 'duration': 1.161}, {'end': 2.29, 'text': 'My name is Mike.', 'start': 1.73, 'duration': 0.56}, {'end': 7.233, 'text': "In this course, I'm going to teach you guys everything you need to know to get started using C sharp.", 'start': 2.43, 'duration': 4.803}, {'end': 10.615, 'text': 'Now C sharp is an extremely powerful programming language.', 'start': 7.593, 'duration': 3.022}, {'end': 13.757, 'text': "And it's used in millions of applications around the world.", 'start': 10.875, 'duration': 2.882}, {'end': 16.639, 'text': 'There are literally 1000s of things you can do with C sharp.', 'start': 13.777, 'duration': 2.862}, {'end': 19.64, 'text': "And there's tons of different applications for this language.", 'start': 16.679, 'duration': 2.961}, {'end': 21.101, 'text': "It's extremely powerful.", 'start': 19.981, 'duration': 1.12}, {'end': 26.004, 'text': "And I'm excited to be bringing you guys a course that will teach you everything you need to know to get started.", 'start': 21.161, 'duration': 4.843}, {'end': 27.705, 'text': "So we're going to start the course with the basics.", 'start': 26.044, 'duration': 1.661}, {'end': 29.306, 'text': "we're going to install C sharp.", 'start': 27.705, 'duration': 1.601}, {'end': 31.927, 'text': "we're going to install a text editor called Visual Studio.", 'start': 29.306, 'duration': 2.621}, {'end': 33.088, 'text': "we're going to get everything set up.", 'start': 31.927, 'duration': 1.161}, {'end': 37.81, 'text': "And we'll start writing our first program, I'm going to teach you guys the basics of programming.", 'start': 33.548, 'duration': 4.262}, {'end': 40.352, 'text': "So we're going to look at some of the core programming concepts.", 'start': 37.83, 'duration': 2.522}, {'end': 45.06, 'text': 'things like working with data variables data types getting input from users.', 'start': 40.779, 'duration': 4.281}, {'end': 51.902, 'text': "Then we're going to move on to some more advanced stuff we'll talk about things like loops and if statements in different data structures.", 'start': 45.54, 'duration': 6.362}, {'end': 58.464, 'text': "And finally we'll talk about some object oriented programming concepts things like classes and objects inheritance.", 'start': 52.363, 'duration': 6.101}, {'end': 60.085, 'text': 'All that fun stuff.', 'start': 59.165, 'duration': 0.92}, {'end': 65.669, 'text': "If you're new to programming, or you just want to try and pick up C sharp, then this course has something for you.", 'start': 60.325, 'duration': 5.344}, {'end': 68.531, 'text': "I'm really excited to be bringing you guys C sharp tutorials.", 'start': 65.809, 'duration': 2.722}, {'end': 69.792, 'text': "It's an awesome language.", 'start': 68.611, 'duration': 1.181}], 'summary': 'C sharp course covering basics, advanced concepts, and object-oriented programming. suitable for beginners and those wanting to learn c sharp.', 'duration': 69.263, 'max_score': 0.529, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ8529.jpg'}, {'end': 251.762, 'src': 'embed', 'start': 226.687, 'weight': 6, 'content': [{'end': 232.311, 'text': "Alright, so this should go ahead and open up this little starting page, I'm just gonna click out of this, we don't need to have this up here.", 'start': 226.687, 'duration': 5.624}, {'end': 237.575, 'text': "And I'm gonna go over here, and we're just gonna click File, and I'm gonna click New Project.", 'start': 232.972, 'duration': 4.603}, {'end': 239.396, 'text': 'So we want to start a new project.', 'start': 237.595, 'duration': 1.801}, {'end': 243.639, 'text': 'And this is basically going to allow us to write our applications.', 'start': 239.797, 'duration': 3.842}, {'end': 251.762, 'text': "So over here in sort of visual C sharp, you can just click here and you'll see over here, there's an option for console app, this is what we want.", 'start': 243.8, 'duration': 7.962}], 'summary': 'Opening new project in visual c# for console app.', 'duration': 25.075, 'max_score': 226.687, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ8226687.jpg'}, {'end': 322.593, 'src': 'embed', 'start': 286.379, 'weight': 5, 'content': [{'end': 288.181, 'text': "And it's sort of like the template for a program.", 'start': 286.379, 'duration': 1.802}, {'end': 290.323, 'text': "And don't worry too much about what all this stuff is.", 'start': 288.461, 'duration': 1.862}, {'end': 296.089, 'text': "In the next video, I'm going to talk you guys through what all this stuff is, what it means, and we'll actually write our first program.", 'start': 290.343, 'duration': 5.746}, {'end': 298.191, 'text': 'But for now, we have everything set up.', 'start': 296.129, 'duration': 2.062}, {'end': 302.655, 'text': "So we're ready to go and ready to get started with C sharp development.", 'start': 298.351, 'duration': 4.304}, {'end': 310.44, 'text': "In this tutorial, I'm gonna show you guys how to write your first C sharp program.", 'start': 306.576, 'duration': 3.864}, {'end': 313.644, 'text': "We're also just going to talk in general about what a program is.", 'start': 310.801, 'duration': 2.843}, {'end': 322.593, 'text': "So we're going to look at the different instructions that we can give to the computer and how those instructions are going to play out and allow us to write applications.", 'start': 313.904, 'duration': 8.689}], 'summary': 'Introduction to c sharp development: setting up and writing the first program.', 'duration': 36.214, 'max_score': 286.379, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ8286379.jpg'}], 'start': 0.529, 'title': 'C sharp and visual studio setup', 'summary': 'Introduces c sharp, covering its power and wide applicability, and provides an overview of course content, including installation and setup of visual studio. it also covers the process of setting up a c# program, including installation, project creation, and an overview of the program structure and functionality.', 'chapters': [{'end': 192.5, 'start': 0.529, 'title': 'Getting started with c sharp', 'summary': 'Introduces the c sharp programming language, highlighting its power and wide applicability, and provides an overview of the course content, including installation and setup of visual studio, and covering basic and advanced programming concepts.', 'duration': 191.971, 'highlights': ['C sharp is an extremely powerful programming language and is used in millions of applications around the world.', 'The course covers installation and setup of Visual Studio, including selecting the necessary components for building a console application.', 'The course will cover basic programming concepts such as working with data variables, data types, and getting input from users, as well as more advanced topics like loops, if statements, and different data structures.', 'Object-oriented programming concepts like classes, objects, and inheritance will be discussed in the course.']}, {'end': 549.375, 'start': 192.94, 'title': 'Setting up c# program in visual studio', 'summary': 'Covers the process of setting up a c# program in visual studio, including installation, project creation, and an overview of the program structure and functionality.', 'duration': 356.435, 'highlights': ['The chapter covers the process of setting up a C# program in Visual Studio', 'An overview of the program structure and functionality is provided', 'Guidance on creating a new project and choosing the appropriate project type is given']}], 'duration': 548.846, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ8529.jpg', 'highlights': ['C sharp is an extremely powerful programming language and is used in millions of applications around the world.', 'The course covers installation and setup of Visual Studio, including selecting the necessary components for building a console application.', 'The course will cover basic programming concepts such as working with data variables, data types, and getting input from users, as well as more advanced topics like loops, if statements, and different data structures.', 'Object-oriented programming concepts like classes, objects, and inheritance will be discussed in the course.', 'The chapter covers the process of setting up a C# program in Visual Studio', 'An overview of the program structure and functionality is provided', 'Guidance on creating a new project and choosing the appropriate project type is given']}, {'end': 2144.804, 'segs': [{'end': 594.182, 'src': 'embed', 'start': 569.11, 'weight': 1, 'content': [{'end': 574.372, 'text': 'some of the stuff that we needed to know what I want to do is actually write our first line of code.', 'start': 569.11, 'duration': 5.262}, {'end': 579.895, 'text': "So we're going to go ahead and write a line of code, which is going to print something out onto the screen.", 'start': 574.412, 'duration': 5.483}, {'end': 584.797, 'text': 'So one of the things that is really useful to do when writing a program is to print out information.', 'start': 580.415, 'duration': 4.382}, {'end': 590.36, 'text': 'And the most basic instruction that we can give the computer is basically telling it to print something out.', 'start': 585.257, 'duration': 5.103}, {'end': 594.182, 'text': "So I'm going to go ahead and do that down here, we're going to write our first line of code.", 'start': 590.9, 'duration': 3.282}], 'summary': 'Learning to write the first line of code for printing information on the screen.', 'duration': 25.072, 'max_score': 569.11, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ8569110.jpg'}, {'end': 823.074, 'src': 'embed', 'start': 795.265, 'weight': 4, 'content': [{'end': 798.008, 'text': 'This is sort of our first C sharp instruction.', 'start': 795.265, 'duration': 2.743}, {'end': 803.014, 'text': 'And like I said, console dot write line basically just writes a line of text out onto the screen.', 'start': 798.028, 'duration': 4.986}, {'end': 810.964, 'text': "And then we can include this console dot read line instruction in order to keep that window up so we can see what we're printing out.", 'start': 803.435, 'duration': 7.529}, {'end': 816.088, 'text': 'Now that we know how to print out something onto the screen, I want to show you guys how we can draw a little shape.', 'start': 811.224, 'duration': 4.864}, {'end': 819.431, 'text': "So I'm actually going to get rid of this.", 'start': 816.268, 'duration': 3.163}, {'end': 823.074, 'text': "And I'm going to go ahead and copy this right line piece of code.", 'start': 819.951, 'duration': 3.123}], 'summary': 'Introduction to c# instruction, covering console write line, read line, and code copying.', 'duration': 27.809, 'max_score': 795.265, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ8795265.jpg'}, {'end': 913.823, 'src': 'embed', 'start': 890.112, 'weight': 0, 'content': [{'end': 896.414, 'text': 'Now, essentially, what happens is when I click that Start button, C sharp is going to go into my program.', 'start': 890.112, 'duration': 6.302}, {'end': 900.316, 'text': "it's going to find this block of code right here, main.", 'start': 896.414, 'duration': 3.902}, {'end': 905.338, 'text': "it's going to go inside of these curly brackets and it's going to execute each instruction.", 'start': 900.316, 'duration': 5.022}, {'end': 908.78, 'text': 'In other words, each line of code one after the other.', 'start': 905.398, 'duration': 3.382}, {'end': 910.861, 'text': "So it's going to start with this first line of code.", 'start': 908.86, 'duration': 2.001}, {'end': 913.823, 'text': "And it's basically going to say Okay, what does the user want me to do?", 'start': 911.481, 'duration': 2.342}], 'summary': 'C sharp executes lines of code sequentially when start button clicked.', 'duration': 23.711, 'max_score': 890.112, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ8890112.jpg'}, {'end': 993.097, 'src': 'embed', 'start': 967.018, 'weight': 2, 'content': [{'end': 972.041, 'text': 'essentially all a program is is just a set of instructions specified in a particular order.', 'start': 967.018, 'duration': 5.023}, {'end': 972.881, 'text': "That's it.", 'start': 972.461, 'duration': 0.42}, {'end': 980.988, 'text': "And as we go through this course, and as you learn more about C sharp, you're going to find more and more complex instructions that you can use.", 'start': 973.502, 'duration': 7.486}, {'end': 987.733, 'text': "So the more complex instructions you're able to give the computer and the better you're able to organize them and order them,", 'start': 981.368, 'duration': 6.365}, {'end': 990.255, 'text': 'the more powerful your programs are going to become.', 'start': 987.733, 'duration': 2.522}, {'end': 993.097, 'text': 'So obviously we only really know two instructions.', 'start': 990.655, 'duration': 2.442}], 'summary': 'Learning c sharp allows for creating more powerful programs with complex instructions.', 'duration': 26.079, 'max_score': 967.018, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ8967018.jpg'}, {'end': 1752.665, 'src': 'embed', 'start': 1725.046, 'weight': 5, 'content': [{'end': 1729.709, 'text': "So that's sort of how we can use variables to make it easier to manage the data in our programs.", 'start': 1725.046, 'duration': 4.663}, {'end': 1731.871, 'text': 'Now I want to show you guys another cool thing we can do with this.', 'start': 1729.749, 'duration': 2.122}, {'end': 1736.534, 'text': "Let's say that halfway through the story I wanted the characters named the change,", 'start': 1732.511, 'duration': 4.023}, {'end': 1742.998, 'text': 'I can actually come down here and halfway through printing out the story, I can modify the value of one of these variables.', 'start': 1736.534, 'duration': 6.464}, {'end': 1747.321, 'text': 'So I could say, character name, and I could just give this another value.', 'start': 1743.038, 'duration': 4.283}, {'end': 1749.162, 'text': 'So I can say character name is equal to Mike.', 'start': 1747.381, 'duration': 1.781}, {'end': 1752.665, 'text': "And again, I need this semi colon at the end here, don't forget that.", 'start': 1749.683, 'duration': 2.982}], 'summary': 'Using variables to manage data and modify values in a program.', 'duration': 27.619, 'max_score': 1725.046, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ81725046.jpg'}, {'end': 1862.424, 'src': 'embed', 'start': 1832.828, 'weight': 3, 'content': [{'end': 1838.171, 'text': "So down here, I'm basically going to be showing you guys all the different data types that we can use.", 'start': 1832.828, 'duration': 5.343}, {'end': 1840.212, 'text': "And I'll be doing that by creating variables.", 'start': 1838.211, 'duration': 2.001}, {'end': 1845.795, 'text': 'So a variable is just a container where we can store a data value or a piece of information.', 'start': 1840.392, 'duration': 5.403}, {'end': 1852.019, 'text': "And I'm going to be creating different variables that can store the different types of data that we can work with in C sharp.", 'start': 1846.536, 'duration': 5.483}, {'end': 1855.241, 'text': 'So the first type of data that we can work with is plain text.', 'start': 1852.179, 'duration': 3.062}, {'end': 1862.424, 'text': 'So anytime you want to represent or, you know, use just regular old text inside of your programs, you want to use something called a string.', 'start': 1855.361, 'duration': 7.063}], 'summary': 'Demonstrating various data types by creating variables in c#.', 'duration': 29.596, 'max_score': 1832.828, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ81832828.jpg'}, {'end': 2018.241, 'src': 'embed', 'start': 1988.652, 'weight': 7, 'content': [{'end': 1993.478, 'text': 'And instead of storing inside of an integer, we can actually store it in one of three data types.', 'start': 1988.652, 'duration': 4.826}, {'end': 1997.723, 'text': "So there's actually three different data types that we can use to represent decimal numbers.", 'start': 1993.538, 'duration': 4.185}, {'end': 2002.549, 'text': "And they're called, there's a float, a double, and a decimal.", 'start': 1997.763, 'duration': 4.786}, {'end': 2006.234, 'text': 'And these basically allow you to store decimal points more and more specifically.', 'start': 2002.89, 'duration': 3.344}, {'end': 2012.017, 'text': 'So these range from least accurate with the float to most accurate with the decimal data type.', 'start': 2006.434, 'duration': 5.583}, {'end': 2018.241, 'text': "So if you really want to be super, super, super precise with the decimal point that you're using, you want to use a decimal point.", 'start': 2012.037, 'duration': 6.204}], 'summary': 'Three data types for decimal numbers: float, double, decimal. decimal type is most precise.', 'duration': 29.589, 'max_score': 1988.652, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ81988652.jpg'}, {'end': 2106.869, 'src': 'embed', 'start': 2083.735, 'weight': 8, 'content': [{'end': 2091.9, 'text': "So after characters and numbers, we just have one more like core data type that we're going to be representing, which is going to be called a Boolean.", 'start': 2083.735, 'duration': 8.165}, {'end': 2096.342, 'text': 'And a Boolean is essentially just a true or a false value.', 'start': 2092.38, 'duration': 3.962}, {'end': 2102.607, 'text': "Now, a lot of times in programming, we're actually going to want to be able to store true false information.", 'start': 2096.943, 'duration': 5.664}, {'end': 2106.869, 'text': "And this might not be something that is super intuitive to you if you've never programmed before.", 'start': 2103.047, 'duration': 3.822}], 'summary': 'Introducing boolean as a core data type representing true or false values in programming.', 'duration': 23.134, 'max_score': 2083.735, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ82083735.jpg'}], 'start': 549.375, 'title': 'C# programming basics and variable management', 'summary': "Introduces the structure of a c# program, importance of printing information, and basics of c# programming emphasizing instructions' order, drawing shapes using simple commands, and managing program data with variables. it also discusses the limitations of manually changing data, introduces variables in c# for efficient data management, and covers creating, utilizing, and modifying variables in programming, along with different data types such as strings, characters, integers, and decimal numbers.", 'chapters': [{'end': 681.58, 'start': 549.375, 'title': 'Introduction to c# programming', 'summary': "Introduces the structure of a c# program, explains the importance of printing information, and demonstrates writing the first line of code to print 'hello world' onto the console.", 'duration': 132.205, 'highlights': ['The chapter emphasizes the structure of a C# program, highlighting the importance of placing code within the main block and utilizing curly brackets for program execution.', "It explains the significance of printing information in a program and demonstrates the basic instruction of printing by writing the first line of code to print 'Hello world' onto the console.", 'The importance of ending each line of code with a semicolon in C# programming is emphasized, stressing its necessity and common beginner mistakes.', 'The significance of executing the program is mentioned, indicating the next step in the learning process of C# programming.']}, {'end': 1087.551, 'start': 681.58, 'title': 'Introduction to c# programming', 'summary': "Introduces the basics of c# programming, emphasizing the importance of instructions' order and the ability to draw shapes using simple commands, highlighting the significance of variables in managing program data.", 'duration': 405.971, 'highlights': ['The chapter introduces the concept of a program as a set of instructions, emphasizing the significance of their order and the ability to draw shapes using simple commands.', 'Explains the importance of variables in C# programming, serving as containers for managing data and information within programs.', "Demonstrates the use of 'console.dot' instructions to write text and maintain the console window, with the ability to draw shapes by executing simple lines of code.", "Emphasizes the significance of instructions' order in programming, showcasing the impact of changing the sequence of commands on the output of the program.", 'Highlights the potential of more complex instructions in C# programming, emphasizing the power of organizing and ordering instructions to enhance program functionality.']}, {'end': 1382.991, 'start': 1087.671, 'title': 'Managing data with variables in c#', 'summary': "Discusses the limitations of manually changing data in a program, such as a character's name and age, and introduces the concept of variables in c# to efficiently manage and modify data, reducing the complexity of handling large amounts of data in a program.", 'duration': 295.32, 'highlights': ['Introduction to Variables in C#', 'Limitations of Manual Data Modification', 'Efficiency of Variable Usage']}, {'end': 1764.442, 'start': 1383.311, 'title': 'Using variables in programming', 'summary': 'Discusses the creation and utilization of variables in programming, including the use of integer variables for storing numerical data, concatenating variables with text, and modifying variable values within a story, simplifying data management and enabling dynamic updates.', 'duration': 381.131, 'highlights': ['Variables simplify data management and enable dynamic updates within a story', 'Demonstrating the creation of integer variables for storing numerical data', 'Concatenating variables with text to dynamically include variable values in the story', 'Modifying variable values within the story to reflect dynamic changes']}, {'end': 2144.804, 'start': 1764.602, 'title': 'Working with variables and data types', 'summary': 'Covers the basics of working with variables, including creating and updating variable values, and introduces different data types such as strings, characters, integers, and decimal numbers, providing examples and use cases for each type.', 'duration': 380.202, 'highlights': ['The different types of data that we can store inside a variable will be covered in the next tutorial.', 'Explains the creation of variables to store different data types such as plain text, single characters, integers, and decimal numbers, along with examples for each type.', 'Describes the usage and representation of decimal numbers using float, double, and decimal data types, emphasizing the precision and use cases for each type.', 'Introduces the concept of Booleans as a data type to store true or false values and explains the practical significance of using Booleans in programming.', 'Demonstrates the creation of variables to store different types of data, including examples of strings, characters, integers, and decimal numbers.']}], 'duration': 1595.429, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ8549375.jpg', 'highlights': ['The chapter emphasizes the structure of a C# program and the importance of placing code within the main block.', 'Explains the significance of printing information in a program and demonstrates the basic instruction of printing.', 'Introduces the concept of a program as a set of instructions and emphasizes the significance of their order.', 'Explains the importance of variables in C# programming, serving as containers for managing data and information.', "Demonstrates the use of 'console.dot' instructions to write text and maintain the console window.", 'Variables simplify data management and enable dynamic updates within a story.', 'Explains the creation of variables to store different data types such as plain text, single characters, integers, and decimal numbers.', 'Describes the usage and representation of decimal numbers using float, double, and decimal data types.', 'Introduces the concept of Booleans as a data type to store true or false values and explains the practical significance of using Booleans in programming.', "Emphasizes the significance of instructions' order in programming and the impact of changing the sequence of commands on the output of the program."]}, {'end': 3598.449, 'segs': [{'end': 2171.243, 'src': 'embed', 'start': 2145.385, 'weight': 0, 'content': [{'end': 2150.708, 'text': "So for the most part, I would say these are the core data types that you're going to be using in C sharp.", 'start': 2145.385, 'duration': 5.323}, {'end': 2159.393, 'text': "Now there are a few other data types that we could get into, they're a little bit more obscure, and they're not used as commonly as these data types.", 'start': 2151.068, 'duration': 8.325}, {'end': 2166.319, 'text': "for the most part, you're going to be fine with just strings, characters, numbers, and then Boolean values.", 'start': 2159.913, 'duration': 6.406}, {'end': 2171.243, 'text': "99% of the stuff that you want to do, you're going to be able to do with just this data.", 'start': 2167.56, 'duration': 3.683}], 'summary': 'Core data types in c# include strings, characters, numbers, and boolean values, sufficient for 99% of tasks.', 'duration': 25.858, 'max_score': 2145.385, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ82145385.jpg'}, {'end': 2440.438, 'src': 'heatmap', 'start': 2276.382, 'weight': 0.772, 'content': [{'end': 2280.519, 'text': "And now when I run my program, it's going to go ahead and print that onto the screen.", 'start': 2276.382, 'duration': 4.137}, {'end': 2288.404, 'text': 'So anytime that I want to represent some sort of like plain text, or really any type of text in my program, I can do it with a string.', 'start': 2280.939, 'duration': 7.465}, {'end': 2290.966, 'text': "And there's actually some cool things you can do with these strings.", 'start': 2288.424, 'duration': 2.542}, {'end': 2298.651, 'text': "So let's say, for example, that I wanted to print out draft Academy, but I wanted to print out draft on one line and then Academy on the next line.", 'start': 2291.166, 'duration': 7.485}, {'end': 2300.592, 'text': 'I can use something called a new line character.', 'start': 2298.651, 'duration': 1.941}, {'end': 2307.795, 'text': 'So I could actually say backslash n, And this is a special character that we can use in C sharp strings,', 'start': 2300.632, 'duration': 7.163}, {'end': 2312.517, 'text': 'which is basically going to specify that we want to type out draft than a new line, than academy.', 'start': 2307.795, 'duration': 4.722}, {'end': 2317.338, 'text': "So now when I run my program, you'll see that draft and academy are printed out on different lines.", 'start': 2312.577, 'duration': 4.761}, {'end': 2320.179, 'text': "So that can come in handy when you're writing out your strings.", 'start': 2317.378, 'duration': 2.801}, {'end': 2321.6, 'text': "And there's also another way.", 'start': 2320.519, 'duration': 1.081}, {'end': 2326.181, 'text': "So if let's say that I wanted to write out a quotation mark.", 'start': 2321.78, 'duration': 4.401}, {'end': 2331.443, 'text': "if I put a quotation mark here, you'll notice that this quotation mark effectively ends this string.", 'start': 2326.181, 'duration': 5.262}, {'end': 2334.064, 'text': 'And then this over here is just causing an error.', 'start': 2331.883, 'duration': 2.181}, {'end': 2341.628, 'text': "I want to actually print out a literal quotation mark that's not you know, delineating the string, I can just use that backslash again.", 'start': 2334.084, 'duration': 7.544}, {'end': 2346.25, 'text': "And now we'll be able to print out that quotation mark, no problem, just like that.", 'start': 2342.068, 'duration': 4.182}, {'end': 2349.131, 'text': 'So those are some cool little things that we can do inside of our strings.', 'start': 2346.61, 'duration': 2.521}, {'end': 2353.213, 'text': 'You can also take a string and store it inside of a variable.', 'start': 2349.812, 'duration': 3.401}, {'end': 2357.315, 'text': 'So a variable is just a container that you can store different pieces of information.', 'start': 2353.273, 'duration': 4.042}, {'end': 2362.237, 'text': 'So if I wanted, I could create a variable over here, just say string, And we can just call it like phrase.', 'start': 2357.335, 'duration': 4.902}, {'end': 2368.319, 'text': "And I'm just going to set it equal to this text over here, which is just going to be Draft Academy.", 'start': 2362.838, 'duration': 5.481}, {'end': 2373.34, 'text': 'And then down here, I could just print out the value stored inside of this variable.', 'start': 2368.939, 'duration': 4.401}, {'end': 2375.521, 'text': 'So I could print out the value stored in the phrase variable.', 'start': 2373.38, 'duration': 2.141}, {'end': 2378.242, 'text': "And we're still printing out Draft Academy.", 'start': 2376.041, 'duration': 2.201}, {'end': 2378.922, 'text': "So that's kind of cool.", 'start': 2378.262, 'duration': 0.66}, {'end': 2382.823, 'text': 'Another thing you can do with strings is called concatenation.', 'start': 2379.822, 'duration': 3.001}, {'end': 2390.128, 'text': 'and in cat and concatenation is the process of taking one string and then appending another string onto the end of it.', 'start': 2383.323, 'duration': 6.805}, {'end': 2393.01, 'text': "So you're essentially just adding two strings together.", 'start': 2390.468, 'duration': 2.542}, {'end': 2397.173, 'text': 'So for example, over here, I can say string phrase is equal to Draft Academy.', 'start': 2393.49, 'duration': 3.683}, {'end': 2399.374, 'text': 'And then I could use this plus sign.', 'start': 2397.193, 'duration': 2.181}, {'end': 2402.356, 'text': 'And then this is basically going to add another string onto that.', 'start': 2399.494, 'duration': 2.862}, {'end': 2405.378, 'text': 'So I could say like, is cool.', 'start': 2402.416, 'duration': 2.962}, {'end': 2410.481, 'text': "And now when I print out phrase, it's going to be printing out draft academy is cool.", 'start': 2405.898, 'duration': 4.583}, {'end': 2415.185, 'text': 'So it basically just added those two strings together, we would call that concatenation.', 'start': 2410.521, 'duration': 4.664}, {'end': 2416.226, 'text': 'And that can be really useful.', 'start': 2415.205, 'duration': 1.021}, {'end': 2420.949, 'text': 'Another thing we can do in our programs is find out information about our strings.', 'start': 2416.666, 'duration': 4.283}, {'end': 2426.713, 'text': 'So sometimes you might want to figure out different pieces of information about the string, figure out some attributes about it.', 'start': 2421.009, 'duration': 5.704}, {'end': 2435.551, 'text': "So let's say we want to figure out how many characters were inside of this string, I could just say phrase dot length, and that's what the capital L.", 'start': 2427.014, 'duration': 8.537}, {'end': 2440.438, 'text': "And now what this is going to do is it's actually going to tell me how many characters are inside of this string.", 'start': 2435.551, 'duration': 4.887}], 'summary': 'The transcript covers string manipulation in c# including new line characters, concatenation, and accessing string attributes like length.', 'duration': 164.056, 'max_score': 2276.382, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ82276382.jpg'}, {'end': 2859.53, 'src': 'embed', 'start': 2830.467, 'weight': 3, 'content': [{'end': 2831.508, 'text': 'So that can be pretty useful.', 'start': 2830.467, 'duration': 1.041}, {'end': 2835.811, 'text': "So that's how we can use phrase dot index of and that'll come in handy a lot.", 'start': 2831.928, 'duration': 3.883}, {'end': 2840.113, 'text': "There's also one more of these string methods that I want to show you and it's called substring.", 'start': 2835.831, 'duration': 4.282}, {'end': 2845.658, 'text': 'So I can say phrase dot substring, I can make an open and close parentheses.', 'start': 2840.134, 'duration': 5.524}, {'end': 2848.981, 'text': "And I'm actually going to need to give this a value.", 'start': 2846.158, 'duration': 2.823}, {'end': 2854.886, 'text': "So basically, what this will allow me to do is it'll allow me to grab a part of this string.", 'start': 2849.061, 'duration': 5.825}, {'end': 2859.53, 'text': 'So I can grab like one part of the string and then print that out onto the screen.', 'start': 2854.966, 'duration': 4.564}], 'summary': 'Introducing useful string methods like index of and substring for manipulating strings.', 'duration': 29.063, 'max_score': 2830.467, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ82830467.jpg'}, {'end': 2958.423, 'src': 'embed', 'start': 2928.204, 'weight': 1, 'content': [{'end': 2930.526, 'text': "So that's kind of the basics of working with strings.", 'start': 2928.204, 'duration': 2.322}, {'end': 2934.988, 'text': 'And, you know, so I showed you guys kind of how we can work with them different things we could do like concatenation.', 'start': 2930.606, 'duration': 4.382}, {'end': 2936.89, 'text': 'And we can also print out things like new lines.', 'start': 2935.029, 'duration': 1.861}, {'end': 2943.194, 'text': 'We also looked at getting information about a string like the length and you know, individual characters in the string.', 'start': 2937.43, 'duration': 5.764}, {'end': 2945.695, 'text': 'we talked about the string indexes.', 'start': 2943.194, 'duration': 2.501}, {'end': 2950.198, 'text': 'we also talked about different methods that we can use to do different things with our strings.', 'start': 2945.695, 'duration': 4.503}, {'end': 2954.801, 'text': "So hopefully that kind of gets you up to speed with why strings are awesome and how they're useful.", 'start': 2950.538, 'duration': 4.263}, {'end': 2958.423, 'text': "And to be honest with you, there's a lot more of these little methods that you can use.", 'start': 2954.861, 'duration': 3.562}], 'summary': 'Working with strings: concatenation, new lines, length, indexes, and methods for manipulation. strings are useful.', 'duration': 30.219, 'max_score': 2928.204, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ82928204.jpg'}, {'end': 3050.738, 'src': 'embed', 'start': 3025.554, 'weight': 4, 'content': [{'end': 3030.539, 'text': "There's a whole number, which we would refer to as like an integer, and then there's a decimal number.", 'start': 3025.554, 'duration': 4.985}, {'end': 3035.203, 'text': 'So those two different types of numbers are going to be really useful in our C sharp programs.', 'start': 3030.979, 'duration': 4.224}, {'end': 3041.109, 'text': "But it's important that you know that C sharp does distinguish between those two types of numbers.", 'start': 3035.623, 'duration': 5.486}, {'end': 3046.614, 'text': 'So there is a big difference between working with whole numbers and working with decimal numbers.', 'start': 3041.569, 'duration': 5.045}, {'end': 3050.738, 'text': "And that's something that you just want to be aware of, as you sort of go through and write your programs.", 'start': 3046.634, 'duration': 4.104}], 'summary': 'C sharp distinguishes between integers and decimal numbers, important in programming.', 'duration': 25.184, 'max_score': 3025.554, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ83025554.jpg'}, {'end': 3528.816, 'src': 'embed', 'start': 3502.281, 'weight': 2, 'content': [{'end': 3507.222, 'text': "there's going to be a lot of situations in C sharp where you might have two numbers.", 'start': 3502.281, 'duration': 4.941}, {'end': 3511.864, 'text': "maybe they're stored inside of variables and you don't necessarily know which one is bigger.", 'start': 3507.222, 'duration': 4.642}, {'end': 3514.445, 'text': 'So you can use that math function to figure that out.', 'start': 3512.284, 'duration': 2.161}, {'end': 3516.226, 'text': "There's also another one called min.", 'start': 3514.505, 'duration': 1.721}, {'end': 3517.706, 'text': 'And that just does the opposite.', 'start': 3516.246, 'duration': 1.46}, {'end': 3520.307, 'text': 'So now this will give us the smaller of the two numbers.', 'start': 3517.746, 'duration': 2.561}, {'end': 3521.688, 'text': "So we're going to get four back.", 'start': 3520.407, 'duration': 1.281}, {'end': 3523.43, 'text': "There's one more that I want to show you guys.", 'start': 3522.048, 'duration': 1.382}, {'end': 3525.712, 'text': "It's called math dot round.", 'start': 3523.85, 'duration': 1.862}, {'end': 3528.816, 'text': 'And this is a really great way to round numbers.', 'start': 3526.193, 'duration': 2.623}], 'summary': 'In c sharp, math functions like max, min, and round help work with numbers effectively.', 'duration': 26.535, 'max_score': 3502.281, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ83502281.jpg'}], 'start': 2145.385, 'title': 'C# data types, strings, manipulation, and numbers', 'summary': 'Covers core data types, string manipulation, and working with strings and numbers in c#, providing practical examples and techniques. it includes coverage of strings, characters, numbers, boolean values, string manipulation techniques, working with numbers, and math operations.', 'chapters': [{'end': 2346.25, 'start': 2145.385, 'title': 'C# data types & strings tutorial', 'summary': 'Covers the core data types in c# including strings, characters, numbers, and boolean values, highlighting their usage and practical applications, and also delves into leveraging the power of strings with special characters and formatting techniques.', 'duration': 200.865, 'highlights': ['C# data types are predominantly strings, characters, numbers, and Boolean values, with 99% of programming tasks achievable using these types.', 'Constants, representing data types outside of variables, can be utilized for values like numbers and Booleans, without storing them in variables.', 'The tutorial provides insights into leveraging strings in C# programming, demonstrating practical applications such as using new line characters and handling special characters like quotation marks. ']}, {'end': 2927.684, 'start': 2346.61, 'title': 'String manipulation in c#', 'summary': 'Covers various string manipulation techniques, including storing strings in variables, concatenation, finding string length, using string methods for case conversion, checking string containment, indexing and using the substring method, providing practical examples and quantifiable data.', 'duration': 581.074, 'highlights': ['The substring method allows grabbing a part of the string starting at a specified index and going to the end of the string or a specified length, demonstrated with examples, providing practical use cases for string manipulation.', 'Using the index of method to find the index position of a specified substring or character inside a string, with examples demonstrating its usage and practical applications.', 'Demonstration of methods for converting strings to uppercase and lowercase, showcasing their usage and practical applications for modifying string values.', 'Explaining the concept of variables as containers for storing pieces of information and demonstrating the storing of strings in variables, providing an understanding of variable usage in string manipulation.', 'Illustrating the process of concatenation, adding one string to another, with practical examples and its relevance in string manipulation tasks.', 'Demonstrating the finding of string length using the length property, exemplifying the practical application of obtaining information about the string content.']}, {'end': 3182.899, 'start': 2928.204, 'title': 'Working with strings and numbers in c#', 'summary': 'Covers working with strings in c# including concatenation, new lines, string length, individual characters, string indexes, and methods. it also provides an overview of working with numbers, different types of numbers, complex math operations, and mathematical equations in c#.', 'duration': 254.695, 'highlights': ['The chapter covers working with strings including concatenation, new lines, string length, individual characters, string indexes, and methods.', 'Overview of working with numbers, different types of numbers, complex math operations, and mathematical equations in C#.', 'Explanation of basic math operations like addition, subtraction, division, multiplication, and the modulus operator.', 'Usage of parentheses to change the order of operations in mathematical equations.']}, {'end': 3598.449, 'start': 3183.099, 'title': 'Working with numbers in c#', 'summary': 'Explains the distinction between integers and decimal numbers in c# and how different mathematical operations and variable storage work with them, while also demonstrating the usage of math methods in c#.', 'duration': 415.35, 'highlights': ['C# distinguishes between integers and decimal numbers, affecting the results of mathematical operations; for example, operations with two integers always yield an integer, while a decimal and an integer yield a double, impacting the precision of the results.', 'Variables can store numbers, and operations like incrementing (num++) or decrementing (num--) by one come in handy for shorthand usage in C#.', 'Methods in C# offer various math operations such as absolute value (ABS), exponentiation (POW), square root (SQRT), finding the maximum value (Max), finding the minimum value (Min), and rounding numbers (Round), providing a wide array of mathematical functionalities for C# programmers.']}], 'duration': 1453.064, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ82145385.jpg', 'highlights': ['C# data types are predominantly strings, characters, numbers, and Boolean values, with 99% of programming tasks achievable using these types.', 'The chapter covers working with strings including concatenation, new lines, string length, individual characters, string indexes, and methods.', 'Methods in C# offer various math operations such as absolute value (ABS), exponentiation (POW), square root (SQRT), finding the maximum value (Max), finding the minimum value (Min), and rounding numbers (Round), providing a wide array of mathematical functionalities for C# programmers.', 'The substring method allows grabbing a part of the string starting at a specified index and going to the end of the string or a specified length, demonstrated with examples, providing practical use cases for string manipulation.', 'C# distinguishes between integers and decimal numbers, affecting the results of mathematical operations; for example, operations with two integers always yield an integer, while a decimal and an integer yield a double, impacting the precision of the results.']}, {'end': 4470.621, 'segs': [{'end': 3638.746, 'src': 'embed', 'start': 3598.449, 'weight': 0, 'content': [{'end': 3600.451, 'text': 'and all that stuff in C sharp.', 'start': 3598.449, 'duration': 2.002}, {'end': 3609.024, 'text': "In this tutorial, I'm gonna show you guys how to get input from a user in C sharp.", 'start': 3604.44, 'duration': 4.584}, {'end': 3614.949, 'text': 'Now one of the cool things about C sharp is we can actually have our programs interact with the user.', 'start': 3609.565, 'duration': 5.384}, {'end': 3618.472, 'text': 'So I can run my program, and I can actually like give it some information.', 'start': 3614.989, 'duration': 3.483}, {'end': 3621.235, 'text': 'And it can use that information to do different things.', 'start': 3618.552, 'duration': 2.683}, {'end': 3628.221, 'text': 'And when you think about it, most programs that you probably use on a daily basis are going to allow you to input information into them.', 'start': 3621.735, 'duration': 6.486}, {'end': 3631.963, 'text': "And then depending on the information that you input, they're going to do different things.", 'start': 3628.261, 'duration': 3.702}, {'end': 3638.746, 'text': "So today we're going to look at the most basic form of that, which is just, you know, allowing the user to basically like, type in a value,", 'start': 3632.123, 'duration': 6.623}], 'summary': 'Tutorial on getting user input in c sharp for program interaction.', 'duration': 40.297, 'max_score': 3598.449, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ83598449.jpg'}, {'end': 4080.521, 'src': 'embed', 'start': 4053.249, 'weight': 1, 'content': [{'end': 4056.811, 'text': 'And you probably just want to practice with this and maybe make it a little application of your own.', 'start': 4053.249, 'duration': 3.562}, {'end': 4065.848, 'text': "In this tutorial, I'm gonna show you guys how to build a basic calculator in C sharp.", 'start': 4061.164, 'duration': 4.684}, {'end': 4074.816, 'text': "So we're basically going to build a little program where the user can enter in two numbers and then our program will add them together and spit out the answer onto the screen.", 'start': 4066.288, 'duration': 8.528}, {'end': 4075.957, 'text': 'So should be kind of cool.', 'start': 4074.856, 'duration': 1.101}, {'end': 4080.521, 'text': "And we're also going to talk about getting numbers as input from the user.", 'start': 4076.017, 'duration': 4.504}], 'summary': 'Tutorial on building a basic calculator in c sharp, adding two numbers and displaying the result.', 'duration': 27.272, 'max_score': 4053.249, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ84053249.jpg'}, {'end': 4194.154, 'src': 'embed', 'start': 4166.826, 'weight': 4, 'content': [{'end': 4169.846, 'text': "So I'm going to set equal to a string that has a number in it like 45.", 'start': 4166.826, 'duration': 3.02}, {'end': 4176.209, 'text': "You'll see over here, C sharp is yelling at us because this number is actually a string.", 'start': 4169.846, 'duration': 6.363}, {'end': 4180.529, 'text': "So it's not going to be able to be stored inside of an integer variable.", 'start': 4176.269, 'duration': 4.26}, {'end': 4184.43, 'text': 'So we need to convert this into a integer.', 'start': 4181.05, 'duration': 3.38}, {'end': 4190.633, 'text': 'And the way that we can do that is by typing out convert like that not in with a capital letter, and then dot.', 'start': 4184.591, 'duration': 6.042}, {'end': 4194.154, 'text': 'And now we need to specify what we want to convert.', 'start': 4191.133, 'duration': 3.021}], 'summary': 'Convert a string with a number into an integer using c#.', 'duration': 27.328, 'max_score': 4166.826, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ84166826.jpg'}, {'end': 4462.898, 'src': 'embed', 'start': 4426.61, 'weight': 5, 'content': [{'end': 4427.411, 'text': 'And enter another number.', 'start': 4426.61, 'duration': 0.801}, {'end': 4428.452, 'text': "So why don't we enter in a three.", 'start': 4427.431, 'duration': 1.021}, {'end': 4435.438, 'text': "And so now it's going to convert both of those into integers, and add them together and we get 13.", 'start': 4429.252, 'duration': 6.186}, {'end': 4437.621, 'text': 'So it looks like the program is working out pretty well.', 'start': 4435.438, 'duration': 2.183}, {'end': 4443.667, 'text': "There's actually a problem with this program, though, if I was trying to add a integer number with a decimal number,", 'start': 4437.641, 'duration': 6.026}, {'end': 4449.853, 'text': 'so if I said like four and over here, I put in like a 2.6..', 'start': 4443.667, 'duration': 6.186}, {'end': 4451.194, 'text': 'this is actually not going to work.', 'start': 4449.853, 'duration': 1.341}, {'end': 4454.155, 'text': "So you'll see the program isn't actually printing anything out.", 'start': 4451.214, 'duration': 2.941}, {'end': 4462.898, 'text': "That's because the program is stalling. we didn't enter in a correct value. we entered in a decimal value and this can't be converted into an integer.", 'start': 4454.515, 'duration': 8.383}], 'summary': 'Program adds 3 and 10, outputs 13. issue with adding integer and decimal numbers.', 'duration': 36.288, 'max_score': 4426.61, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ84426610.jpg'}], 'start': 3598.449, 'title': 'Getting user input in c#', 'summary': 'Covers the basics of getting user input in c#, emphasizing the significance of allowing users to input information into programs for various functionalities. it also explains how to build a basic calculator program that prompts the user to enter two numbers, adds them together, and prints out the answer.', 'chapters': [{'end': 3638.746, 'start': 3598.449, 'title': 'C# user input tutorial', 'summary': 'Covers the basics of getting user input in c#, highlighting the importance of user interaction in programs and how it can be used to perform different tasks, emphasizing the significance of allowing users to input information into programs for various functionalities.', 'duration': 40.297, 'highlights': ['The tutorial demonstrates how to get input from a user in C# and emphasizes the interaction between programs and users, showcasing the ability to use input information for different tasks.', 'It highlights the importance of allowing users to input information into programs for various functionalities and how it can be used to perform different tasks.', 'The tutorial emphasizes the significance of user interaction in programs and how it can be used to perform different tasks, showcasing the ability to use input information for different functionalities.']}, {'end': 4470.621, 'start': 3638.746, 'title': 'Getting user input in c# and building a basic calculator', 'summary': 'Explains how to get user input in c# using console dot read line, store it in variables, and build a basic calculator program that prompts the user to enter two numbers, adds them together, and prints out the answer, demonstrating the conversion of a string into an integer.', 'duration': 831.875, 'highlights': ['The chapter explains how to get user input in C# using console dot read line, store it in variables, and build a basic calculator program that prompts the user to enter two numbers, adds them together, and prints out the answer', 'Demonstrates the conversion of a string into an integer using the convert dot two int 32 method in C#', 'Shows how to handle the situation where a decimal number is entered and explains the issue with converting a decimal number into an integer in C#']}], 'duration': 872.172, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ83598449.jpg', 'highlights': ['The tutorial demonstrates how to get input from a user in C# and emphasizes the interaction between programs and users, showcasing the ability to use input information for different tasks.', 'The chapter explains how to get user input in C# using console dot read line, store it in variables, and build a basic calculator program that prompts the user to enter two numbers, adds them together, and prints out the answer', 'It highlights the importance of allowing users to input information into programs for various functionalities and how it can be used to perform different tasks.', 'The tutorial emphasizes the significance of user interaction in programs and how it can be used to perform different tasks, showcasing the ability to use input information for different functionalities.', 'Demonstrates the conversion of a string into an integer using the convert dot two int 32 method in C#', 'Shows how to handle the situation where a decimal number is entered and explains the issue with converting a decimal number into an integer in C#']}, {'end': 6358.169, 'segs': [{'end': 4497.043, 'src': 'embed', 'start': 4470.681, 'weight': 0, 'content': [{'end': 4477.504, 'text': 'So, if I wanted to allow this program to be able to handle decimal numbers instead of converting these to integers,', 'start': 4470.681, 'duration': 6.823}, {'end': 4479.084, 'text': "I'd want to convert them to doubles.", 'start': 4477.504, 'duration': 1.58}, {'end': 4483.846, 'text': 'So I could change both of these to doubles like this double double.', 'start': 4479.224, 'duration': 4.622}, {'end': 4488.808, 'text': 'And instead of saying convert dot two and 32, I could say convert dot two double.', 'start': 4484.586, 'duration': 4.222}, {'end': 4490.989, 'text': 'And same thing down here.', 'start': 4489.608, 'duration': 1.381}, {'end': 4497.043, 'text': 'And now we should be able to work with decimal numbers in our program.', 'start': 4493.001, 'duration': 4.042}], 'summary': 'To handle decimal numbers, convert integers to doubles in the program.', 'duration': 26.362, 'max_score': 4470.681, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ84470681.jpg'}, {'end': 4891.365, 'src': 'embed', 'start': 4864.709, 'weight': 2, 'content': [{'end': 4868.912, 'text': 'So, essentially with very few lines of code I mean this is probably, you know,', 'start': 4864.709, 'duration': 4.203}, {'end': 4874.296, 'text': '10 lines of code we were able to write out an entire Mad Lib in C sharp.', 'start': 4868.912, 'duration': 5.384}, {'end': 4882.497, 'text': "In this tutorial, I'm going to talk to you guys about arrays in C sharp.", 'start': 4878.453, 'duration': 4.044}, {'end': 4887.702, 'text': "A lot of times when we're writing programs in C sharp, we're going to be dealing with all types of data.", 'start': 4882.957, 'duration': 4.745}, {'end': 4891.365, 'text': "And a lot of times we're going to be dealing with large amounts of data.", 'start': 4888.122, 'duration': 3.243}], 'summary': 'A tutorial on writing a mad lib in c sharp using 10 lines of code and discussing the use of arrays and handling large amounts of data.', 'duration': 26.656, 'max_score': 4864.709, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ84864709.jpg'}, {'end': 4974.158, 'src': 'embed', 'start': 4947.496, 'weight': 4, 'content': [{'end': 4953.121, 'text': 'So an array can hold like 20 different values that you would normally have to put inside of a variable.', 'start': 4947.496, 'duration': 5.625}, {'end': 4957.425, 'text': "So I'm gonna show you guys how we can create arrays and talk about sort of the basics of using them.", 'start': 4953.161, 'duration': 4.264}, {'end': 4961.368, 'text': "And I'll kind of get you guys up to speed with using arrays in C sharp.", 'start': 4957.565, 'duration': 3.803}, {'end': 4965.672, 'text': "So down here in my program, I'm going to go ahead and create an array.", 'start': 4961.809, 'duration': 3.863}, {'end': 4969.876, 'text': 'And remember, an array is just a container that can hold a bunch of pieces of information.', 'start': 4966.032, 'duration': 3.844}, {'end': 4974.158, 'text': 'So we create an array very similar to how we create a variable.', 'start': 4970.336, 'duration': 3.822}], 'summary': 'An array in c# can hold 20 different values, simplifying storage and retrieval of information.', 'duration': 26.662, 'max_score': 4947.496, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ84947496.jpg'}, {'end': 5440.838, 'src': 'embed', 'start': 5416.73, 'weight': 1, 'content': [{'end': 5424.059, 'text': 'So what we can actually do is we can create something called a method which will allow us to take all that code and put it into its own little container.', 'start': 5416.73, 'duration': 7.329}, {'end': 5429.486, 'text': 'And then we want to execute it and we want to perform the task that that code is going to carry out.', 'start': 5424.079, 'duration': 5.407}, {'end': 5434.391, 'text': "we can just call that method and we'll be able to reuse it in different spots in our program.", 'start': 5429.486, 'duration': 4.905}, {'end': 5437.555, 'text': "So I'm gonna show you guys exactly how to create a method.", 'start': 5434.451, 'duration': 3.104}, {'end': 5440.838, 'text': "And we're going to talk exactly about what it does and how they're useful.", 'start': 5437.695, 'duration': 3.143}], 'summary': 'Creating a method to encapsulate code for reuse and execution in different parts of the program.', 'duration': 24.108, 'max_score': 5416.73, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ85416730.jpg'}, {'end': 6045.758, 'src': 'embed', 'start': 6014.496, 'weight': 3, 'content': [{'end': 6019.76, 'text': "Now, in the next video, I'm going to talk to you guys about this value over here, which is going to be the return value.", 'start': 6014.496, 'duration': 5.264}, {'end': 6025.924, 'text': 'So in addition to passing information into methods, methods can also pass information back to the callers.', 'start': 6019.84, 'duration': 6.084}, {'end': 6028.165, 'text': "And we're going to talk about that in the next tutorial.", 'start': 6025.984, 'duration': 2.181}, {'end': 6038.016, 'text': "In this tutorial, I'm going to show you guys how to use return statements in C sharp methods.", 'start': 6032.475, 'duration': 5.541}, {'end': 6045.758, 'text': 'So in C sharp, a method is basically just a little block of code, which is designed to perform a specific task.', 'start': 6038.636, 'duration': 7.122}], 'summary': 'Tutorial on using return statements in c sharp methods.', 'duration': 31.262, 'max_score': 6014.496, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ86014496.jpg'}], 'start': 4470.681, 'title': 'C# programming concepts', 'summary': 'Covers handling decimal numbers, building a mad libs game, c# array basics, and using methods in c#. it includes examples such as converting numbers to doubles, creating arrays, and demonstrating method usage, with highlights on flexibility, simplicity, and code reusability.', 'chapters': [{'end': 4513.512, 'start': 4470.681, 'title': 'Handling decimal numbers in program', 'summary': 'Discusses the process of converting numbers to doubles to handle decimal numbers in a program, emphasizing the flexibility of using doubles over integers and demonstrating the addition of 2 and 3.6 as an example.', 'duration': 42.831, 'highlights': ['The importance of converting numbers to doubles to work with decimal numbers in a program, highlighting the flexibility of using doubles over integers.', 'Demonstrating the addition of 2 and 3.6 as an example of working with decimal numbers in a program.']}, {'end': 5248.876, 'start': 4513.792, 'title': 'Building mad libs game in c#', 'summary': 'Illustrates how to build a mad libs game in c# by prompting the user for input, storing the input in variables, and integrating them into a story, showcasing a simple implementation with 10 lines of code, and then introduces the concept of arrays in c#, explaining how to create and access individual elements within an array.', 'duration': 735.084, 'highlights': ['The chapter illustrates how to build a Mad Libs game in C# by prompting the user for input, storing the input in variables, and integrating them into a story, showcasing a simple implementation with 10 lines of code.', 'The chapter introduces the concept of arrays in C#, explaining how to create and access individual elements within an array.']}, {'end': 5667.556, 'start': 5248.916, 'title': 'C# array basics and methods', 'summary': 'Explains the basics of creating arrays in c#, including populating arrays with values and creating empty arrays with a specified number of elements. it also introduces the concept of methods in c#, detailing how to create and use a method to perform a specific task.', 'duration': 418.64, 'highlights': ['The chapter explains the basics of creating arrays in C#.', 'Creating empty arrays with a specified number of elements.', 'Introducing the concept of methods in C# and creating a method to perform a specific task.']}, {'end': 6101.13, 'start': 5668.077, 'title': 'Using methods in c#', 'summary': 'Explains the concept of methods in c#, demonstrating how to create and call methods, pass parameters, handle return values, and reuse code effectively, highlighting the capability to pass different information to methods and the use of return statements.', 'duration': 433.053, 'highlights': ['Methods allow for the reuse of code by containing it inside its own single container, enabling the execution of specific tasks whenever called.', 'Demonstrated the passing of parameters to methods, showcasing the ability to specify parameters such as strings and integers, and handle errors when calling methods without necessary parameters.', "Explained the interchangeability of the terms 'methods' and 'functions' in C# and highlighted the significance of return values in methods, foreshadowing the upcoming discussion on return statements."]}, {'end': 6358.169, 'start': 6101.65, 'title': 'C# method return type and return keyword', 'summary': 'Explains the concept of method return type and the use of the return keyword in c#, demonstrating the process of defining a method with a return type of integer, using the return keyword to pass the value back to the caller, and highlighting the ability to return different data types and even arrays from methods.', 'duration': 256.519, 'highlights': ['The chapter explains the concept of method return type and the use of the return keyword in C#, demonstrating the process of defining a method with a return type of integer, using the return keyword to pass the value back to the caller, and highlighting the ability to return different data types and even arrays from methods.', 'The tutorial introduces the concept of a method return type, specifically focusing on using a return type of integer and demonstrating the process of defining a method to return the cubed value of a number, such as cubing the number 5 and returning the value 125.', 'The tutorial emphasizes the usage of the return keyword to pass the value back to the caller and illustrates the process through an example of defining a method to return the cubed value of a number and then printing out the result, showcasing the utility of obtaining information from a method.']}], 'duration': 1887.488, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ84470681.jpg', 'highlights': ['The importance of converting numbers to doubles to work with decimal numbers in a program, highlighting the flexibility of using doubles over integers.', 'Methods allow for the reuse of code by containing it inside its own single container, enabling the execution of specific tasks whenever called.', 'The chapter illustrates how to build a Mad Libs game in C# by prompting the user for input, storing the input in variables, and integrating them into a story, showcasing a simple implementation with 10 lines of code.', 'The chapter explains the concept of method return type and the use of the return keyword in C#, demonstrating the process of defining a method with a return type of integer, using the return keyword to pass the value back to the caller, and highlighting the ability to return different data types and even arrays from methods.', 'Introducing the concept of arrays in C#, explaining how to create and access individual elements within an array.']}, {'end': 8574.601, 'segs': [{'end': 6386.092, 'src': 'embed', 'start': 6358.229, 'weight': 0, 'content': [{'end': 6361.332, 'text': 'But returning information can be extremely useful.', 'start': 6358.229, 'duration': 3.103}, {'end': 6365.096, 'text': "And you're definitely going to want to use it inside of your C sharp methods.", 'start': 6361.392, 'duration': 3.704}, {'end': 6373.835, 'text': "In this tutorial I'm going to talk to you guys about if statements in C sharp and when,", 'start': 6369.088, 'duration': 4.747}, {'end': 6382.046, 'text': 'if statement is basically a special structure in our program which will allow our program to respond to different situations.', 'start': 6373.835, 'duration': 8.211}, {'end': 6386.092, 'text': 'So essentially, with if statements, our programs can become smarter.', 'start': 6382.126, 'duration': 3.966}], 'summary': 'Using if statements in c# can make programs smarter.', 'duration': 27.863, 'max_score': 6358.229, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ86358229.jpg'}, {'end': 6428.193, 'src': 'embed', 'start': 6400.715, 'weight': 4, 'content': [{'end': 6405.076, 'text': 'So over here, I have some examples of if statements that you might see on a daily basis.', 'start': 6400.715, 'duration': 4.361}, {'end': 6409.997, 'text': "So up here, it says, I wake up if I'm hungry, I eat breakfast.", 'start': 6405.116, 'duration': 4.881}, {'end': 6416.623, 'text': 'So this is an example of an if statement, essentially, an if statement has two parts, it has a condition, which is right here.', 'start': 6410.457, 'duration': 6.166}, {'end': 6421.707, 'text': 'And then it has an action that gets executed when the condition is true.', 'start': 6417.223, 'duration': 4.484}, {'end': 6425.631, 'text': "So our condition up here is if I'm hungry now.", 'start': 6422.208, 'duration': 3.423}, {'end': 6428.193, 'text': 'this condition is either true or false.', 'start': 6425.631, 'duration': 2.562}], 'summary': "Examples of if statements: 'i wake up if i'm hungry, i eat breakfast.'", 'duration': 27.478, 'max_score': 6400.715, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ86400715.jpg'}, {'end': 6757.714, 'src': 'embed', 'start': 6726.349, 'weight': 2, 'content': [{'end': 6729.711, 'text': 'So this program can respond to this variable right?', 'start': 6726.349, 'duration': 3.362}, {'end': 6735.153, 'text': "If is male is true, then we're going to print out you are male.", 'start': 6730.251, 'duration': 4.902}, {'end': 6738.914, 'text': "if is male is false, then we're going to print out you are not male.", 'start': 6735.153, 'duration': 3.761}, {'end': 6747.497, 'text': "So our program is smart, our program can adapt and adjust what it's doing, depending on the value of a variable.", 'start': 6739.354, 'duration': 8.143}, {'end': 6750.913, 'text': 'And therein lies the essence of if statements.', 'start': 6747.952, 'duration': 2.961}, {'end': 6757.714, 'text': 'if statements allow our programs to make decisions and to do different things when different conditions are met.', 'start': 6750.913, 'duration': 6.801}], 'summary': 'Program uses if statements to make decisions based on variable values.', 'duration': 31.365, 'max_score': 6726.349, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ86726349.jpg'}, {'end': 7835.672, 'src': 'embed', 'start': 7806.401, 'weight': 3, 'content': [{'end': 7810.682, 'text': 'So I can compare like two characters, you know, basically like that.', 'start': 7806.401, 'duration': 4.281}, {'end': 7812.763, 'text': "And that's going to work out just fine.", 'start': 7811.343, 'duration': 1.42}, {'end': 7815.324, 'text': 'So these comparisons are extremely useful.', 'start': 7813.163, 'duration': 2.161}, {'end': 7820.306, 'text': "And I would say that a lot of times when you're using if statements, you're going to be using comparisons just like that.", 'start': 7815.364, 'duration': 4.942}, {'end': 7829.504, 'text': "In this tutorial, I'm going to show you guys how to build a four function calculator in C sharp.", 'start': 7824.577, 'duration': 4.927}, {'end': 7835.672, 'text': "Now, if you've been following along with this course, you'll know that in the beginning of the course, we actually created a very simple calculator.", 'start': 7830.024, 'duration': 5.648}], 'summary': 'Comparison and if statements are essential in building a four function calculator in c sharp.', 'duration': 29.271, 'max_score': 7806.401, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ87806401.jpg'}, {'end': 8249.95, 'src': 'embed', 'start': 8225.094, 'weight': 1, 'content': [{'end': 8231.718, 'text': 'So we can use the if statement to figure out what calculation or what operation the user wanted to do.', 'start': 8225.094, 'duration': 6.624}, {'end': 8235.581, 'text': 'And we can just keep using all these different else ifs in order to figure that out.', 'start': 8231.879, 'duration': 3.702}, {'end': 8237.402, 'text': 'So this is extremely useful.', 'start': 8235.641, 'duration': 1.761}, {'end': 8240.843, 'text': 'And hopefully you can find a use for something like this in your programs.', 'start': 8237.582, 'duration': 3.261}, {'end': 8249.95, 'text': 'In this tutorial, I want to show you guys how to use switch statements in C sharp.', 'start': 8245.248, 'duration': 4.702}], 'summary': 'Using if and else if statements to determine user operations in c#.', 'duration': 24.856, 'max_score': 8225.094, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ88225093.jpg'}], 'start': 6358.229, 'title': 'Using if and switch statements in c#', 'summary': 'Discusses the use of if statements and comparisons in c# programs, illustrating their role in making decisions based on conditions and demonstrating the implementation of switch statements to efficiently handle multiple conditions. real-life examples and practical demonstrations are provided throughout the chapter.', 'chapters': [{'end': 6478.174, 'start': 6358.229, 'title': 'Using if statements in c# programs', 'summary': "Discusses the use of if statements in c# programs, highlighting how they allow programs to respond to different situations and make decisions based on conditions, using real-life examples such as deciding to eat breakfast when hungry and charging a phone when it's about to die.", 'duration': 119.945, 'highlights': ['If statements in C# allow programs to respond to different situations, making them smarter and more adaptable.', 'An if statement consists of a condition and an action that gets executed when the condition is true, with the condition having only two possible values: true or false.', "Real-life examples, such as deciding to eat breakfast when hungry and charging a phone when it's about to die, illustrate the use of if statements in making decisions based on conditions."]}, {'end': 7030.562, 'start': 6478.634, 'title': 'Understanding if statements in c#', 'summary': 'Introduces the concept of if statements in c#, demonstrating their use in a program to make decisions based on conditions, such as determining if a person is male and/or tall, and executing different actions accordingly.', 'duration': 551.928, 'highlights': ['The chapter introduces the concept of if statements in C#', 'Demonstrating the use of if statements in a program to make decisions based on conditions', "Showing the use of 'if' and 'else if' statements to check multiple conditions"]}, {'end': 7741.466, 'start': 7030.722, 'title': 'Using if statements and comparisons', 'summary': 'Illustrates the use of if statements and comparisons to make decisions based on different conditions, while also demonstrating the creation of a method to compare numbers and determine the maximum value, allowing the program to respond to different input values.', 'duration': 710.744, 'highlights': ['The chapter illustrates the use of if statements to make decisions based on different conditions, such as checking if a person is male and not tall, allowing the program to respond to different input values.', 'The creation of a method to compare numbers and determine the maximum value is demonstrated, allowing the program to respond to different input values.', 'The comparison of numbers using if statements enables the program to determine the maximum value and respond to different input values.']}, {'end': 8205.98, 'start': 7741.506, 'title': 'Comparison operators and building a four function calculator', 'summary': 'Discusses the usage of comparison operators to compare different values, explains the process of building a four-function calculator in c#, and demonstrates the implementation of if-else statements to perform different operations based on user input.', 'duration': 464.474, 'highlights': ['The chapter discusses the usage of comparison operators to compare different values.', 'The tutorial demonstrates the process of building a four-function calculator in C#.', 'The implementation of if-else statements to perform different operations based on user input is shown.']}, {'end': 8574.601, 'start': 8206.379, 'title': 'C# switch statements tutorial', 'summary': 'Covers the use of switch statements in c# to efficiently handle multiple conditions and provides an example of converting numbers into days of the week using a method, demonstrating the application of switch statements.', 'duration': 368.222, 'highlights': ['The chapter explains the use of switch statements in C# to efficiently handle multiple conditions, which can be useful in program development.', 'A method is created to convert numbers into days of the week, showcasing the practical application of switch statements, where passing different numbers returns the corresponding day of the week.', "The detailed explanation of the syntax and function of switch statements in C# is provided, including the 'case' structure and the use of 'break' statements to control the execution flow."]}], 'duration': 2216.372, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ86358229.jpg', 'highlights': ['If statements in C# allow programs to respond to different situations, making them smarter and more adaptable.', 'The chapter explains the use of switch statements in C# to efficiently handle multiple conditions, which can be useful in program development.', 'The chapter illustrates the use of if statements to make decisions based on different conditions, such as checking if a person is male and not tall, allowing the program to respond to different input values.', 'The tutorial demonstrates the process of building a four-function calculator in C#.', "Real-life examples, such as deciding to eat breakfast when hungry and charging a phone when it's about to die, illustrate the use of if statements in making decisions based on conditions."]}, {'end': 9251.292, 'segs': [{'end': 8617.839, 'src': 'embed', 'start': 8593.436, 'weight': 0, 'content': [{'end': 8600.343, 'text': "That's not zero through six, right? So this case, this switch statement can only handle values zero through six.", 'start': 8593.436, 'duration': 6.907}, {'end': 8605.208, 'text': 'But what happens if someone passed like a 100 into there? Well, I can actually account for that.', 'start': 8600.363, 'duration': 4.845}, {'end': 8611.534, 'text': 'So down here, I can create something called a default, I can basically just type out default, I can type a colon.', 'start': 8605.288, 'duration': 6.246}, {'end': 8617.839, 'text': 'And now down here, I can specify what I want to do if none of these cases are true.', 'start': 8611.974, 'duration': 5.865}], 'summary': 'Switch statement handles values zero through six, with default case for other values.', 'duration': 24.403, 'max_score': 8593.436, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ88593436.jpg'}, {'end': 8686.729, 'src': 'embed', 'start': 8655.947, 'weight': 2, 'content': [{'end': 8659.209, 'text': "So I'm going to say console dot right line.", 'start': 8655.947, 'duration': 3.262}, {'end': 8665.154, 'text': "And I'm going to go ahead and print out get day and let's pass this a zero.", 'start': 8659.77, 'duration': 5.384}, {'end': 8667.276, 'text': "So I'm going to go ahead and say get day zero.", 'start': 8665.234, 'duration': 2.042}, {'end': 8673.521, 'text': 'So hopefully we should get Sunday back because Sunday is mapped to zero.', 'start': 8667.736, 'duration': 5.785}, {'end': 8676.624, 'text': "And you'll see over here that we get Sunday back.", 'start': 8674.602, 'duration': 2.022}, {'end': 8677.444, 'text': "So let's try another one.", 'start': 8676.644, 'duration': 0.8}, {'end': 8678.385, 'text': "Why don't we try?", 'start': 8677.464, 'duration': 0.921}, {'end': 8682.605, 'text': 'for, and I think four is gonna be Thursday.', 'start': 8678.385, 'duration': 4.22}, {'end': 8686.729, 'text': "yeah, so Thursday, and let's try one more.", 'start': 8682.605, 'duration': 4.124}], 'summary': 'Using console commands to print out the day of the week, mapping zero to sunday and verifying with other days.', 'duration': 30.782, 'max_score': 8655.947, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ88655947.jpg'}, {'end': 8727.54, 'src': 'embed', 'start': 8702.362, 'weight': 3, 'content': [{'end': 8708.265, 'text': 'Now, let me just point this out everything that you can do with switch statements you could actually do with if statements.', 'start': 8702.362, 'duration': 5.903}, {'end': 8714.147, 'text': "the reason that we have switch statements, though, is because they make it a lot easier to do essentially what we're doing over here.", 'start': 8708.265, 'duration': 5.882}, {'end': 8716.808, 'text': 'you could do it with if statements, but it would be a lot messier than this.', 'start': 8714.147, 'duration': 2.661}, {'end': 8718.489, 'text': 'And it would be a lot harder to manage.', 'start': 8716.848, 'duration': 1.641}, {'end': 8725.037, 'text': "with switch statements, it's very clear, right? It's very clear what's going on and what values are getting mapped to what code.", 'start': 8718.829, 'duration': 6.208}, {'end': 8727.54, 'text': 'So switch statements are extremely useful.', 'start': 8725.077, 'duration': 2.463}], 'summary': 'Switch statements make code clearer and easier to manage than if statements.', 'duration': 25.178, 'max_score': 8702.362, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ88702362.jpg'}, {'end': 8762.336, 'src': 'embed', 'start': 8739.574, 'weight': 4, 'content': [{'end': 8748.203, 'text': 'Now while loop is basically a programming structure that allows us to loop over a specific block of code, while a certain condition is true.', 'start': 8739.574, 'duration': 8.629}, {'end': 8754.891, 'text': "Basically using while loops, we're able to keep doing something repeatedly while a condition is true.", 'start': 8748.784, 'duration': 6.107}, {'end': 8761.136, 'text': 'And this can come in handy in a bunch of situations and loops are extremely useful in a programming language like C sharp.', 'start': 8754.931, 'duration': 6.205}, {'end': 8762.336, 'text': "So let's get started.", 'start': 8761.676, 'duration': 0.66}], 'summary': 'While loops allow repeated execution based on condition in programming like c sharp.', 'duration': 22.762, 'max_score': 8739.574, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ88739574.jpg'}, {'end': 9061.596, 'src': 'embed', 'start': 9028.291, 'weight': 7, 'content': [{'end': 9028.732, 'text': 'Easy enough.', 'start': 9028.291, 'duration': 0.441}, {'end': 9034.398, 'text': 'Now I do want to warn you guys of something there is a possibility of something called an infinite loop.', 'start': 9029.312, 'duration': 5.086}, {'end': 9040.004, 'text': 'And an infinite loop is a situation where this condition up here never becomes false.', 'start': 9034.458, 'duration': 5.546}, {'end': 9047.97, 'text': 'So, for example, if I was to get rid of this index plus plus, Now this condition up here index less than or equal to five.', 'start': 9040.505, 'duration': 7.465}, {'end': 9049.851, 'text': 'this is always going to be true, right?', 'start': 9047.97, 'duration': 1.881}, {'end': 9052.492, 'text': "Because we're never modifying the value of index.", 'start': 9049.871, 'duration': 2.621}, {'end': 9056.914, 'text': 'when we were incrementing it, eventually we would increment it enough to get to five.', 'start': 9052.492, 'duration': 4.422}, {'end': 9061.596, 'text': "But since we're not increments again, and anymore, we're just going to loop infinitely.", 'start': 9057.474, 'duration': 4.122}], 'summary': 'Beware of infinite loops when coding. missing incrementation can cause loops to run indefinitely.', 'duration': 33.305, 'max_score': 9028.291, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ89028291.jpg'}, {'end': 9201.423, 'src': 'embed', 'start': 9171.389, 'weight': 6, 'content': [{'end': 9174.753, 'text': "I'm going to throw it down here and I want to make sure I put a semicolon after it.", 'start': 9171.389, 'duration': 3.364}, {'end': 9177.977, 'text': "And then up here, instead of saying while I'm going to say do.", 'start': 9175.494, 'duration': 2.483}, {'end': 9183.143, 'text': 'And so now we have another type of loop, which is a do while loop.', 'start': 9179.338, 'duration': 3.805}, {'end': 9192.155, 'text': 'And the difference between a do while loop and a while loop is that a do while loop will execute the code inside of the loop before it checks the condition.', 'start': 9183.584, 'duration': 8.571}, {'end': 9201.423, 'text': "So now, even though index is equal to six, we're still going to be able to execute this loop one time before we look at the condition right.", 'start': 9192.556, 'duration': 8.867}], 'summary': 'Introduction to do-while loop in programming with examples.', 'duration': 30.034, 'max_score': 9171.389, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ89171389.jpg'}], 'start': 8575.181, 'title': 'C# switch statements and loops', 'summary': "Covers the usage of switch statements in c#, including handling default cases and testing the method 'get day' with various inputs, resulting in outputs such as 'sunday', 'thursday', and an 'invalid day number' message. additionally, it discusses the utility of while loops, caution against infinite loops, and introduces the concept of do while loops.", 'chapters': [{'end': 8702.262, 'start': 8575.181, 'title': 'Switch statement in c#', 'summary': "Explains the usage of switch statement in c#, including handling default cases and testing the method 'get day' with various inputs, producing outputs such as 'sunday', 'thursday', and an 'invalid day number' message.", 'duration': 127.081, 'highlights': ['The switch statement can only handle values zero through six.', 'Creating a default case to handle values not included in the switch statement.', "Testing the 'get day' method with inputs zero, four, and eighty."]}, {'end': 9251.292, 'start': 8702.362, 'title': 'C# switch statements and while loops', 'summary': 'Discusses the utility of switch statements and while loops in c# programming, highlighting the advantages of switch statements and providing a detailed explanation of while loops along with a caution against infinite loops, as well as introducing the concept of do while loops.', 'duration': 548.93, 'highlights': ['Switch statements make it a lot easier to do what could be done with if statements, providing clarity and ease of management.', 'While loops in C# allow looping over a specific block of code based on a certain condition, providing a general introduction and demonstration of their functionality.', 'The process of creating and implementing a while loop in C# is explained in detail, including the structure and functionality of while loops with a practical demonstration.', 'The concept of infinite loops is introduced as a cautionary warning, emphasizing the need to avoid situations where the condition never becomes false.', 'The introduction of do while loops as an alternative to while loops is presented, showcasing the difference in execution order and their potential applications.']}], 'duration': 676.111, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ88575181.jpg', 'highlights': ['Switch statement can only handle values zero through six.', 'Creating a default case to handle values not included in the switch statement.', "Testing the 'get day' method with inputs zero, four, and eighty.", 'Switch statements make it easier than if statements, providing clarity and ease of management.', "Introduction and demonstration of while loops' functionality in C#.", 'Explanation of creating and implementing a while loop in C# with practical demonstration.', 'Introduction of do while loops as an alternative to while loops, showcasing the difference in execution order and potential applications.', 'Cautionary warning against infinite loops, emphasizing the need to avoid situations where the condition never becomes false.']}, {'end': 10707.632, 'segs': [{'end': 9489.372, 'src': 'embed', 'start': 9464.673, 'weight': 6, 'content': [{'end': 9472.699, 'text': 'And I do just want to point out that in addition to using a while loop, we also could have used a do while loop in order to write this program.', 'start': 9464.673, 'duration': 8.026}, {'end': 9476.622, 'text': 'So, if you want a little challenge and you want to try and challenge yourself,', 'start': 9473.3, 'duration': 3.322}, {'end': 9480.586, 'text': 'go ahead and try to write this with a do while loop instead of a while loop.', 'start': 9476.622, 'duration': 3.964}, {'end': 9484.629, 'text': 'And if you need to figure out what do while loops are just check out the previous tutorial, I explained what they were.', 'start': 9480.626, 'duration': 4.003}, {'end': 9489.372, 'text': "But for our case, I'm just doing it with a simple while loop just to keep it as straightforward as possible.", 'start': 9485.149, 'duration': 4.223}], 'summary': 'Program could be written using a do while loop for added challenge.', 'duration': 24.699, 'max_score': 9464.673, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ89464673.jpg'}, {'end': 9543.595, 'src': 'embed', 'start': 9514.996, 'weight': 2, 'content': [{'end': 9520.36, 'text': "so I'm going to keep entering and I could keep entering essentially infinitely many times,", 'start': 9514.996, 'duration': 5.364}, {'end': 9523.542, 'text': "and it's going to keep prompting me to guess until I get the word.", 'start': 9520.36, 'duration': 3.182}, {'end': 9531.727, 'text': 'But if I was to type in the secret word, so if I was to type in draft here now, when I hit enter, draft is equal to the secret word.', 'start': 9524.102, 'duration': 7.625}, {'end': 9533.828, 'text': "So we're going to break out of that while loop.", 'start': 9531.867, 'duration': 1.961}, {'end': 9537.071, 'text': "And we're going to get this you win message.", 'start': 9534.449, 'duration': 2.622}, {'end': 9543.595, 'text': "So that's essentially all our game did it allowed us to keep guessing the word until we got it right.", 'start': 9537.151, 'duration': 6.444}], 'summary': 'The game allows infinite guesses until the correct word is entered, breaking the loop and displaying a win message.', 'duration': 28.599, 'max_score': 9514.996, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ89514996.jpg'}, {'end': 9684.442, 'src': 'embed', 'start': 9654.579, 'weight': 5, 'content': [{'end': 9658.541, 'text': 'So we need to essentially tell our program how many times the user can guess.', 'start': 9654.579, 'duration': 3.962}, {'end': 9662.264, 'text': "So I'm just going to make another and I'll just call this guess limit.", 'start': 9659.321, 'duration': 2.943}, {'end': 9666.667, 'text': 'And over here, we can define how many times we want the user to be able to guess.', 'start': 9662.904, 'duration': 3.763}, {'end': 9671.652, 'text': "Well, why don't we say three guesses, I think three guesses is enough, three strikes and you're out.", 'start': 9667.328, 'duration': 4.324}, {'end': 9676.416, 'text': "And so now we're basically limiting the user to three guesses.", 'start': 9672.152, 'duration': 4.264}, {'end': 9679.218, 'text': 'I also want to create one more variable.', 'start': 9677.036, 'duration': 2.182}, {'end': 9680.519, 'text': 'And this is going to be a Boolean.', 'start': 9679.318, 'duration': 1.201}, {'end': 9684.442, 'text': 'And this is going to be called out of guesses.', 'start': 9681.48, 'duration': 2.962}], 'summary': "Program limits user to 3 guesses and tracks if they're out.", 'duration': 29.863, 'max_score': 9654.579, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ89654579.jpg'}, {'end': 10058.28, 'src': 'embed', 'start': 10029.566, 'weight': 4, 'content': [{'end': 10032.667, 'text': "So if either of those conditions is false, we're going to break out of the loop.", 'start': 10029.566, 'duration': 3.101}, {'end': 10039.311, 'text': 'The first thing we do in the loop is we basically use this if statement and we say if guest count is less than guest limit.', 'start': 10033.128, 'duration': 6.183}, {'end': 10047.114, 'text': "And so if the guest count is less than the guest limit, in other words, if they haven't guess three times in our case,", 'start': 10040.171, 'duration': 6.943}, {'end': 10048.815, 'text': "then we're going to prompt them for another guess.", 'start': 10047.114, 'duration': 1.701}, {'end': 10055.058, 'text': "But if they have guessed three times, then we're going to set this out of guesses variable equal to true.", 'start': 10049.035, 'duration': 6.023}, {'end': 10058.28, 'text': "And that's going to trigger us breaking out of the loop.", 'start': 10055.218, 'duration': 3.062}], 'summary': 'Loop breaks if guest count < guest limit; prompts for guess if count < 3, sets out of guesses if count = 3.', 'duration': 28.714, 'max_score': 10029.566, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ810029566.jpg'}, {'end': 10177.488, 'src': 'embed', 'start': 10148.566, 'weight': 7, 'content': [{'end': 10151.609, 'text': "So basically, it's kind of a situation where we have a variable.", 'start': 10148.566, 'duration': 3.043}, {'end': 10156.852, 'text': "And generally, that variable will like keep track of how many times we've gone through the loop, or it can keep track of other things.", 'start': 10151.669, 'duration': 5.183}, {'end': 10166.98, 'text': "But it's sort of a special scenario in our programs where we want to use a loop But we want to have a variable that's going to be changing or doing something every time we go through that loop.", 'start': 10156.933, 'duration': 10.047}, {'end': 10169.202, 'text': 'And this is actually really easy to understand.', 'start': 10167.4, 'duration': 1.802}, {'end': 10173.124, 'text': "I'm just going to show you guys real quick this example that I have down here.", 'start': 10169.202, 'duration': 3.922}, {'end': 10174.906, 'text': "you'll notice that I have a simple while loop.", 'start': 10173.124, 'duration': 1.782}, {'end': 10177.488, 'text': 'So I said this integer, i over here.', 'start': 10175.206, 'duration': 2.282}], 'summary': 'Using a variable to keep track of loop iterations is important in programming, as demonstrated through a simple while loop example.', 'duration': 28.922, 'max_score': 10148.566, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ810148566.jpg'}, {'end': 10314.394, 'src': 'embed', 'start': 10286.219, 'weight': 0, 'content': [{'end': 10288.521, 'text': "So down here, I'm going to go ahead and create a for loop.", 'start': 10286.219, 'duration': 2.302}, {'end': 10294.185, 'text': "And I'll show you guys how this for loop is actually going to be able to do exactly what this while loop is doing,", 'start': 10288.541, 'duration': 5.644}, {'end': 10296.266, 'text': 'but a lot cleaner and a lot simpler.', 'start': 10294.185, 'duration': 2.081}, {'end': 10301.79, 'text': "To create a for loop, I'm just going to say for I'm going to make an open and close parentheses and an open and close curly bracket.", 'start': 10296.786, 'duration': 5.004}, {'end': 10307.712, 'text': "So so far, this is exactly like this while loop, right? It's basically structured the same exact way.", 'start': 10302.31, 'duration': 5.402}, {'end': 10314.394, 'text': "But you'll notice in the while loop inside of the parentheses I only put one thing right I put the loop condition.", 'start': 10308.232, 'duration': 6.162}], 'summary': 'Comparison of for loop and while loop for simplicity and cleanliness.', 'duration': 28.175, 'max_score': 10286.219, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ810286219.jpg'}, {'end': 10590.292, 'src': 'embed', 'start': 10564.279, 'weight': 1, 'content': [{'end': 10570.903, 'text': 'to show you guys how we can use a for loop in order to loop through and print out all the elements inside of this array.', 'start': 10564.279, 'duration': 6.624}, {'end': 10580.028, 'text': 'So I just want to remind you the way that we can access an individual element in an array is by saying the arrays name and then referring to the index of that value.', 'start': 10570.983, 'duration': 9.045}, {'end': 10585.85, 'text': 'So if I said lucky number zero, this is referring to this for my said lucky numbers to this is referring to this 15.', 'start': 10580.068, 'duration': 5.782}, {'end': 10590.292, 'text': "Right? Basically, that's how we can access an element inside of an array.", 'start': 10585.85, 'duration': 4.442}], 'summary': 'Using a for loop to access and print elements in an array.', 'duration': 26.013, 'max_score': 10564.279, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ810564279.jpg'}], 'start': 9251.292, 'title': 'Building guessing games in c# and python', 'summary': "Details the creation of a guessing game in c# with a user aiming to guess the word 'draft' and demonstrates modifying a python guessing game to include a three-guess limit, with emphasis on variables and loops. it also introduces for loops in c# and their usage in managing iteration variables and iterating through an array of lucky numbers.", 'chapters': [{'end': 9494.416, 'start': 9251.292, 'title': 'Building a guessing game in c#', 'summary': "Details how to build a basic guessing game in c# using loops, if statements, and variables, with the user aiming to guess the secret word 'draft' by repeatedly entering guesses until successful.", 'duration': 243.124, 'highlights': ["The user is prompted to guess the secret word 'draft', with the program using a while loop to continually prompt the user to enter a guess until it matches the secret word 'draft'.", "The program provides a success message 'you win' upon the user successfully guessing the secret word 'draft'.", 'The option to challenge oneself by attempting to implement the program using a do while loop is mentioned, providing an alternative approach to the same functionality.']}, {'end': 10066.204, 'start': 9494.576, 'title': 'Guessing game with guest limit', 'summary': "Demonstrates how to modify a guessing game in python to include a guest limit of three, ensuring the user can only guess three times before receiving a 'you lose' message, and includes the implementation of variables such as guess count, guess limit, and out of guesses.", 'duration': 571.628, 'highlights': ['The chapter demonstrates the implementation of a guest limit of three in a Python guessing game.', "Variables such as guess count, guess limit, and out of guesses are introduced to track the user's guesses and determine if they are out of guesses.", 'The code is adjusted to prompt the user for another guess only if the guest count is less than the guest limit.']}, {'end': 10707.632, 'start': 10066.564, 'title': 'Using for loops in c#', 'summary': 'Discusses the basics of building a guessing game in c# using while loops and introduces the concept of for loops, emphasizing its advantages in managing iteration variables and demonstrating its usage in iterating through an array of lucky numbers.', 'duration': 641.068, 'highlights': ['The for loop is introduced as a more compact and manageable alternative to the while loop, providing a convenient way to manage iteration variables and execute code within the loop, resulting in a cleaner and more efficient solution.', "The tutorial demonstrates the usage of a for loop to iterate through an array of lucky numbers, leveraging the loop's indexing variable to access and print out each element of the array by utilizing the array's length property to control the loop's iterations.", "The concept of iteration variables, exemplified by the variable 'i' in the for loop and its role in tracking the number of iterations, is emphasized, showcasing its flexibility in representing various iteration scenarios and its pivotal role in controlling the loop's execution."]}], 'duration': 1456.34, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ89251292.jpg', 'highlights': ['The for loop is introduced as a more compact and manageable alternative to the while loop, providing a convenient way to manage iteration variables and execute code within the loop, resulting in a cleaner and more efficient solution.', "The tutorial demonstrates the usage of a for loop to iterate through an array of lucky numbers, leveraging the loop's indexing variable to access and print out each element of the array by utilizing the array's length property to control the loop's iterations.", "The user is prompted to guess the secret word 'draft', with the program using a while loop to continually prompt the user to enter a guess until it matches the secret word 'draft'.", "The program provides a success message 'you win' upon the user successfully guessing the secret word 'draft'.", 'The chapter demonstrates the implementation of a guest limit of three in a Python guessing game.', "Variables such as guess count, guess limit, and out of guesses are introduced to track the user's guesses and determine if they are out of guesses.", 'The option to challenge oneself by attempting to implement the program using a do while loop is mentioned, providing an alternative approach to the same functionality.', "The concept of iteration variables, exemplified by the variable 'i' in the for loop and its role in tracking the number of iterations, is emphasized, showcasing its flexibility in representing various iteration scenarios and its pivotal role in controlling the loop's execution.", 'The code is adjusted to prompt the user for another guess only if the guest count is less than the guest limit.']}, {'end': 11622.039, 'segs': [{'end': 10756.921, 'src': 'embed', 'start': 10707.892, 'weight': 0, 'content': [{'end': 10709.173, 'text': "And let's go ahead and run this.", 'start': 10707.892, 'duration': 1.281}, {'end': 10712.516, 'text': "And you'll see that we'll be printing out all the elements inside of that array.", 'start': 10709.553, 'duration': 2.963}, {'end': 10714.957, 'text': "So we're printing out for 815 1623 42.", 'start': 10712.596, 'duration': 2.361}, {'end': 10723.907, 'text': "So that's one very common use of these for loops is you can use them to loop through all the elements inside of an array.", 'start': 10714.958, 'duration': 8.949}, {'end': 10733.51, 'text': "In this tutorial, I'm gonna show you guys how to build an exponent function in C sharp,", 'start': 10728.467, 'duration': 5.043}, {'end': 10739.353, 'text': 'when exponent function is basically a function where we can pass in two numbers, a base number and a power number.', 'start': 10733.51, 'duration': 5.843}, {'end': 10742.535, 'text': "And it'll take the base number to the power number.", 'start': 10739.873, 'duration': 2.662}, {'end': 10749.799, 'text': "So essentially, it's gonna like if I passed in a two and a three, it would give me two raised to the third power.", 'start': 10743.155, 'duration': 6.644}, {'end': 10756.921, 'text': 'or if I passed in a four and a seven, it would give me four raised to the seventh power.', 'start': 10750.619, 'duration': 6.302}], 'summary': 'Tutorial demonstrates building an exponent function in c sharp with examples.', 'duration': 49.029, 'max_score': 10707.892, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ810707892.jpg'}, {'end': 11151.577, 'src': 'embed', 'start': 11125.783, 'weight': 3, 'content': [{'end': 11130.19, 'text': "And you know, write it on your own and see if you can really wrap your head around what's going on here.", 'start': 11125.783, 'duration': 4.407}, {'end': 11139.113, 'text': "In this tutorial, I'm gonna show you guys how to use two dimensional arrays in C sharp.", 'start': 11134.611, 'duration': 4.502}, {'end': 11147.175, 'text': 'A two dimensional array is basically a situation where we have an array, and every element inside of that array is itself an array.', 'start': 11139.573, 'duration': 7.602}, {'end': 11151.577, 'text': "So essentially, we're building like a little matrix structure inside of our program.", 'start': 11147.636, 'duration': 3.941}], 'summary': 'Tutorial on using two dimensional arrays in c sharp.', 'duration': 25.794, 'max_score': 11125.783, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ811125783.jpg'}, {'end': 11348.827, 'src': 'embed', 'start': 11324.367, 'weight': 4, 'content': [{'end': 11330.431, 'text': 'So if I wanted, like I can modify one of these values, I can do everything that I would do in a normal array.', 'start': 11324.367, 'duration': 6.064}, {'end': 11331.732, 'text': "And that's kind of the basics.", 'start': 11330.811, 'duration': 0.921}, {'end': 11333.974, 'text': 'This is a structure that you might not use all the time.', 'start': 11331.752, 'duration': 2.222}, {'end': 11336.196, 'text': "But when you need it, it's extremely useful.", 'start': 11333.994, 'duration': 2.202}, {'end': 11340.78, 'text': 'And in addition to two dimensions, you could also have like three or four or five dimensions.', 'start': 11336.276, 'duration': 4.504}, {'end': 11343.542, 'text': 'all you have to do is just put more like commas over here.', 'start': 11340.78, 'duration': 2.762}, {'end': 11348.827, 'text': "There's also a situation where you might not know how many elements you want to go in there initially.", 'start': 11344.083, 'duration': 4.744}], 'summary': 'Arrays can be modified and can have multiple dimensions, providing flexibility and usefulness.', 'duration': 24.46, 'max_score': 11324.367, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ811324367.jpg'}, {'end': 11412.604, 'src': 'embed', 'start': 11382.75, 'weight': 5, 'content': [{'end': 11384.931, 'text': 'And then you could just manually like insert the elements.', 'start': 11382.75, 'duration': 2.181}, {'end': 11392.698, 'text': "In this tutorial, I'm gonna show you guys how to use comments in C sharp.", 'start': 11388.877, 'duration': 3.821}, {'end': 11400.54, 'text': "Now comment is basically just a special line or block of text in our program that's going to get ignored when we run the program.", 'start': 11393.118, 'duration': 7.422}, {'end': 11405.722, 'text': 'So comments are really useful for leaving little notes or comments inside of your program.', 'start': 11400.58, 'duration': 5.142}, {'end': 11412.604, 'text': "And a comment is essentially just a line of code that's meant for humans and not meant for the computer.", 'start': 11406.062, 'duration': 6.542}], 'summary': 'Tutorial on using comments in c sharp, an essential part of the program, for leaving little notes or comments, meant for humans and not for the computer.', 'duration': 29.854, 'max_score': 11382.75, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ811382750.jpg'}], 'start': 10707.892, 'title': 'C# programming concepts', 'summary': 'Covers building an exponent function in c# using for loop and examples, working with two dimensional arrays in c# for versatile handling of multiple dimensions, and utilizing comments in c# for leaving notes and commenting out code.', 'chapters': [{'end': 11125.262, 'start': 10707.892, 'title': 'Building exponent function in c#', 'summary': 'Demonstrates how to create an exponent function in c# that calculates the result of raising a base number to a power number using a for loop, with examples of 3 squared resulting in 9 and 4 cubed resulting in 64.', 'duration': 417.37, 'highlights': ['The chapter demonstrates how to create an exponent function in C# that calculates the result of raising a base number to a power number using a for loop.', 'Example of passing 3 and 2 to the exponent function resulting in 3 squared, giving the output of 9.', 'Example of passing 4 and 3 to the exponent function resulting in 4 cubed, giving the output of 64.']}, {'end': 11382.71, 'start': 11125.783, 'title': 'Using two dimensional arrays in c#', 'summary': 'Explains how to create and manipulate two dimensional arrays in c#, providing examples and syntax, emphasizing the utility of this structure and its flexibility for handling multiple dimensions and dynamic sizing.', 'duration': 256.927, 'highlights': ['The chapter explains how to create a two dimensional array in C# by using the syntax for declaring and initializing the array with elements, emphasizing that each element within the array is itself an array, providing a clear example of a matrix structure.', 'It demonstrates how to access and modify elements within the two dimensional array using index positions, illustrating the process with specific examples and emphasizing the similarity to handling elements in a normal array.', 'It mentions the flexibility of the two dimensional array structure and its potential for handling multiple dimensions, including three, four, or five dimensions, by adding more commas, and also discusses the ability to declare a two dimensional array without knowing the initial number of elements by using dynamic sizing.']}, {'end': 11622.039, 'start': 11382.75, 'title': 'Using comments in c#', 'summary': 'Explains the use of comments in c# including single line comments and multi-line comments, their purpose for leaving notes in the program, and for commenting out lines of code, providing a useful way to run the program without certain lines of code.', 'duration': 239.289, 'highlights': ['Comments in C# are used for leaving notes in the program for programmers and can be single line or multi-line comments.', 'Comments can be used for commenting out lines of code, allowing the program to run without them and making it easier to keep track of the removed code.', 'Using comments in C# is a helpful way to run the program without certain lines of code by simply commenting them out instead of physically deleting them.']}], 'duration': 914.147, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ810707892.jpg', 'highlights': ['The chapter demonstrates how to create an exponent function in C# using a for loop.', 'Example of passing 4 and 3 to the exponent function resulting in 4 cubed, giving the output of 64.', 'Example of passing 3 and 2 to the exponent function resulting in 3 squared, giving the output of 9.', 'The chapter explains how to create a two dimensional array in C# and access/modify its elements.', 'It mentions the flexibility of the two dimensional array structure for handling multiple dimensions.', 'Comments in C# are used for leaving notes in the program for programmers.', 'Using comments in C# is a helpful way to run the program without certain lines of code.']}, {'end': 12246.416, 'segs': [{'end': 11686.25, 'src': 'embed', 'start': 11661.917, 'weight': 4, 'content': [{'end': 11668.942, 'text': "So there's a lot of situations where something might happen in the execution of the program and exceptions going to get thrown and then the program is going to terminate.", 'start': 11661.917, 'duration': 7.025}, {'end': 11671.584, 'text': "And sometimes you're going to want that to happen.", 'start': 11669.583, 'duration': 2.001}, {'end': 11676.648, 'text': "Sometimes when an exception gets thrown, you're going to want the program to terminate because you're going to want to know what happened.", 'start': 11671.664, 'duration': 4.984}, {'end': 11681.209, 'text': "But a lot of times, especially if you're writing a program that's being designed to run,", 'start': 11677.068, 'duration': 4.141}, {'end': 11686.25, 'text': "for you know months and months at a time you're not going to want an exception to crash the program.", 'start': 11681.209, 'duration': 5.041}], 'summary': 'Exceptions can terminate programs, but not always desired for long-term running programs.', 'duration': 24.333, 'max_score': 11661.917, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ811661917.jpg'}, {'end': 11811.309, 'src': 'embed', 'start': 11786.193, 'weight': 2, 'content': [{'end': 11791.116, 'text': "In other words, the computer is going to be like, hey, I can't do this, like I can't divide these two numbers.", 'start': 11786.193, 'duration': 4.923}, {'end': 11792.877, 'text': 'So the program is going to terminate.', 'start': 11791.436, 'duration': 1.441}, {'end': 11798.24, 'text': "So you'll see when I hit enter, that this little screen goes away, and this exception pops up.", 'start': 11792.897, 'duration': 5.343}, {'end': 11805.465, 'text': 'So it says exception on handled system dot divide by zero exception attempted to divide by zero.', 'start': 11798.3, 'duration': 7.165}, {'end': 11811.309, 'text': "it's basically telling us what went wrong, right saying, hey, you tried to divide by zero, that's illegal, you can't do that.", 'start': 11805.925, 'duration': 5.384}], 'summary': 'Computer terminated program due to division by zero error.', 'duration': 25.116, 'max_score': 11786.193, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ811786193.jpg'}, {'end': 11917.831, 'src': 'embed', 'start': 11891.47, 'weight': 3, 'content': [{'end': 11896.891, 'text': "So we're basically going to tell C sharp, like, hey, there's some code over here that might throw an exception.", 'start': 11891.47, 'duration': 5.421}, {'end': 11898.651, 'text': 'If it does, we want you to catch it.', 'start': 11897.031, 'duration': 1.62}, {'end': 11901.312, 'text': 'And instead of crashing, we want to be able to handle it.', 'start': 11899.031, 'duration': 2.281}, {'end': 11903.053, 'text': 'show you guys how we can do that.', 'start': 11901.992, 'duration': 1.061}, {'end': 11905.476, 'text': 'So we want to use something called try catch blocks.', 'start': 11903.114, 'duration': 2.362}, {'end': 11910.282, 'text': "So I'm just going to type out try and open and close parentheses, curly bracket.", 'start': 11905.877, 'duration': 4.405}, {'end': 11915.289, 'text': "And then down here, I'm going to type out catch.", 'start': 11911.103, 'duration': 4.186}, {'end': 11917.831, 'text': 'And again, an open and closed curly bracket.', 'start': 11915.83, 'duration': 2.001}], 'summary': 'Introduction to using try-catch blocks in c# to handle exceptions.', 'duration': 26.361, 'max_score': 11891.47, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ811891470.jpg'}, {'end': 12073.06, 'src': 'embed', 'start': 12042.731, 'weight': 1, 'content': [{'end': 12047.073, 'text': 'So this is a really great way to kind of stop our programs from terminating.', 'start': 12042.731, 'duration': 4.342}, {'end': 12052.699, 'text': "But here's the thing there's all different types of exceptions that can get thrown inside of our programs right?", 'start': 12047.253, 'duration': 5.446}, {'end': 12055.341, 'text': 'And all I have down here is one catch block.', 'start': 12053.019, 'duration': 2.322}, {'end': 12059.946, 'text': "So no matter what exception gets thrown, we're always executing this same code down here.", 'start': 12055.381, 'duration': 4.565}, {'end': 12065.411, 'text': "But let's say there was a situation where when the zero division error occurred, you wanted to do one thing.", 'start': 12060.366, 'duration': 5.045}, {'end': 12073.06, 'text': "And when the input error occurred, you wanted to do a different thing, we can't really do that, because we only have one catch block.", 'start': 12065.571, 'duration': 7.489}], 'summary': 'Using a single catch block can limit handling different exceptions effectively.', 'duration': 30.329, 'max_score': 12042.731, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ812042731.jpg'}, {'end': 12204.534, 'src': 'embed', 'start': 12178.161, 'weight': 0, 'content': [{'end': 12183.205, 'text': 'When the user divides by zero, we could print out like hey, you divided by zero, like watch it.', 'start': 12178.161, 'duration': 5.044}, {'end': 12189.449, 'text': 'if they have a format exception, then we can do something else like maybe we could prompt them to enter that input again, or you know,', 'start': 12183.205, 'duration': 6.244}, {'end': 12190.81, 'text': 'we could do something else.', 'start': 12189.449, 'duration': 1.361}, {'end': 12195.312, 'text': 'And so being able to have these multiple catch blocks is extremely useful.', 'start': 12191.03, 'duration': 4.282}, {'end': 12201.553, 'text': "There's also one more thing I want to show you guys, which is called finally, so down here I could just type out finally,", 'start': 12195.712, 'duration': 5.841}, {'end': 12204.534, 'text': "and I'm gonna make an open and closed curly bracket.", 'start': 12201.553, 'duration': 2.981}], 'summary': 'Handling exceptions by printing messages or prompting for input; using multiple catch blocks and finally.', 'duration': 26.373, 'max_score': 12178.161, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ812178161.jpg'}, {'end': 12256.924, 'src': 'embed', 'start': 12231.904, 'weight': 5, 'content': [{'end': 12237.048, 'text': "you're always going to want to execute something and that code can go down here in the final block.", 'start': 12231.904, 'duration': 5.144}, {'end': 12239.77, 'text': "But you don't always need to finally block that's kind of optional.", 'start': 12237.549, 'duration': 2.221}, {'end': 12244.514, 'text': 'So really, this is just how we can handle different errors in our program.', 'start': 12240.851, 'duration': 3.663}, {'end': 12246.416, 'text': "And there's a bunch of different exceptions.", 'start': 12244.574, 'duration': 1.842}, {'end': 12251.78, 'text': "If you just go online and you know, search for like C sharp exception list, you'll find a bunch of these different exceptions.", 'start': 12246.456, 'duration': 5.324}, {'end': 12254.602, 'text': 'And this really just makes your programs more durable.', 'start': 12252.1, 'duration': 2.502}, {'end': 12256.924, 'text': 'Like before, this was a very fragile program.', 'start': 12254.662, 'duration': 2.262}], 'summary': 'Handling different errors in program using c# exceptions for durability.', 'duration': 25.02, 'max_score': 12231.904, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ812231904.jpg'}], 'start': 11622.059, 'title': 'Exception handling in c#', 'summary': 'Covers the basics of exception handling in c#, scenarios where exceptions are thrown, and demonstrates handling exceptions, including a divide by zero example resulting in a system.dividebyzeroexception. it also explains using try-catch blocks to catch specific exceptions and executing a finally block for specific actions.', 'chapters': [{'end': 11821.778, 'start': 11622.059, 'title': 'Exception handling in c sharp', 'summary': 'Explains the basics of exception handling in c sharp, the scenarios where exceptions are thrown, and demonstrates how to handle exceptions, including an example of attempting to divide by zero resulting in a system dot divide by zero exception.', 'duration': 199.719, 'highlights': ['The chapter explains the basics of exception handling in C sharp', 'The scenarios where exceptions are thrown', 'Demonstrates how to handle exceptions, including an example of attempting to divide by zero resulting in a system dot divide by zero exception']}, {'end': 12246.416, 'start': 11821.838, 'title': 'Exception handling in c#', 'summary': 'Discusses how to handle exceptions in c#, using try-catch blocks to catch specific exceptions like divide by zero and format exceptions, allowing the program to continue running and executing a finally block for specific actions.', 'duration': 424.578, 'highlights': ['Using try-catch blocks to catch specific exceptions like divide by zero and format exceptions.', 'Executing a finally block for specific actions, ensuring its execution regardless of the exception.', 'Handling different errors in the program using multiple catch blocks to account for each situation.']}], 'duration': 624.357, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ811622059.jpg', 'highlights': ['Using try-catch blocks to catch specific exceptions like divide by zero and format exceptions.', 'Handling different errors in the program using multiple catch blocks to account for each situation.', 'Demonstrates how to handle exceptions, including an example of attempting to divide by zero resulting in a system dot divide by zero exception.', 'The chapter explains the basics of exception handling in C sharp.', 'The scenarios where exceptions are thrown.', 'Executing a finally block for specific actions, ensuring its execution regardless of the exception.']}, {'end': 14095.147, 'segs': [{'end': 12412.186, 'src': 'embed', 'start': 12380.975, 'weight': 0, 'content': [{'end': 12384.897, 'text': 'So what I want to talk to you guys about today is something called classes and objects.', 'start': 12380.975, 'duration': 3.922}, {'end': 12390.781, 'text': 'And classes and objects essentially allow you to create your own custom data types.', 'start': 12385.338, 'duration': 5.443}, {'end': 12393.922, 'text': "By default, we're given things like strings, numbers and Booleans.", 'start': 12391.161, 'duration': 2.761}, {'end': 12401.163, 'text': 'But I could actually create my own data type that would allow me to represent something that I wanted inside of my program.', 'start': 12394.022, 'duration': 7.141}, {'end': 12406.985, 'text': "So generally, what we will do when we want to create a data type in C sharp is we'll create something called a class.", 'start': 12401.183, 'duration': 5.802}, {'end': 12412.186, 'text': 'And a class is basically just a specification for a new data type.', 'start': 12407.405, 'duration': 4.781}], 'summary': 'Classes and objects in c# create custom data types.', 'duration': 31.211, 'max_score': 12380.975, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ812380975.jpg'}, {'end': 12544.395, 'src': 'heatmap', 'start': 12363.604, 'weight': 2, 'content': [{'end': 12373.11, 'text': "And I can't sort of break it down into just one single like string or number, right? I can't represent it using just one of those data types.", 'start': 12363.604, 'duration': 9.506}, {'end': 12380.555, 'text': "And that's kind of one of the limitations that you're going to encounter is like, you can't represent everything just using one of these data types.", 'start': 12373.49, 'duration': 7.065}, {'end': 12384.897, 'text': 'So what I want to talk to you guys about today is something called classes and objects.', 'start': 12380.975, 'duration': 3.922}, {'end': 12390.781, 'text': 'And classes and objects essentially allow you to create your own custom data types.', 'start': 12385.338, 'duration': 5.443}, {'end': 12393.922, 'text': "By default, we're given things like strings, numbers and Booleans.", 'start': 12391.161, 'duration': 2.761}, {'end': 12401.163, 'text': 'But I could actually create my own data type that would allow me to represent something that I wanted inside of my program.', 'start': 12394.022, 'duration': 7.141}, {'end': 12406.985, 'text': "So generally, what we will do when we want to create a data type in C sharp is we'll create something called a class.", 'start': 12401.183, 'duration': 5.802}, {'end': 12412.186, 'text': 'And a class is basically just a specification for a new data type.', 'start': 12407.405, 'duration': 4.781}, {'end': 12420.969, 'text': 'So I could create a class for a phone, or I could create a class for like a water bottle, or I could create a class for a keyboard or a computer.', 'start': 12412.486, 'duration': 8.483}, {'end': 12425.051, 'text': 'And then I could represent all those different things inside my programs.', 'start': 12421.57, 'duration': 3.481}, {'end': 12430.533, 'text': 'So classes are basically used to model real world entities inside of our program.', 'start': 12425.331, 'duration': 5.202}, {'end': 12434.475, 'text': "So I'm going to show you guys how we can build a class in order to do that.", 'start': 12430.573, 'duration': 3.902}, {'end': 12439.18, 'text': 'The first step we want to build a class is you want to open up your solution Explorer over here.', 'start': 12434.995, 'duration': 4.185}, {'end': 12441.463, 'text': "In my case, it's just over here on the right side of my screen.", 'start': 12439.241, 'duration': 2.222}, {'end': 12443.566, 'text': "And I'm going to go down to my project.", 'start': 12441.664, 'duration': 1.902}, {'end': 12445.569, 'text': "So I'm over here in my draft project.", 'start': 12443.606, 'duration': 1.963}, {'end': 12451.136, 'text': "And when I want to create a new class, I can just right click and I'm going to go down to add and I'm just going to click new item.", 'start': 12445.889, 'duration': 5.247}, {'end': 12457.08, 'text': 'And then over here, we should get this little menu that pops up and it says, class, this is the first one right up here.', 'start': 12451.576, 'duration': 5.504}, {'end': 12458.521, 'text': "So I'm going to select that.", 'start': 12457.1, 'duration': 1.421}, {'end': 12461.743, 'text': 'And then I can actually come down here to the bottom and give this a name.', 'start': 12458.961, 'duration': 2.782}, {'end': 12463.464, 'text': "So I'm going to go ahead and name my class.", 'start': 12461.843, 'duration': 1.621}, {'end': 12468.628, 'text': "And generally, when we're creating a class in C sharp, you want to name it with a capital letter.", 'start': 12463.945, 'duration': 4.683}, {'end': 12473.469, 'text': 'So in this situation, I think we should create a class for a book.', 'start': 12469.148, 'duration': 4.321}, {'end': 12478.731, 'text': "So let's say that I was writing a program, maybe this was a program for like a library or a school bookstore.", 'start': 12473.949, 'duration': 4.782}, {'end': 12483.212, 'text': 'And I wanted to be able to represent a book inside of my program.', 'start': 12479.131, 'duration': 4.081}, {'end': 12485.393, 'text': 'So I want to create a book data type.', 'start': 12483.252, 'duration': 2.141}, {'end': 12491.855, 'text': 'So just like I create a string, or I create an integer, or I create a Boolean, I want to be able to create an actual book.', 'start': 12485.773, 'duration': 6.082}, {'end': 12493.416, 'text': 'inside of my program.', 'start': 12492.535, 'duration': 0.881}, {'end': 12494.497, 'text': "So I'm going to create a book class.", 'start': 12493.436, 'duration': 1.061}, {'end': 12496.619, 'text': "And I'm just going to call this book.cs.", 'start': 12494.557, 'duration': 2.062}, {'end': 12497.82, 'text': "And I'll hit enter.", 'start': 12497.119, 'duration': 0.701}, {'end': 12503.525, 'text': 'And you guys will see over here that another file has been added to our Solution Explorer.', 'start': 12498.64, 'duration': 4.885}, {'end': 12505.907, 'text': 'So now we have this book.cs file.', 'start': 12503.565, 'duration': 2.342}, {'end': 12510.27, 'text': "And you'll notice that this is pretty much laid out exactly like the other one.", 'start': 12506.507, 'duration': 3.763}, {'end': 12514.914, 'text': 'So exactly like this program class that we were using over here.', 'start': 12511.151, 'duration': 3.763}, {'end': 12517.737, 'text': "And it's basically just like an empty class.", 'start': 12515.735, 'duration': 2.002}, {'end': 12526.263, 'text': "So remember what I said, a class is essentially just a specification for or really, it's like a blueprint for a new data type in our program.", 'start': 12517.877, 'duration': 8.386}, {'end': 12532.107, 'text': 'And one of the cool things about C sharp is it actually allows us to, you know, specify a custom data type.', 'start': 12526.703, 'duration': 5.404}, {'end': 12537.791, 'text': "And essentially, what we want to do is we're going to be creating a complex data type.", 'start': 12532.927, 'duration': 4.864}, {'end': 12544.395, 'text': "So a string, for example, is a data type, right? And all it is, it's just plain text, a number is a data type.", 'start': 12538.391, 'duration': 6.004}], 'summary': 'Classes and objects allow creation of custom data types in c sharp', 'duration': 180.791, 'max_score': 12363.604, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ812363604.jpg'}, {'end': 12718.274, 'src': 'embed', 'start': 12686.528, 'weight': 1, 'content': [{'end': 12689.27, 'text': 'And I want to show you guys how we can create a book now.', 'start': 12686.528, 'duration': 2.742}, {'end': 12698.117, 'text': 'So if I wanted to create and represent an actual book inside of my program, since I created that class and I defined what a book is,', 'start': 12689.75, 'duration': 8.367}, {'end': 12701.42, 'text': 'I basically defined the book data type I can actually do that.', 'start': 12698.117, 'duration': 3.303}, {'end': 12703.882, 'text': 'And I can create something called an object.', 'start': 12701.76, 'duration': 2.122}, {'end': 12707.705, 'text': 'And an object is an instance of a class.', 'start': 12704.602, 'duration': 3.103}, {'end': 12712.449, 'text': 'So, when we created the class, we created the template for what a book is.', 'start': 12708.105, 'duration': 4.344}, {'end': 12718.274, 'text': "when we create an object, we're creating an actual physical book inside of our program right.", 'start': 12712.449, 'duration': 5.825}], 'summary': 'Demonstrating creation and representation of a book using classes and objects.', 'duration': 31.746, 'max_score': 12686.528, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ812686528.jpg'}, {'end': 13102.888, 'src': 'embed', 'start': 13079.358, 'weight': 3, 'content': [{'end': 13085.961, 'text': 'So anytime I create an object of a specific class, the constructor method will get called and we can do different things.', 'start': 13079.358, 'duration': 6.603}, {'end': 13095.545, 'text': "So I'm gonna show you guys how we can leverage that constructor method in order to make it a lot easier for us to create objects off of the classes that we create in C sharp.", 'start': 13085.981, 'duration': 9.564}, {'end': 13102.888, 'text': "So down here, if you're not following along with the course, I basically created a class over here called book.", 'start': 13096.125, 'duration': 6.763}], 'summary': 'Constructor method in c# classes simplifies object creation.', 'duration': 23.53, 'max_score': 13079.358, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ813079358.jpg'}, {'end': 13354.333, 'src': 'embed', 'start': 13326.614, 'weight': 6, 'content': [{'end': 13330.876, 'text': 'So this is a totally valid way to create our object and give it some attributes.', 'start': 13326.614, 'duration': 4.262}, {'end': 13335.718, 'text': "But there's actually another way and we can use that constructor to do it.", 'start': 13331.296, 'duration': 4.422}, {'end': 13346.606, 'text': 'So essentially, what I want to do is I want to allow the caller to pass in a title, an author and a number of pages into this book constructor.', 'start': 13335.838, 'duration': 10.768}, {'end': 13351.47, 'text': 'So, when they create the book, I want them to be able to tell me what the title is going to be,', 'start': 13346.966, 'duration': 4.504}, {'end': 13354.333, 'text': 'what the author is going to be and what the number of pages is going to be.', 'start': 13351.47, 'duration': 2.863}], 'summary': 'Object can be created with attributes including title, author, and number of pages.', 'duration': 27.719, 'max_score': 13326.614, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ813326614.jpg'}, {'end': 13634.363, 'src': 'embed', 'start': 13604.682, 'weight': 5, 'content': [{'end': 13607.583, 'text': 'And that constructor is super powerful.', 'start': 13604.682, 'duration': 2.901}, {'end': 13612.264, 'text': "It's an amazing way for us to be able to create these objects really quickly.", 'start': 13607.663, 'duration': 4.601}, {'end': 13616.006, 'text': 'And I also do want to point out that you can have more than one constructor.', 'start': 13612.564, 'duration': 3.442}, {'end': 13620.707, 'text': 'So I have this constructor book, and it takes a title and author and a number of pages.', 'start': 13616.086, 'duration': 4.621}, {'end': 13623.71, 'text': 'but if I wanted, I could just create another one.', 'start': 13621.247, 'duration': 2.463}, {'end': 13630.278, 'text': "so I could say like public book and this could take no parameters and I'd still be able to do this.", 'start': 13623.71, 'duration': 6.568}, {'end': 13634.363, 'text': "and so now I can have that and I'll still be able to create a book.", 'start': 13630.278, 'duration': 4.085}], 'summary': 'Java constructor allows quick creation of objects, supports multiple constructors.', 'duration': 29.681, 'max_score': 13604.682, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ813604682.jpg'}, {'end': 13711.834, 'src': 'embed', 'start': 13665.223, 'weight': 7, 'content': [{'end': 13667.644, 'text': 'then you kind of like have a good understanding of what these are.', 'start': 13665.223, 'duration': 2.421}, {'end': 13675.975, 'text': "In this tutorial, I'm going to talk to you guys about object methods in C sharp.", 'start': 13671.812, 'duration': 4.163}, {'end': 13681.759, 'text': 'An object method is basically just a method that we can define inside of our class,', 'start': 13676.495, 'duration': 5.264}, {'end': 13687.923, 'text': 'that the objects of that class can use to either find out information or modify information about themselves.', 'start': 13681.759, 'duration': 6.164}, {'end': 13691.125, 'text': 'And object methods can be very useful.', 'start': 13688.543, 'duration': 2.582}, {'end': 13694.827, 'text': "So I'm going to show you guys just a little demonstration of how to use them in this tutorial.", 'start': 13691.185, 'duration': 3.642}, {'end': 13699.07, 'text': "What I've actually done is I've created another class in my program.", 'start': 13695.408, 'duration': 3.662}, {'end': 13701.452, 'text': 'So I created this student class over here.', 'start': 13699.09, 'duration': 2.362}, {'end': 13708.093, 'text': 'And this student class is pretty simple, I just defined three attributes that are going to be part of my student class.', 'start': 13702.352, 'duration': 5.741}, {'end': 13711.834, 'text': 'So every student is going to have a name, a major and a GPA.', 'start': 13708.753, 'duration': 3.081}], 'summary': 'Introduction to object methods in c# for student class with name, major, and gpa attributes.', 'duration': 46.611, 'max_score': 13665.223, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ813665223.jpg'}, {'end': 13854.92, 'src': 'embed', 'start': 13829.631, 'weight': 9, 'content': [{'end': 13836.214, 'text': "Now remember, what I said before was if a student has a GPA of 3.5 or above, that means they're on the honor roll.", 'start': 13829.631, 'duration': 6.583}, {'end': 13838.456, 'text': 'So what I can do is I can just use a simple if statement.', 'start': 13836.234, 'duration': 2.222}, {'end': 13848.062, 'text': "And I can just say if, and I'll come down here and I'll just say if GPA is greater than or equal to 3.5,", 'start': 13839.016, 'duration': 9.046}, {'end': 13852.236, 'text': "Then I'm going to come over here and I'm basically going to return true.", 'start': 13848.062, 'duration': 4.174}, {'end': 13854.92, 'text': "So I'm just going to return true.", 'start': 13852.799, 'duration': 2.121}], 'summary': 'Using a simple if statement, if a student has a gpa of 3.5 or above, they are on the honor roll.', 'duration': 25.289, 'max_score': 13829.631, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ813829631.jpg'}], 'start': 12246.456, 'title': 'C# classes, objects, and constructors', 'summary': "Introduces classes and objects in c# programming, creating a 'book' class, showcasing the power of custom data types. it also discusses using constructors to reduce code verbosity significantly and illustrates the creation and usage of object methods in c#.", 'chapters': [{'end': 12517.737, 'start': 12246.456, 'title': 'C# classes and objects introduction', 'summary': "Introduces the concept of classes and objects in c# programs, highlighting the limitations of default data types and explaining how classes enable the creation of custom data types to represent real-world entities in programs, with a focus on creating a 'book' class as an example.", 'duration': 271.281, 'highlights': ['Classes and objects allow the creation of custom data types to model real-world entities in C# programs', 'Introduction to the concept of classes and objects in C# programs', "Demonstration of creating a 'book' class as an example of a custom data type"]}, {'end': 13052.52, 'start': 12517.877, 'title': 'Creating custom data types in c#', 'summary': 'Highlights the process of creating a custom data type in c#, specifically a book class, with attributes such as title, author, and number of pages, and demonstrates the instantiation of objects using the class blueprint, showcasing the versatility and power of classes and objects in c# programming.', 'duration': 534.643, 'highlights': ['The process of creating a custom data type in C# involves defining a class as a blueprint for the new data type, such as a book class with attributes like title, author, and number of pages.', 'Demonstrates the instantiation of objects using the defined class blueprint, enabling the creation of actual physical books with specific attributes, showcasing the versatility and power of classes and objects in C# programming.', 'Explains the concept of a class as a specification for a new data type and an object as an instance of that class, illustrating the ability to create multiple objects based on the blueprint to represent and work with various books in a program.', 'Illustrates the ability to manipulate and work with the created book objects, such as assigning values to their attributes and utilizing them in methods and conditional statements, emphasizing the flexibility and utility of classes and objects in C# programming.']}, {'end': 13326.154, 'start': 13052.58, 'title': 'Using constructors in c# classes', 'summary': 'Discusses using constructors in c# classes, demonstrating the concept and its practical application, showcasing how constructors can reduce code verbosity and improve efficiency by accepting parameters, thereby illustrating how using constructors can lead to a significant reduction in code lines and manual data assignment.', 'duration': 273.574, 'highlights': ['Constructors in C# classes are special methods that get called whenever an object of that class is created, allowing us to perform various actions.', 'Using constructors can significantly reduce code verbosity and improve efficiency by accepting parameters, showcasing a practical application that results in a notable reduction in code lines and manual data assignment.', 'The manual assignment of data for creating objects can be greatly reduced by leveraging constructors, as demonstrated through the example of creating two books, showcasing a reduction from eight lines of code to a more efficient approach.']}, {'end': 13665.223, 'start': 13326.614, 'title': 'Object constructor basics', 'summary': 'Discusses the use of constructors in object creation, allowing the caller to pass in a title, an author, and a number of pages, thereby simplifying the object creation process and reducing the lines of code required.', 'duration': 338.609, 'highlights': ['The constructor allows the caller to pass in a title, an author, and a number of pages, simplifying the object creation process and reducing the lines of code required.', 'Using constructors enables quick and efficient object creation, demonstrated by the reduction of code from eight lines to just two lines for creating two objects.', 'It is pointed out that multiple constructors can be created, allowing flexibility in object creation with or without parameters.']}, {'end': 14095.147, 'start': 13665.223, 'title': 'Object methods in c#', 'summary': 'Discusses object methods in c# and demonstrates the creation and usage of object methods in a student class to determine if students are on the honor roll based on their gpa, showcasing the reusability and flexibility of methods in handling different object attributes.', 'duration': 429.924, 'highlights': ['Object methods are defined inside a class and can be used by objects of that class to find out or modify information about themselves, making them very useful.', 'The demonstration showcases the creation of a student class with attributes like name, major, and GPA, and the usage of object methods to determine if students are on the honor roll based on a GPA threshold, exemplifying the practical application of object methods.', "The method 'hasHonors' is created to return true if a student has honors (GPA ≥ 3.5) and false otherwise, demonstrating the reusability of the method based on different object attributes.", "The flexibility of object methods is highlighted as a change in the GPA threshold for honors automatically updates the qualification for all objects using the 'hasHonors' method, showcasing the adaptability and efficiency of object methods in handling changes in rules for objects."]}], 'duration': 1848.691, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ812246456.jpg', 'highlights': ['Classes and objects allow the creation of custom data types in C# programs', "Demonstration of creating a 'book' class as an example of a custom data type", 'The process of creating a custom data type in C# involves defining a class as a blueprint', 'Demonstrates the instantiation of objects using the defined class blueprint', 'Constructors in C# classes are special methods that get called whenever an object is created', 'Using constructors can significantly reduce code verbosity and improve efficiency', 'The constructor allows the caller to pass in a title, an author, and a number of pages', 'Object methods are defined inside a class and can be used by objects to find out or modify information about themselves', 'The demonstration showcases the creation of a student class with attributes like name, major, and GPA', "The method 'hasHonors' is created to return true if a student has honors (GPA ≥ 3.5)"]}, {'end': 16268.18, 'segs': [{'end': 14153.259, 'src': 'embed', 'start': 14123.906, 'weight': 0, 'content': [{'end': 14127.348, 'text': 'And essentially, what this does is it kind of like makes your classes more secure.', 'start': 14123.906, 'duration': 3.442}, {'end': 14134.17, 'text': "So it kind of allows you to define like, what data is valid for specific attributes and what data isn't valid.", 'start': 14127.448, 'duration': 6.722}, {'end': 14137.252, 'text': 'And really getters and setters are extremely useful.', 'start': 14134.611, 'duration': 2.641}, {'end': 14139.753, 'text': "And there's a lot of different scenarios where you want to use them.", 'start': 14137.272, 'duration': 2.481}, {'end': 14145.655, 'text': "In this tutorial, I'm going to show you guys one specific scenario we're going to talk about, like how to set these up and essentially,", 'start': 14140.133, 'duration': 5.522}, {'end': 14146.356, 'text': 'just how they work.', 'start': 14145.655, 'duration': 0.701}, {'end': 14153.259, 'text': "So what I've done in preparation for this tutorial is I actually created another class, it's this movie class over here.", 'start': 14147.176, 'duration': 6.083}], 'summary': 'Getters and setters make classes more secure and are useful in various scenarios. this tutorial covers setting them up and their functionality.', 'duration': 29.353, 'max_score': 14123.906, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ814123906.jpg'}, {'end': 14251.909, 'src': 'embed', 'start': 14224.003, 'weight': 1, 'content': [{'end': 14227.425, 'text': "But let's just say that these are all the valid ratings that we can have for a movie.", 'start': 14224.003, 'duration': 3.422}, {'end': 14232.874, 'text': 'So a movie can either be rated GPG, PG 13, R or NR for not rated.', 'start': 14227.83, 'duration': 5.044}, {'end': 14237.598, 'text': "And let's say that we want to enforce these rules inside of this movie class.", 'start': 14233.154, 'duration': 4.444}, {'end': 14243.222, 'text': 'So we want all the movies in our programs to only be able to have one of these ratings.', 'start': 14237.778, 'duration': 5.444}, {'end': 14248.446, 'text': "And it can't have a rating other than the ones that I specified down here, right?", 'start': 14243.582, 'duration': 4.864}, {'end': 14251.909, 'text': 'Well, the problem is, how do we enforce something like that?', 'start': 14248.926, 'duration': 2.983}], 'summary': 'Movie class must enforce gpg, pg 13, r, or nr ratings only.', 'duration': 27.906, 'max_score': 14224.003, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ814224003.jpg'}, {'end': 14827.178, 'src': 'heatmap', 'start': 14478.465, 'weight': 2, 'content': [{'end': 14481.828, 'text': 'So I can just say, get and want to make an open and close curly bracket.', 'start': 14478.465, 'duration': 3.363}, {'end': 14485.431, 'text': "And then I'm going to say set, and I'm going to make an open and close curly bracket.", 'start': 14482.328, 'duration': 3.103}, {'end': 14489.273, 'text': 'And these are essentially going to be getters and setters.', 'start': 14485.811, 'duration': 3.462}, {'end': 14493.757, 'text': 'So a getter is going to allow us to get the rating attribute.', 'start': 14489.754, 'duration': 4.003}, {'end': 14500.221, 'text': "You'll notice over here I'm trying to get this rating attribute by saying Avengers dot rating, but I'm not able to do it right?", 'start': 14494.097, 'duration': 6.124}, {'end': 14504.024, 'text': "I can't actually access this rating because it's private.", 'start': 14500.621, 'duration': 3.403}, {'end': 14507.106, 'text': 'And so the job of the getter is to give me that.', 'start': 14504.384, 'duration': 2.722}, {'end': 14513.971, 'text': "So I'm just going to come over here and inside this get, we're just going to say, return rating, and I'm going to put a semicolon there.", 'start': 14507.186, 'duration': 6.785}, {'end': 14520.537, 'text': "And so basically, whenever we say rating now, and we want to get it, it's going to return the rating.", 'start': 14514.531, 'duration': 6.006}, {'end': 14525.222, 'text': 'Now this setter is going to allow us to set the rating.', 'start': 14521.118, 'duration': 4.104}, {'end': 14527.124, 'text': "So it's going to allow me to modify the rating.", 'start': 14525.262, 'duration': 1.862}, {'end': 14536.333, 'text': "So if I came over here and said Avengers dot rating and you can already see it's trying to make me use this capital letter is equal to dog.", 'start': 14527.164, 'duration': 9.169}, {'end': 14537.154, 'text': "it's going to yell at me.", 'start': 14536.333, 'duration': 0.821}, {'end': 14540.669, 'text': 'because this is a private attribute.', 'start': 14538.188, 'duration': 2.481}, {'end': 14542.569, 'text': "So it's not going to let me do that.", 'start': 14540.689, 'duration': 1.88}, {'end': 14547.951, 'text': "And that's what the that's the point of this setter, the setter is basically going to allow me to do that.", 'start': 14543.41, 'duration': 4.541}, {'end': 14552.612, 'text': 'So what I can do in this setter, though, is I can define a specific rule.', 'start': 14548.031, 'duration': 4.581}, {'end': 14557.914, 'text': 'So I can basically say like, hey, you can only set this value to be a certain value.', 'start': 14553.133, 'duration': 4.781}, {'end': 14562.835, 'text': 'And so what I want to do is I want to check to see if the value is one of the valid ratings.', 'start': 14558.374, 'duration': 4.461}, {'end': 14569.798, 'text': "And if it is, if the value they're trying to set rating to is one of the valid ratings, then we're going to go ahead and set it.", 'start': 14563.276, 'duration': 6.522}, {'end': 14571.92, 'text': "otherwise we're just going to do something else.", 'start': 14569.798, 'duration': 2.122}, {'end': 14579.867, 'text': "So I want to say if, and I want to check to see if the value that they passed in, in other words, the value that they're trying to set to rating,", 'start': 14572.381, 'duration': 7.486}, {'end': 14581.549, 'text': 'is equal to one of the valid rating.', 'start': 14579.867, 'duration': 1.682}, {'end': 14588.075, 'text': 'So what we can actually do is we can say if the value and value is going to represent whatever got passed in.', 'start': 14581.609, 'duration': 6.466}, {'end': 14591.596, 'text': "So value is going to represent whatever they're trying to set the rating to.", 'start': 14588.655, 'duration': 2.941}, {'end': 14596.638, 'text': "So I can say if value is equal to and we're just going to do one for all of these.", 'start': 14591.676, 'duration': 4.962}, {'end': 14605.062, 'text': "So if the value is equal to G, or value is equal to PG, and I'm going to do this one for each of the valid ratings.", 'start': 14596.678, 'duration': 8.384}, {'end': 14610.384, 'text': 'So I can just say or value is equal to and over here, we can just put PG 13.', 'start': 14605.242, 'duration': 5.142}, {'end': 14613.525, 'text': "So I'm going to say PG 13.", 'start': 14610.384, 'duration': 3.141}, {'end': 14615.046, 'text': "And we're just going to do two more.", 'start': 14613.525, 'duration': 1.521}, {'end': 14618.128, 'text': 'So value is equal to r.', 'start': 14615.166, 'duration': 2.962}, {'end': 14621.45, 'text': 'And then the last one is going to be for n r.', 'start': 14618.128, 'duration': 3.322}, {'end': 14626.693, 'text': "So then over here, I'll say or value is equal to n r.", 'start': 14621.45, 'duration': 5.243}, {'end': 14632.136, 'text': "So if it's equal to one of these, in other words, if the value that we pass in is equal to one of these,", 'start': 14626.693, 'duration': 5.443}, {'end': 14634.857, 'text': "then we're going to be able to just set that as the rating.", 'start': 14632.136, 'duration': 2.721}, {'end': 14639.28, 'text': 'So I can just say, rating is equal to value.', 'start': 14634.937, 'duration': 4.343}, {'end': 14645.032, 'text': "Otherwise, I'm just going to set the rating equal to n r.", 'start': 14640.26, 'duration': 4.772}, {'end': 14648.618, 'text': "So I'm just going to say rating is equal to n r.", 'start': 14645.032, 'duration': 3.586}, {'end': 14660.036, 'text': "So if they add in an invalid rating, in other words, if they add in a rating that they try to set this to a rating that's not g, PG, PG 13,, r or n r,", 'start': 14648.618, 'duration': 11.418}, {'end': 14663.338, 'text': "then it's just going to get set to not rated by default.", 'start': 14660.036, 'duration': 3.302}, {'end': 14670.163, 'text': 'So this getter is going to allow us to get the rating and this setter is going to allow us to set the rating.', 'start': 14663.818, 'duration': 6.345}, {'end': 14675.486, 'text': "But you'll notice that in order to set the rating, we have to go through this if statement right,", 'start': 14670.583, 'duration': 4.903}, {'end': 14678.528, 'text': 'so they can try to pass in whatever rating they want.', 'start': 14675.486, 'duration': 3.042}, {'end': 14684.472, 'text': "But if it's not equal to GPG, PG 13, etc, then it's just going to get set equal to not rating.", 'start': 14678.648, 'duration': 5.824}, {'end': 14691.718, 'text': 'And The reason we needed these getters and setters was because we made this guy up here private.', 'start': 14684.733, 'duration': 6.985}, {'end': 14695.341, 'text': "So there's one more thing we have to do in order to make this super secure.", 'start': 14692.039, 'duration': 3.302}, {'end': 14701.066, 'text': "In other words, there's one more thing that we have to do to make sure that the rating is only set to one of these values.", 'start': 14695.401, 'duration': 5.665}, {'end': 14707.131, 'text': "Up here in my constructor, when I set the rating right here, I'm just assigning it a normal value.", 'start': 14701.746, 'duration': 5.385}, {'end': 14710.654, 'text': 'So technically, the user could pass in whatever rating they wanted over here.', 'start': 14707.211, 'duration': 3.443}, {'end': 14713.436, 'text': "And then I'm just going to set it to the rating.", 'start': 14711.534, 'duration': 1.902}, {'end': 14717.919, 'text': "But now instead, I'm just going to say rating is equal to a rating.", 'start': 14713.756, 'duration': 4.163}, {'end': 14723.403, 'text': "And what this means is now we're going to set the rating through this setter down here.", 'start': 14718.019, 'duration': 5.384}, {'end': 14729.988, 'text': "when I use this capital R, it's essentially calling this setter down here and setting it that way.", 'start': 14723.403, 'duration': 6.585}, {'end': 14732.39, 'text': 'So now this is completely secure.', 'start': 14730.408, 'duration': 1.982}, {'end': 14736.853, 'text': 'And down here, what I can do now is I can set this to whatever I want.', 'start': 14733.05, 'duration': 3.803}, {'end': 14738.515, 'text': "And it's going to be safe.", 'start': 14737.414, 'duration': 1.101}, {'end': 14740.716, 'text': 'So down here, I can say Avengers dot rating.', 'start': 14738.555, 'duration': 2.161}, {'end': 14742.438, 'text': "So I'm using this capital R now.", 'start': 14740.776, 'duration': 1.662}, {'end': 14746.081, 'text': 'And over here, if I wanted, I could pass in an invalid rating.', 'start': 14743.198, 'duration': 2.883}, {'end': 14748.223, 'text': 'So I could pass in like dog over here.', 'start': 14746.121, 'duration': 2.102}, {'end': 14751.966, 'text': "And when I print it out, you'll see that we're going to get an R.", 'start': 14748.863, 'duration': 3.103}, {'end': 14755.67, 'text': "So we're not going to get dog, we're actually going to get n r.", 'start': 14751.966, 'duration': 3.704}, {'end': 14759.334, 'text': "And that's because we had to go through that setter.", 'start': 14755.67, 'duration': 3.664}, {'end': 14760.996, 'text': 'And the same goes for anything else.', 'start': 14759.694, 'duration': 1.302}, {'end': 14766.582, 'text': 'So I could say down here, like Shrek dot rating is equal to cat.', 'start': 14761.016, 'duration': 5.566}, {'end': 14775.622, 'text': "And if we tried to print out Shrek dot rating, then we're going to get an R because it's going to get filtered out by that setter.", 'start': 14767.423, 'duration': 8.199}, {'end': 14776.583, 'text': "But here's the thing.", 'start': 14776.042, 'duration': 0.541}, {'end': 14781.31, 'text': 'if I wanted to set this to a valid rating, like if I set Shrek dot rating equal to R,', 'start': 14776.583, 'duration': 4.727}, {'end': 14785.275, 'text': "now it's going to be able to take that rating because it's valid.", 'start': 14781.31, 'duration': 3.965}, {'end': 14787.978, 'text': "So that's kind of how we can use getters and setters.", 'start': 14785.375, 'duration': 2.603}, {'end': 14789.139, 'text': 'And a lot of times.', 'start': 14788.098, 'duration': 1.041}, {'end': 14795.746, 'text': "what people will do is they'll create getters and setters for each of the attributes inside of their classes.", 'start': 14789.139, 'duration': 6.607}, {'end': 14798.209, 'text': "you don't have to, but a lot of times they can be useful.", 'start': 14795.746, 'duration': 2.463}, {'end': 14800.231, 'text': 'So what you want to do is just play around with that.', 'start': 14798.369, 'duration': 1.862}, {'end': 14803.554, 'text': 'And, you know, basically, these just make your class more secure.', 'start': 14800.351, 'duration': 3.203}, {'end': 14808.179, 'text': "So they make it so someone couldn't, for example, give your movie an invalid rating.", 'start': 14803.754, 'duration': 4.425}, {'end': 14818.054, 'text': 'In this tutorial, I want to talk to you guys about static attributes in classes and C sharp.', 'start': 14812.432, 'duration': 5.622}, {'end': 14827.178, 'text': 'a static attribute is basically a special type of attribute in a class which is shared by all of the objects and all the instances of that class.', 'start': 14818.054, 'duration': 9.124}], 'summary': 'Explanation of using getters and setters to control access and modification of private attributes in a class, ensuring secure and valid data input.', 'duration': 348.713, 'max_score': 14478.465, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ814478465.jpg'}, {'end': 15293.157, 'src': 'heatmap', 'start': 15130.538, 'weight': 0.82, 'content': [{'end': 15136.403, 'text': "So in between hot the creating holiday and creating cashmere we're printing out the song count.", 'start': 15130.538, 'duration': 5.865}, {'end': 15137.724, 'text': "So let's see what happens.", 'start': 15136.823, 'duration': 0.901}, {'end': 15140.907, 'text': 'What we should get is one in two.', 'start': 15138.465, 'duration': 2.442}, {'end': 15147.973, 'text': 'So basically when we create holiday, and then we print out the song count one songs been created so we get a one over here.', 'start': 15141.107, 'duration': 6.866}, {'end': 15150.673, 'text': 'then we create this cashmere object.', 'start': 15148.473, 'duration': 2.2}, {'end': 15154.834, 'text': 'And so that song counts going to get incremented again, and here we get to.', 'start': 15151.034, 'duration': 3.8}, {'end': 15164.296, 'text': 'So this static attribute is telling us information not about the specific objects themselves, but about the class in general.', 'start': 15155.494, 'duration': 8.802}, {'end': 15169.317, 'text': 'right, so I can figure out how many objects have been created of the song class.', 'start': 15164.296, 'duration': 5.021}, {'end': 15172.358, 'text': 'right, how many instances of the song class have been created in my program?', 'start': 15169.317, 'duration': 3.041}, {'end': 15179.123, 'text': "But that's not a piece of information that is going to be specific to the holiday object or to the cashmere object.", 'start': 15173.038, 'duration': 6.085}, {'end': 15183.567, 'text': "That is a piece of information that's going to be specific to the class itself.", 'start': 15179.643, 'duration': 3.924}, {'end': 15186.649, 'text': "And that's basically what a static class attribute is.", 'start': 15184.107, 'duration': 2.542}, {'end': 15192.094, 'text': "It's an attribute about the class not about the specific objects.", 'start': 15187.07, 'duration': 5.024}, {'end': 15193.114, 'text': 'of the class.', 'start': 15192.634, 'duration': 0.48}, {'end': 15197.557, 'text': "So it's basically an attribute that we store to kind of, you know, give us information about that class.", 'start': 15193.134, 'duration': 4.423}, {'end': 15201.44, 'text': 'And you can create static attributes, you can create as many as you want.', 'start': 15198.158, 'duration': 3.282}, {'end': 15203.301, 'text': 'And honestly, they can be really useful.', 'start': 15201.46, 'duration': 1.841}, {'end': 15206.783, 'text': "And you'll notice that whenever we access them, we don't say like.", 'start': 15203.401, 'duration': 3.382}, {'end': 15210.566, 'text': "I wouldn't say like cashmere dot song count like.", 'start': 15206.783, 'duration': 3.783}, {'end': 15212.307, 'text': "I'm not going to be able to do that.", 'start': 15210.566, 'duration': 1.741}, {'end': 15215.689, 'text': 'So we have to access it through the actual class.', 'start': 15213.308, 'duration': 2.381}, {'end': 15219.832, 'text': 'Now, one thing that we could do is we could create a method.', 'start': 15215.749, 'duration': 4.083}, {'end': 15221.713, 'text': 'So I could come over here, and I could create a method.', 'start': 15219.932, 'duration': 1.781}, {'end': 15225.359, 'text': 'So I could say like, public, get song count.', 'start': 15221.753, 'duration': 3.606}, {'end': 15228.565, 'text': 'And actually, this is going to return an integer.', 'start': 15226.141, 'duration': 2.424}, {'end': 15232.673, 'text': 'And then over here, I could actually return the song count.', 'start': 15229.487, 'duration': 3.186}, {'end': 15241.039, 'text': "So I could say like, And now we're actually going to be able to access the song count on each of our individual objects.", 'start': 15232.713, 'duration': 8.326}, {'end': 15248.425, 'text': 'So I could technically come down here and say, cashmere dot get song count.', 'start': 15241.159, 'duration': 7.266}, {'end': 15252.689, 'text': "And now we'll be able to get the song count off of one of those objects.", 'start': 15248.666, 'duration': 4.023}, {'end': 15255.572, 'text': "So you'll see now that we can get to just like we did before.", 'start': 15252.889, 'duration': 2.683}, {'end': 15263.355, 'text': 'So you can either just create a static attribute and access it using like song dot song count, like I did over here.', 'start': 15256.332, 'duration': 7.023}, {'end': 15269.177, 'text': 'Or you could create a getter method like get song count, and then the individual objects could access that.', 'start': 15263.855, 'duration': 5.322}, {'end': 15271.378, 'text': 'And both of those can be pretty useful.', 'start': 15269.518, 'duration': 1.86}, {'end': 15275.78, 'text': "Sometimes you're going to want the objects to be able to have access to those static attributes.", 'start': 15271.979, 'duration': 3.801}, {'end': 15279.902, 'text': "But that's sort of an overview of static attributes and really that static keyword.", 'start': 15275.84, 'duration': 4.062}, {'end': 15284.384, 'text': "And actually, as we go forward, I'm going to show you some other cool stuff we can do with that static keyword.", 'start': 15280.182, 'duration': 4.202}, {'end': 15293.157, 'text': "in this tutorial, I'm gonna show you guys how to use static methods in classes.", 'start': 15288.795, 'duration': 4.362}], 'summary': 'Explains static class attributes and methods for accessing them in java.', 'duration': 162.619, 'max_score': 15130.538, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ815130538.jpg'}, {'end': 15212.307, 'src': 'embed', 'start': 15184.107, 'weight': 4, 'content': [{'end': 15186.649, 'text': "And that's basically what a static class attribute is.", 'start': 15184.107, 'duration': 2.542}, {'end': 15192.094, 'text': "It's an attribute about the class not about the specific objects.", 'start': 15187.07, 'duration': 5.024}, {'end': 15193.114, 'text': 'of the class.', 'start': 15192.634, 'duration': 0.48}, {'end': 15197.557, 'text': "So it's basically an attribute that we store to kind of, you know, give us information about that class.", 'start': 15193.134, 'duration': 4.423}, {'end': 15201.44, 'text': 'And you can create static attributes, you can create as many as you want.', 'start': 15198.158, 'duration': 3.282}, {'end': 15203.301, 'text': 'And honestly, they can be really useful.', 'start': 15201.46, 'duration': 1.841}, {'end': 15206.783, 'text': "And you'll notice that whenever we access them, we don't say like.", 'start': 15203.401, 'duration': 3.382}, {'end': 15210.566, 'text': "I wouldn't say like cashmere dot song count like.", 'start': 15206.783, 'duration': 3.783}, {'end': 15212.307, 'text': "I'm not going to be able to do that.", 'start': 15210.566, 'duration': 1.741}], 'summary': 'Static class attributes are useful for storing information about a class, and multiple can be created.', 'duration': 28.2, 'max_score': 15184.107, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ815184107.jpg'}, {'end': 15915.207, 'src': 'embed', 'start': 15891.157, 'weight': 3, 'content': [{'end': 15897.881, 'text': 'And basically what this means is that the Italian chef is going to inherit all the functionality from the chef class.', 'start': 15891.157, 'duration': 6.724}, {'end': 15902.024, 'text': 'So now the Italian chef can do everything that the chef class can do.', 'start': 15898.321, 'duration': 3.703}, {'end': 15905.068, 'text': "And I'm going to come over here and prove that to you guys.", 'start': 15903.084, 'duration': 1.984}, {'end': 15908.254, 'text': "So I'm going to create an Italian chef object.", 'start': 15905.108, 'duration': 3.146}, {'end': 15915.207, 'text': "So I'm just going to copy this guy and I'm going to paste this down here and I'm just going to change everything to Italian chef.", 'start': 15908.795, 'duration': 6.412}], 'summary': 'Italian chef inherits all functionality from chef class.', 'duration': 24.05, 'max_score': 15891.157, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ815891157.jpg'}], 'start': 14095.147, 'title': 'C# class attributes and inheritance', 'summary': 'Discusses getters and setters in c# classes, enforcing movie ratings, static attributes, and methods, and inheritance concepts in c#, providing examples and demonstrating their usage in various scenarios.', 'chapters': [{'end': 14139.753, 'start': 14095.147, 'title': 'Getters and setters in c#', 'summary': 'Discusses the usage of getters and setters in c# classes, which control access to attributes, enhancing security and defining valid data, and are extremely useful in various scenarios.', 'duration': 44.606, 'highlights': ['Getters and setters control access to attributes, enhancing security and defining valid data for specific attributes.', 'Getters and setters are extremely useful in various scenarios and make classes more secure.', 'Discussion on the usage of getters and setters in C# to control access to attributes and define valid data.']}, {'end': 14776.583, 'start': 14140.133, 'title': 'Movie rating enforcement', 'summary': 'Discusses how to enforce specific ratings for movies using getters, setters, and private attributes, ensuring that only valid ratings can be set for movies with examples of g, pg, pg-13, r, or nr, preventing unauthorized changes.', 'duration': 636.45, 'highlights': ['The chapter demonstrates how to create a movie class with specific attributes like title, director, and rating, and then enforce valid ratings like G, PG, PG-13, R, or NR using getters and setters.', 'It explains the concept of private attributes and how they restrict access to only code inside the movie class, preventing external code from modifying the rating directly.', 'The chapter demonstrates the usage of getters and setters to allow external code to access and modify the rating attribute, ensuring that only valid ratings can be set for movies.']}, {'end': 15140.907, 'start': 14776.583, 'title': 'Static attributes in classes', 'summary': "Explains the concept of static attributes in classes in c sharp, using the example of a song class with normal and static attributes, demonstrating how a static attribute is shared by all instances of the class and showing how the static attribute 'song count' increments with each object creation.", 'duration': 364.324, 'highlights': ['The chapter explains the concept of static attributes in classes in C sharp', 'The example of a song class with normal and static attributes', 'Demonstrating how a static attribute is shared by all instances of the class', "Showing how the static attribute 'song count' increments with each object creation"]}, {'end': 15654.524, 'start': 15141.107, 'title': 'Static attributes and methods in classes', 'summary': 'Explains the concept of static attributes and methods in classes, demonstrating the use of static attributes and methods to access class-level information and functionality, and the difference between static classes and non-static classes.', 'duration': 513.417, 'highlights': ['Static attributes provide information about the class, not specific objects, and can be accessed without creating instances of the class.', 'Static methods belong to the class itself, allowing access without creating an object of the class.', 'Difference between static and non-static classes: Static classes cannot be instantiated, while non-static classes can be instantiated.']}, {'end': 16268.18, 'start': 15658.467, 'title': 'Inheritance in c sharp', 'summary': 'Discusses the concept of inheritance in c sharp, where one class can inherit all the functionality of another class, demonstrating it through a chef and italian chef classes, showcasing how italian chef inherits functionality from the chef class, extends functionality, and overrides methods.', 'duration': 609.713, 'highlights': ['Italian chef inherits functionality from the chef class', 'Italian chef extends functionality by adding a new method', 'Overriding a method in the Italian chef class']}], 'duration': 2173.033, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GhQdlIFylQ8/pics/GhQdlIFylQ814095147.jpg', 'highlights': ['Getters and setters control access to attributes, enhancing security and defining valid data for specific attributes.', 'The chapter demonstrates how to create a movie class with specific attributes like title, director, and rating, and then enforce valid ratings like G, PG, PG-13, R, or NR using getters and setters.', 'The chapter explains the concept of static attributes in classes in C sharp', 'Italian chef inherits functionality from the chef class', 'Static attributes provide information about the class, not specific objects, and can be accessed without creating instances of the class.']}], 'highlights': ['C sharp is an extremely powerful programming language and is used in millions of applications around the world.', 'The course covers installation and setup of Visual Studio, including selecting the necessary components for building a console application.', 'The chapter covers working with strings including concatenation, new lines, string length, individual characters, string indexes, and methods.', 'The tutorial demonstrates how to get input from a user in C# and emphasizes the interaction between programs and users, showcasing the ability to use input information for different tasks.', 'Methods allow for the reuse of code by containing it inside its own single container, enabling the execution of specific tasks whenever called.', 'If statements in C# allow programs to respond to different situations, making them smarter and more adaptable.', 'Switch statements make it easier than if statements, providing clarity and ease of management.', 'The for loop is introduced as a more compact and manageable alternative to the while loop, providing a convenient way to manage iteration variables and execute code within the loop, resulting in a cleaner and more efficient solution.', 'The chapter demonstrates how to create an exponent function in C# using a for loop.', 'Using try-catch blocks to catch specific exceptions like divide by zero and format exceptions.', 'Classes and objects allow the creation of custom data types in C# programs', 'Getters and setters control access to attributes, enhancing security and defining valid data for specific attributes.']}