Easy-to-follow video tutorials help you learn software, creative, and business skills.Become a member
The most popular programming languages developed in the last 30 years are all Object-Oriented languages, but this wasn't always the way. My first programming job was writing assembly language Cobol and Fortran on mainframes. Now these were not object-oriented languages. They were straight procedural languages where the program is written as a long procedure. Now it might contain named functions and subroutines to make it more modular and maintainable, but it's really a long piece of code, often with all the data, all the variables defined in one place and all the logic in another.
But as programs got bigger and bigger, this proved to be difficult to manage, difficult to plan. And Object-Oriented languages started to gain popularity in the '80s. Now in an Object-Oriented language, this one large program will instead be split apart into self contained objects, almost like having several mini-programs, each object representing a different part of the application. Now each object contains its own data and its own logic, and they communicate between themselves.
Now the idea here is that these objects aren't random. They represent the way you would talk and think about the problem you are trying to solve. They represent things like employees, images, bank accounts, player objects, spaceships, asteroids, video segment, audio files, whatever exists in your program. So object-orientation is what's referred to as a programming paradigm. It's not a language itself but a set of ideas that is supported by many languages.
But is there an alternative to Object-oriented programming? Well, yes and no. There are other approaches to programming. Not just procedural languages like straight C, but if you go through a university computer science course, you might work with logic programming languages like Prolog. Well, functional programming languages like Haskell, but these do tend to be more popular in the academic world or with very specialized uses like computational linguistics. But if you are working or want to work in the practical pragmatic world of creating web applications, mobile apps, desktop applications, game development, you will be using Object- Oriented programming languages.
And your only real choice is do you know what that means or not? So the first question: if everything we do in these languages is Object-Oriented--meaning, we are oriented or focused around objects --exactly what is an object anyway?
Get unlimited access to all courses for just $25/month.Become a member
82 Video lessons · 101740 Viewers
61 Video lessons · 88497 Viewers
71 Video lessons · 72318 Viewers
56 Video lessons · 104030 Viewers
Access exercise files from a button right under the course name.
Search within course videos and transcripts, and jump right to the results.
Remove icons showing you already watched videos if you want to start over.
Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.
Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.
Your file was successfully uploaded.