Welcome3:09 with Jeremy McLain
Welcome to Intermediate C#! This is what we'll be learning.
[MUSIC] 0:00 Hello and welcome, I'm Jeremy. 0:04 If you've started learning C# by taking the courses here at treehouse, 0:07 then you've already learned a lot about the C# programming language. 0:11 With what you've learned so 0:15 far, you can do a lot and I hope you had the chance to write some code on your own. 0:16 In the C# objects course we learned about object oriented programming. 0:20 If you remember, object oriented programming makes it easier to think about 0:26 architect in software programs because we can think about software 0:30 as a number of different objects that interact with each other. 0:34 Because object oriented programming naturally breaks the program into types 0:38 of objects, object oriented code is easier to reuse and maintain. 0:42 In this course we'll learn some slightly more advanced concepts of object oriented 0:48 programming and see how these concepts are supported by C#. 0:53 These language features and principles are used by most object oriented programs. 0:58 This is especially so in software frameworks. 1:03 Frameworks such as the .NET framework, for 1:06 example, are libraries of code that can be used by including them in our own code. 1:09 Frameworks are what make it possible to easily write 1:13 large software programs such as websites, games, interactive desktop software, 1:17 mobile device applications and so much more. 1:22 You may find yourself writing your own frameworks and 1:25 libraries that'll be used by other software developers. 1:28 If so you'll likely be using much of what you learn in this course. 1:31 In any case, knowing how these language features work 1:36 will help you understand how to work with existing libraries and frameworks. 1:39 Later, when we learn more about using the various classes provided by the .NET 1:44 Framework, you'll be grateful you have a good grasp on these concepts. 1:48 You may recall that there are four principles of object-oriented programming. 1:53 The principles we've learned so far are inheritance and encapsulation. 1:58 We'll briefly review these principles here and learn about two more, 2:03 polymorphism and abstraction. 2:08 These terms sound really technical but 2:10 the concepts they represent are actually quite straightforward. 2:12 This course will build on top of what we already know about C#, I recommend you 2:16 follow the links in the teacher's notes if you haven't completed the prerequisites. 2:21 Or if you feel like you need to review, 2:26 you can always do a quick refresher by watching some of those videos again. 2:27 We started learning about object oriented programming in the C# Objects course where 2:32 we wrote the code for a tower defense game called Treehouse Defense. 2:37 We'll use what we learn in this course to make it easier to extend 2:42 the Treehouse Defense game. 2:45 To extend code means to add capabilities to it without 2:47 rewriting any of the original code. 2:50 When we're done it will be possible to add different types of invaders and 2:53 powers to the game with minimal effort. 2:57 This sounds like a lot of fun and I'm excited to get going. 3:00 Let's begin by taking a look at the code that we ended with in C# objects 3:04
You need to sign up for Treehouse in order to download course files.Sign up