Encapsulation. In OOD, attributes (variable data) and methods (data with data) are combined together and are called incapsulation. Inkapsulation not only combines important information about the object, but also limits access to data and methods from the outside world. This is called the concealment of information.
Inheritance – OOD allows such classes to take shape hierarchically, where the lower or subclasses can import, implement and re -use permissible variables and methods from their immediate superclasses. This property is known as inheritance. This facilitates the definition of a certain class and the creation of generalized classes from certain ones.
Polymorphism – OOD languages provide a mechanism where methods performing similar tasks, but differing in arguments, can be appropriated the same name. This is called polymorphism, which allows one interface to perform tasks for different types. Depending on how the function is caused, the corresponding part of the code is performed.
Classes. Class is a generalized description of the object. The object is a copy of the class. The class determines all the attributes that the object can have, and the methods that determine the functionality of the object.
In the solution of solutions, attributes are stored as variables, and functionality are defined using methods or procedures.
Design process
The process of software development can be perceived as a sequence of clearly defined steps. Although it varies depending on the approach to design (functionally-oriented or object-oriented, nevertheless it may include the following stages:
The draft decision is created from the requirements of or the previously used system and / or diagram of the system sequence.
Objects are identified and grouped in classes on the basis of similarity of attributes.
The class hierarchy and relations between them are defined.
The application frames are defined.
Approaches to the development of software
Here are two general approaches to software development:
Design from top to bottom
We know that the system consists of more than one subsystem and contains a number of components. In addition, these subsystems and components can have their own set of subsystems and components and create a hierarchical structure in the system.
When designing from top to bottom, the entire software system is combined into a single whole, and then is divided into parts to get more than one subsystem or component based on some characteristics. Each subsystem or component is then considered as a system and then decomposes. This process continues until the lowest level of the system in the hierarchy from top to bottom is reached.
The descending project begins with a generalized system of the system and continues to determine its more specific part. When all the components are composed, the entire system appears.
The downward design is more suitable when the software solution should be developed from scratch, and specific details are unknown
Design from the bottom up
The design model “from the bottom up” begins with the most specific and basic components. This happens with components of a higher level using basic or lower level components. It continues to create components of a higher level, until the desired system develops as a single component. With each higher level, the number of abstractions increases.
The ascending strategy is more suitable when it is necessary to create a system from any existing system where basic primitives can be used in a newer system.
Both downward and ascending approaches are not practical separately. Instead, a good combination of both is used.
Development of the user’s interface software
A user interface is an interface application with which the user interacts for the use of software. The user can manipulate software and hardware and control it using a user interface. Today, the user interface is found in almost all places where there are digital technologies, including computers, mobile phones, cars, musical players, planes, ships, etc.
The user interface is part of the software and designed in such a way as to provide the user of software. The user interface provides a fundamental platform for the interaction of a person with a computer.
The user interface can be graphic, text and audio video, depending on the basic hardware and software combination. The user interface can be hardware or software or their combination.
The software becomes more popular if its user interface:
attractive
Easy to use
In a short time
Clear to understand
Consistent on all interface screens
The user interface is widely divided into two categories:
Command line interface
Graphic user interface
Command line interface (CLI)
CLI was an excellent tool for interacting with computers until the video display monitors appear. CLI is the first selection of many technical users and programmers. CLI is a minimum interface that software can provide its users.
CLI provides a command line, a place where the user enters the command and transfers it to the system. The user must remember the syntax of the team and its use. Previously, CLI was not programmed for the effective processing of user errors.
The team is a text link to a set of instructions that are expected to be executed by the system. There are methods such as macros, scenarios that facilitate the user’s work.
CLI uses less computer resources compared to GUI.
CLI elements
Command line interface (CLI)
The text string text interface may have the following elements:
The command line is a text notification, which mainly shows the context in which the user works. It is generated by the software system.
The cursor is a small horizontal line or a vertical line of the line height, representing the position of the symbol when typing. The cursor is mainly in a state of blinking. He moves when the user writes or delements something.
Team – the team is an executable instruction. It may have one or more parameters. The output data when executing the command are displayed on the screen in the form of a line. When the conclusion is received, the command line is displayed on the next line.
Graphic user interface
The user graphic interface provides the user with graphic means of interaction with the system. GUI can be a combination of both hardware and software. Using GUI, the user interprets the software.
As a rule, GUI is more resource -intensive than CLI. With the help of advanced technologies, programmers and designers create complex graphic interfaces that work with greater efficiency, accuracy and speed.