To start out we will think of an object as something concrete like a Car or Boat. We create something called a Class in OOP. The class is just a big block of code related to something. If you have a program that is a online Classifieds Program like Craigs List you might have a section wher e you display Boats For Sale. So, you might build a class for Boats. Public Class Boats End Class You could put any Vb or C# code, that is a VB example, inside that class. The Public word means your program can read the code from anyplace in your program and the word class means this will be a Class Object and the word Boat is just the name of the class. You might put a subroutine inside the class that when it is called from your Form which is being displayed by a user will display a message that there are no boats for sale. Public Class Boats Public Sub NoBoats() MessageBox.Show( "We Have No Boats Right Now" ) End Sub End Class Now, suppose you are working on code in a form that lists boats for sale. You tried to read the DataBase but there are no boats listed. So you call the NoBoats Subroutine like:... If NoBoatsFoundInDataBase Then Dim MyTempBoatsClass As New Boats() Note that the above statement establishes a pointer or a reference to the Boats Class much like as if it was a folder. When we call any subroutine or use any properties inside that class the computer knows it is inside that class and not in another class since you might have objects with the same name used in many classes much like a Folder can have a file and another folder have another file with the same name but diferent contents. Anyway, you tell your program to look for the sub in your boat class and this has the fancy name of instantiation. We say we instantiated the Boat Class. When we did it we gave it the name of MyTempBoatClass which we could of called anything just like if you were creating a new folder. Now to call our Sub inside our Boat Class: MyTempBoatsClass.NoBoats() EndIf If the above code were inside the form then the user would see the message about no boats displayed on the screen. Think of a Class Object sort of like a Folder for now. A Folder can have some properties like a name and size. Inside it you can put diferent types of files which we might think of in code as diferent objects like Subroutines, Functions and variables. Well, that is my Raw conceptual view of these puppies and we will read much more about them as we get into the tutorials. Rick USA ----- Original Message ----- From: Donald Marang To: programmingblind@xxxxxxxxxxxxx Sent: Friday, May 21, 2010 6:43 PM Subject: Re: Vb.net or C#.net Tutorial Project In Python tutorials, they go to great lengths to stress that EVERYTHING is an object. I have trouble expressing or even getting my head around their examples. But they make it clear, EVERYTHING is an object! Don Marang From: qubit Sent: Friday, May 21, 2010 4:59 PM To: programmingblind@xxxxxxxxxxxxx Subject: Re: Vb.net or C#.net Tutorial Project I wouldn't call everything an object -- it is true the word "object" is overused and has been applied to many things. But in OO programs, it is a set of data coupled with "methods" or functions defining operations on that data. In the OO languages, all built in types declare objects -- for example, something as simple as an int variable is an integer object with operations + and - and you know the rest. The most general object is one of a "class" type. This in C++ is a glorified struct with specialized data and member functions and inheritance from base classes whose data and functions you want to apply. It is similar with other OO languages. An object in my learning of the term is an instance of a type -- that is a variable or constant declared with that type. Perhaps the more recent textbooks redefine the term. I'll let other list members correct the holes or errors in my definition in modern parlance. And of course there are interfaces and templates and other beasties you need to learn in the various languages, generalizing types yet another level. So happy hacking. For the procedural programmers accustomed to COBOL or C or fortran or whatever, I hope this is a helpful intro. When I first made the transition from procedural to OO, it was like turning a C program inside-out -- or rather, OO style localized and hid more details of an implementation so the C version was like inside-out C++ with nits all scattered far and wide, even if the C program was well thought out. Happy hacking all. --le ----- Original Message ----- From: RicksPlace To: programmingblind@xxxxxxxxxxxxx Sent: Friday, May 21, 2010 12:04 PM Subject: Re: Vb.net or C#.net Tutorial Project Hi Jim. I was doing COBOL when you were still watching Barney - Grin! I started programming back in the 1970's with Cobol and all that MainFrame Jazz so know exactly what you mean. I will be addressing OOP which is really nothing more than thinking of everything as an object. A Subroutine is an object, A Function Is An Object, An Array is an Object everything is pretty much an object. And, objects have properties you can set and often they have methods which are themselves subroutines or functions. Anyway it is not a somplex as the gurus make it sound, it's pretty easy and intuitive after you play with it a little. Rick USA ----- Original Message ----- From: Homme, James To: programmingblind@xxxxxxxxxxxxx Sent: Friday, May 21, 2010 8:25 AM Subject: RE: Vb.net or C#.net Tutorial Project Hi Rick, First of all, thank you very much for taking the time to do this. Secondly, please don't skim over the object stuff. Speaking for myself, I'm an old Cobol programmer who has trouble thinking that way, so I need to get over it. I'll subscribe to the list from home, which is where I'll load the tools and do the work. Jim Jim Homme, Usability Services, Phone: 412-544-1810. Skype: jim.homme Internal recipients, Read my accessibility blog. Discuss accessibility here. Accessibility Wiki: Breaking news and accessibility advice From: programmingblind-bounce@xxxxxxxxxxxxx [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of RicksPlace Sent: Friday, May 21, 2010 8:17 AM To: programmingblind@xxxxxxxxxxxxx Subject: Re: Vb.net or C#.net Tutorial Project Hi Guys: After the postings I think the following project will hhelp get things off the ground. One: We want a modular project so folks can pick and choose what they want to include in it and allow for skipping modules without impacting later modules. This way you can pick and choose features and technicals to include in the project. Two: Start from the very beginning building upon our experiences. Three: Use both Vb.net and C# ( Pronounced CSharp) if possible. To this end I will build a series of tutorials this weekend and into next week comprising Module01. Module01 will just build the project and set up some fundemental building blocks we can expand on later. It will consist of 4 Tutorials: tutorial01: Step01 Set up the IDE for Accessibility using my settings, those on jamal's or the Elf's site or your own settings as you prefer. Step02 Add a ShortCut to Vb.net or C#.net to our DeskTop or whatever the same thing would be in Vista or Windows7. this way you can just click a DeskTop Icon to open your IDE for working on the project or any other Vb.net or C# project you build. Tutorial02: Step01 Create A Project named WinformBasics or one of your own choosing and Structure the project by adding a Utilities Folder with a Globals file and a Logger Utility for use throughout all the subsequent modules. Tutorial03: Step01 Add a Windows Form called RootForm to the project and set some of it's properties. Step02 Make rootForm the Default Project form and get rid of the automatically generated Form1 Windows Form that was added when the Project was created. Tutorial04 Add a MenuBar to RootForm with a Menu called HotLinks. Add one or more links as pull down items to the HotLinks Menu that will take you to someplace, Websites in my current thinking. Once we have Module01 up and running we will discuss the next set of tutorials which will add a second menu to the MenuBar of the RootForm.This Module will have features that will demonstrate basic programming techniques like working with strings, Arrays, Looping and anything else you might have questions about regarding the fundemental Vb.net or C# statements. It might prove cool to use this feature later in another series to create a project to display programming tips and snipet code for complex issues and would fit well in with a DataBase tutorial series if that is how you want to go later on. we will also touch on creating a Class with Subroutines, Functions and Properties and see how to use them. This is for the Raw Beginners and unless otherwise indicated can be skim read by more experienced programmers before we continue to the Third Module where we can dig into OOP more in-depth or go into using Data Files and, or, a DataBase. So, look for the WinformBasics project with 4, or so, file attachments. They will be txt files you can copy and save. I think this is easier than trying to use the tutorials directly from inside a e-list posting and how I have done it in the past. Well, unless someone yells out Stop! I will try and get something up this weekend and have this first Module done by the end of the week. Remember to speak up about anything because while we are on one topic we can all discuss and have input into the material learned. Post up any tips, suggestions or questions while we are working on a module to help make this series the best it can be in a short timeframe. EndOfArticle -------------------------------------------------------------------------- This e-mail and any attachments to it are confidential and are intended solely for use of the individual or entity to whom they are addressed. If you have received this e-mail in error, please notify the sender immediately and then delete it. If you are not the intended recipient, you must not keep, use, disclose, copy or distribute this e-mail without the author's prior permission. The views expressed in this e-mail message do not necessarily represent the views of Highmark Inc., its subsidiaries, or affiliates.