Object Oriented Programming (OOP)

Object Oriented Programming (OOP)

Constructors

As well as fields, properties and methods, can be public or private. The code external to the fields, properties and methods of a class can be public or private.
Code external to a class cannot instantiate an object using a private constructor; it must use a public constructor.

OOP IN DESKTOP APPLICATIONS

In Chapter 2, you created a simple desktop application in C# using Windows Presentation
Foundation (WPF). WPF desktop applications are heavily dependent on OOP techniques, and this
section takes a look at this to illustrate some of the points made in this chapter. The following Try It

Out enables you to work through a simple example.

In UML

The Unified Modeling Language is the best known and most widely used software system modeling language in use today; it is supported by the Object Management Group. It is a graphical language for visualizing, specifying, building and documenting a system.

How do you think of objects?

How do you think of objects?

Thinking in terms of objects is very similar to how we would do in real life, for example we will think of a car to try to model it in a POO scheme, we would say that the car is the main element that has a number of features, such as color, the model or brand, also has a number of associated functionalities, such as starting, stopping or parking, in a POO scheme the car would be the object, the properties would be the characteristics as the color or the model and the methods would be the functionalities associated as to start or stop

Why OOP?

Why OOP?

It allows code to be reusable, organized and easy to maintain. It follows the software development principle used by many programmers DRY (Don't Repeat Yourself), to avoid duplicating code and thus create efficient programs.

Objects are able to interact and modify
the values contained in their fields or
attributes (state) through their methods (behavior).

OOP TECHNIQUES

Now that you know the basics, and what objects are and how they work, you can spend some time
looking at some of the other features of objects. This section covers all of the following:

Interfaces

Inheritance

Polymorphism

Relationships between objects

Operator overloading

Events

Reference versus value types

Object oriented programming languages

Java

Java

Java is a type of programming language and a computer platform, created and marketed by Sun Microsystems in 1995.

Constituted as an object-oriented language, it is intended to allow application developers to write the program only once and run it on any device.

Python

Python

Python is a high-level programming language used to develop applications of all kinds. Unlike other languages like Java or . NET, is an interpreted language, it is not necessary to compile it to run applications written in Python, but rather run directly by the computer using a program called an interpreter

C++

C++

C++ is a programming language that comes from the extension of the C language so that it could manipulate objects