The Object-oriented programming, or OOP, is an approach to problem solving where all computations are carried out using objects. An object is a part of a program that knows how to perform certain actions and how to interact with other elements of the program. Objects are the basic units of object-oriented programming. The simplest instance of an object would be a person. Logically, we would expect a person to have a name. This would be remembered a property of the person. We could also expect a person to be able to do something, such as walking or driving. This will be considered a method of the person.
Code in object-oriented programming is organized around objects. Once we have our objects, they can interact with each other to make something happen. Let’s say we want to have a program where a person gets into a car and drives it from A to B. We would start by describing the objects, such as a person and car. That includes methods: a person knows how to drive a car, and a car knows what it is like to be driven. Once we have our objects, we bring them together so the person can get into the car and drive.
Classes and Objects
A class is a blueprint of an object. We can think of a class as a concept, and the object is the embodiment of that concept. We need to have a class before we can create an object. So, let’s say we want to use a person in our program. We want to be able to describe the person and have the person do something. One class called ‘person’ would provide a blueprint for what a person looks like and what a person can do. To actually use a person in our program, we need to create an object. We use the person class to create an object of the type ‘person’. Now we can describe this person and have it do something.
Classes are very useful in programming. Consider the example of where we don’t want to use just one person but 100 people. Rather than describing each one in detail from scratch, we can use the same person class to create 100 objects of the type ‘person’. We still have to give each one a name and other properties, but the basic structure of what a person looks like is the same.
Methods and Functions
Once we have created objects, we want them to be able to do something. This is where methods come in. The method in object-oriented programming is a description associated with a class. A method explains the behavior of the objects that are created from the class. In other words we can say this is that a method is an action that an object is able to perform. The combination between method and class is called binding. Consider the example of an object of the type ‘person’, created using the person class. Methods interacted with this class could consist of things like walking and driving. Methods are few moments confused with functions, but they are distinct.
The function is a combination of instructions that are combined to achieve some result. A function typically requires some input (called argument) and returns some results. For instance, consider the example of driving a car. To determine the mileage, we need to perform a calculation using the distance driven and the amount of fuel used. We could write a function to do this calculation. The arguments entering into the function would be distance and fuel consumption, and the result would be mileage. Anytime we want to determine the mileage, we simply call the function to perform the calculation.
How does this differ from a method? The function is an independent and not associated with a class. We can use this function anywhere in our code, and we don’t need to have an object to use it.
Now, what if we were to associate the function with an object of the type ‘car?’ For example we want to be able display the mileage of the car on the dashboard. The mileage calculation has become a method because it is a procedure associated with the car’s class in this case. Every time we create a new object of the type ‘car’ using the car class, this method will be part of the object. The action the car is now have to do is to calculate mileage. This is the similar calculation as performed by the stand-alone function but is now bound to the car.
Crossword Puzzle on Object-Oriented Programming
This crossword puzzle touches on objects, classes and methods in Object-Oriented programming.
The creator of the first program. (It never actually ran) AdaLovelace
Creator of the analytical engine CharlesBabbage
The low level language it speaks to the computer Assembly
Converts the programming language to machine code ahead of the time. compiler
Converts the programming language into machine code as it runs as interpreter
One computer program set up to run same like a computer inside a computer virtual machine
A mistake in programming bug
A bunch of pre-scripted commands that someone can use in their programs library.
A language that emphasizes less wordy commands Python Objects as data structures
The fundamental concepts of OOP are objects and classes. An object may be a arrangement incorporating information about state and behavior. for instance , an object representing a customer can have a particular telephone number and email related to them, and behaviors like placeOrder or cancelOrder. An object representing a button on an internet site can have a label, and may triggerEvent when pressed. The quality of OOP is that state and behavior are bundled together: rather than thinking of customer data separately from customer actions, we expect of them together unit representing a customer. this is often called encapsulation, and it’s one among the core tenets of object-oriented programming.
Classes as blueprints
The real strength of OOP comes from utilizing classes. Classes are like blueprints for objects. They describe the possible states and behaviors that each object of a particular type could have. for instance , if you say “every customer will have a telephone number and an email, and can be ready to place and cancel orders”, we only defined a class! this manner , we’ll mention customers during a unified way.Classes as blueprints
Then a selected Customer object is simply a realization of this class with particular state values.
Objects in Python
In Python, everything is an object. Numbers, strings, DataFrames, even functions are objects. especially , everything we affect in Python features a class, a blueprint related to it under the hood. The existence of those unified interfaces, is why you’ll use, for instance , any DataFrame within the same way. we’ll call type() on any Python object to seek out out its class. for instance , the category of a numpy array is really called ndarray (for n-dimensional array).
Attributes and methods
Classes incorporate information about state and behavior. State information in Python is contained in attributes, and behavior information — in methods. Take a numpy array: we’ve already been using a number of its methods and attributes! for instance , every numpy array has an attribute “shape” that we simply can access by specifying the name of the array, then dot, and shape. It also has methods, like max and reshape, which also are accessible via dot.
Object = attributes + methods
Attributes (or states) in Python objects are represented by variables — like numbers, or strings, or tuples, within the case of the numpy array shape. Methods, or behaviors, are represented by functions. Both are accessible from an object using the dot syntax. we’ll list all the attributes and methods that an object has by calling dir() thereon . for instance here, we see that a numpy array has methods like trace and transpose..