
Objective: Get Visual Studio 2017
Objective: Learn how to declare classes based on observations about objects in the world
Objective: Learn how code reuse works in a graphical program
Objective: Learn how to find the common characteristics of objects and make instance variables
Objective: Possible solution to question on instance variables
Objective: Learn how to create a class, create instances of the class and how to confirm each instance has its own copy of the instance variable
Objective: Presentation of a possible solution to question on making object instances
Objective: Learn how to express object behaviors with methods
Objective: Presentation of possible solution to question in previous video
Objective: Learn how to create a method that returns a value
Objective: Presentation of possible solution to question asked in previous video
Objective: Learn why and how a property is declared and used
Objective: Presentation of possible solution to question on arrow count property
Objective: Learn how classes, methods, properties, fields, instances are used in a graphical application
Objective: Create a class and examine the order in which code in a class runs
Objectives: Understand why to use static fields and properties
Objective: Understand how object variables use references to point to the same memory
Objective: Learn how to use properties to show that two objects are really just pointers to the same memory
Objectives: Review of the concepts covered in section 1
Objective: Take a look at the concept of centralization familiar from every day experience
Objective: Learn how to set up the Monster parent class
Objective: Presentation of possible solution to question on virtual methods in the monster class
Objective: Create and instantiate the Orc class
Objective: Understand the needed for overriding the Speak method derived from the monster class
Objective: Review the connection between the Orc and Monster classes
Objective: Create and instantiate the EvilDragon class with the overriding version of Speak
Objective: Understand how to add methods that represent behaviors specific to orcs and evil dragons
Objective: Understand how to add individual methods to both derived classes
Objective: Take a journey of the .Net Framework to see how classes work in real life
Objective: Understand exactly how polymorphism operates when inheritance is involved
Objective: Add a class that can hold monster objects
Objective: Understand how inheritance polymorphism operates in the context of method parameters
Objective: Understand how interface can be used to group radically different objects by a common behavior
Objective: Possible solution to question on interfaces
Objective: Understand how interface polymorphism works with method parameters
Objective: Understand how interfaces are used in the .Net framework to group classes by behaviors
Objective: Check your understanding of the concepts related to interfaces and interface polymorphism
Objective: Take a look at some next possible steps
Very Important:
1. Friends, please take the time to review the curriculum carefully before buying so you can see exactly whether this is the right course for you. Please do not join until you have completed this step.
2. Please watch the free preview videos so you can see whether the presentation style works for you. Please remember I am just one person, and I make my videos often after I have been working for many hours already. PLease do not join until you have completed this step.
3. If something needs fixing, please let me know. Again, I'm just one person and not a big team of people. I will try to fix it as quickly as possible. Thank you.
Course Overview:
1. This is a course for those who are willing to push themselves. It's not a "basic" introduction that gives an overly simplified perspective on OOP. In places, this code connects to the .NET framework, which is a professional level code base written in C#. My promise is simple: take this course, and you'll discover details not taught in any other course. Speaking from experience, I can tell you that it is through consistent, daily effort, and I don't mean little effort, but whole-hearted effort, that one makes progress when it comes to these technical subjects. That's what years of struggling have taught me.
2. Please be sure to watch the free preview videos before enrolling so you can be sure the style of presentation works for you.
3. I use pictures in the earlier videos to motivate some concepts. This is good for visual learners.
4. The more advanced videos on the bottom are more about just straight code and the .NET Framework. I have this section on the bottom so you can see how OOP actually looks in a professional level framework.
5. I have placed questions throughout the videos. I also mention the solutions from my perspective.
6. There are separate PDF's placed under lesson resources. These contains completely separate examples.
7. I discuss concepts from multiple perspectives where I feel it's necessary to do so. I think developing a multidimensional understanding of concepts results in a much deeper level of true understanding.
8. In some of the videos I place a lot of comments explaining each line bit by bit. I do this because I personally feel that reading comments makes a difference in terms of real understanding.
9. My explanations focus both on the how and the why, and I stress this difference throughout most of the course.
10. This is not the first C# course you should be taking.
11. The bottom sections are a break from the upper sections and show how C# is used in Windows Forms programs in actual code.
Who should not join:
1. People wanting the how without the why.
2. People looking for fast and superficial explanations.
3. People who are interested only in code without any visual explanations.
4. People who like fast talking.
5. People not looking for multiple explanations from multiple perspectives.
Thank you for reading, and I will see you inside!
note: parts of promo presentation licensed from presentermedia