Schedule

Schedule

Monday, March 30

1427734800 Tech News Today
1427738400 Triangulation
1427743800 iPad Today
1427751000 Coding 101
1427756400 Tech News 2Night

Tuesday, March 31

1427821200 Tech News Today
1427824800 MacBreak Weekly
1427833800 Security Now
1427842800 Tech News 2Night
1427846400 All About Android

Wednesday, April 1

1427902200 FLOSS Weekly
1427907600 Tech News Today
1427911200 Windows Weekly
1427918400 This Week in Google
1427929200 Tech News 2Night
1427931000 Android App Arena
1427936400 Ham Nation

Thursday, April 2

1427994000 Tech News Today
1427997600 Know How...
1428003000 Marketing Mavericks
1428008400 Home Theater Geeks
1428015600 Tech News 2Night
1428017400 The Giz Wiz

Friday, April 3

1428080400 Tech News Today
1428084000 This Week in Law
1428094800 Before You Buy
1428102000 Tech News 2Night
1428105600 Padre's Corner

Saturday, April 4

1428170400 The Tech Guy

Sunday, April 5

1428256800 The Tech Guy
1428271200 This Week in Tech

Monday, April 6

1428339600 Tech News Today
1428343200 Triangulation
1428348600 iPad Today
1428355800 Coding 101
1428361200 Tech News 2Night

Tuesday, April 7

1428426000 Tech News Today
1428429600 MacBreak Weekly
1428438600 Security Now
1428447600 Tech News 2Night
1428451200 All About Android

Wednesday, April 8

1428507000 FLOSS Weekly
1428512400 Tech News Today
1428516000 Windows Weekly
1428523200 This Week in Google
1428534000 Tech News 2Night
1428535800 Android App Arena

Most Recent Episodes

The Tech Guy
The Tech Guy 1173 March 28th, 2015

Meerkat vs. Periscope

This Week in Enterprise Tech

HP Aims New Rack at Open Stack Developers

Before You Buy

Parrot Bebop Preview, Vivitek Qumi Q5 projector

Tech News 2Night

Tech elite likes to go racing

This Week in Law

Creative Commons Licenses 101 with Sarah Pearson.

Tech News Today

Blackberry posts a profit!

This Week in Computer Hardware

Silverstone Fortress FT05 case, Dell XPS 13 review, and Corsair Dominator memory kits.

The Giz Wiz

Condiments for pets, mini tennis ball launcher, Goatee Saver, and more.

Home Theater Geeks

Composer Richard Einhorn, MTI's Kevin Manbeck, and restoring "The Passion of Joan of Arc."

Tech News 2Night

Twitter releases Periscope!

Coding 101 31

C# Objects and Classes

August 21 2014

Hosts: Fr. Robert Ballecer, SJ and Shannon Morse

Snubs Compiled
Microsoft Visual Studio Express 13 Windows

MonoDeveloper OSX

Ivory Tower
Way back in Episode 6 of the first module of Coding 101, we talked a little about "Object Oriented Programming"
* OOP is an approach to programming that divides the process -- the "problem solving" of a program into modular, reusable pieces.

Before OOP, you wrote your program, then you considered how data might be processed by your code.
* In OOP, you don't think of data seperate from code -- instead, you think of "Objects" which combine code and data. --
** You wrote your code, which then processed data
** OOP unified the two: instead of having data and code, you have a "object" that combines the two.
** Instead of having pieces of code that handle sets of data, you now have OBJECTS that model In-Real-Life logic with In-Real-Life sets of data.

In other words... you code problem-solving, instead of process -- It was a huge jump.
*** Easier to Understand
*** Easier to Maintain
*** Easier to Upgrade

Now let's talk about CLASSES and OBJECTS
* Back in Module 1, we talked about coding functions or "methods"

For Example
"public int answer(int a, int b)
{

int c = a + b;
return c;

}"
** This will create a public function called "answer" that will accept two variables and return an integer value when called.
** We would call this function by writing:
answer(1,2)
** and it would return:
3

That function or "method" combines variables and code that processes those variables

A CLASS combines multiple "methods" and variables.
* A "class" is a blue print that can be created multiple times.
* When the blue print is used to create -- it creates an "OBJECT of that class
* We can create as many objects of a class, and when we're done with it, it's removed from memory.

IMPORTANT!!! --- Don't Interchange "Class" and "Object"
-- A Class is NOT an Object
-- A Class is the blueprint from which an Object is created.
-- A Class DEFINES an object, but it is not an object itself (Can I repeat the same thing more times?)
-- An OBJECT is NOT a class
-- An object is an INSTANCE of a class (based on that "blue print")
-- An object exists in memory ... a class does not (i.e. a class is not "real" until it is used to create an object of that class.)

Defining a Class is easy:
"public class C101
{
//Fields, methods, properties, events... everything in the ""blue print"" goes in here
}"

Creating an OBJECT of a class:
* We use the keyword "new" to create an instance of a class (aka an "object")
* In our example, we've created a class named "C101"
-- If we wanted to create an instance of that class (aka an "object") we would write:
***** "C101 object1 = new C101();"

This will create an instance of the class "C101" called "object1"
* The reason why we write "C101" twice is because we're
1. Creating an REFERENCE to an object, named "object1" that is based on the class "C101"
2. Then we're actually CREATING a "new" instance of the class "C101()" that can be referenced with "object1"

Get in Touch With Us!

* Subscribe and get Coding 101 automatically at TWiT.tv!
* Follow PadreSJ and Snubs on Twitter.
* Watch the show live and join the chatroom every Thursday at 1:30pm PST.
* Email us at Padre@twit.tv and Shannon@twit.tv.
* Join our Google+ Community!
* Check out our trancripts.