# CTE Resource Center - Verso - Programming, Advanced Task 1362466397

CTE Resource Center - Verso

Virginia’s CTE Resource Center

Describe object-oriented programming (OOP) and related concepts.

Definition

Description should include the following concepts:
  • Abstraction is a general model of a real-world system that includes the essence of that system.
  • Class is a formal definition of an object.
  • Encapsulation means that each class should contain all the aspects of its area of responsibility without revealing the details of how it does what it does.
  • Function is a specialized operation that returns information.
  • High cohesion (Single Responsibility Principle) is the concept that each class should do one thing and do it well.
  • Inheritance allows one class, called a subclass, to use methods and properties of another class, called a superclass.
  • Loose coupling is a relationship in which one module interacts with another module through a stable interface and does not need to be concerned with the other module's internal implementation.
  • Method is performance of operations on data stored in a class.
  • Object is an instance of a class—a programming element that includes data, properties (attributes), and methods (actions).
  • Object composition is a way to combine simple objects or data types into more complex ones.
  • Object-oriented programming is a means of designing software that allows programmers to solve real-world problems by creating objects that interact with other objects similarly to the way they would interact in the real world.
  • Polymorphism is the idea that a code element can transform into multiple forms or behave in multiple ways.
  • Property describes attributes of the object.

Related Standards of Learning

Mathematics

COM.1

The student will design and apply computer programs to solve practical problems in mathematics arising from business and applications in mathematics.

Other Related Standards

FBLA Competitive Events and Activities Areas

Computer Game & Simulation Programming

 

Desktop Application Programming

 

Mobile Application Development