sdf

¡Supera tus tareas y exámenes ahora con Quizwiz!

Template

- A C++ construct representing a function or class in terms of generic types

Definition -

- A declaration that also fully specifies the entity declared

Multiple Inheritance

- A derived class inheriting class members from two or more base classes

Override

- A derived class replacing its base class' implementation of a method

Setter

- A method that changes the value of a private variable

Branch

- A second distinct development path within the same organization and often within the sameversion control system

Process

- A self-contained execution environment including its own memory space

Declaration

- A statement that introduces a name with an associated type into a scope

• Object-Oriented Programming (OOP) -

- A style of programming focused on the use of classes and class hierarchies

Class

- A template encapsulating data and code that manipulates it (C++ also has struct, which is identical other than default visibility)

• Principle of Least Astonishment†

- A user interface component should behave as the users expect it

• Validation Rules

- Algorithmically enforceable constraints on the correctness, meaningfulness, and security of input data

Encapsulation

- Bundling data and code into a restricted containe

• Data Validation -

- Ensuring that a program operates on clean, correct and useful data

• Garbage Collector†

- In managed memory systems, program that periodically runs to free unreferenced memory

Concurrency

- Performing 2 or more algorithms (as it were) simultaneously

• Agile Process†

- Prioritizing individuals and interactions, frequent delivery of working software, customer collaboration, and flexible response to change

Inheritance

- Reuse and extension of fields and method implementations from another class

• Waterfall Process†

- Separating software development into long, discrete phases such as Requirements, Design, Implementation, Verification, and Validation

Abstraction

- Specifying a general interface while hiding implementation details (sometimes listed as a 4th fundamental concept of OOP, though I believe it's common to most paradigms)

Variable

A block of memory associated with a symbolic name that contains an object instance or a primitive data value

Attribute

A class member variable

Friend

A class or a function (NOT a method!) that is granted access to its friend class' private members

• Class Library -

A collection of classes designed to be used together efficiently

• Enumerated type

A data type consisting of a fixed set of constant values called enumerators (C++ has both enum and enum class)

• Primitive type

A data type that can typically be handled directly by the underlying hardware

Method

A function that manipulates data in a class

Standard Template Library

A library of well-implemented algorithms focused on organizing code anddata as C++ templates

Reference Counter†

A managed memory technique that tracks the number of references to allocated memory, so that the memory can be freed when the count reaches zero

Getter

A method that returns the value of a private variable

Mutex

A mutual exclusion object that prevents two properly written threads from concurrently accessing a critical resource

Namespace

A named scope

• Algorithm -

A procedure for solving a specific problem, expressed in terms of an ordered set of actions to execute

Baseline†

A reference point in a version control system, using indicating completion and approval of aproduct release and sometimes used to support a fork

Operator

A short string representing a mathematical, logical, or machine control action

Destructor

A special class member that cleans up when an object is deleted

Constructor

A special class member that creates and initializes an object from the class

Iterator

A standard library abstraction for objects referring to elements of a container

Reentrant

An algorithm that can be paused while executing, and then safely executed by a different thread

Instance

An encapsulated bundle of data and code (e.g., an instance of a program is a process; an instance of a class is an object)

• Assertion†

An expression that, if false, indicates a program error (in C++, often via the assert keyword)

Thread

An independent path of execution within a process, running concurrently (as it appears) with other threads within a shared memory space

Object

An instance of a class containing a set of encapsulated data and associated methods

• Exception

An object created to represent an error or other unusual occurrence and then propagated via special mechanisms until caught by special handling code

• Class Hierarchy -

Defines the inheritance relationships between a set of classes

• Operator Overloading -

Providing a user-defined meaning to a pre-defined operator (e.g., +, ==, <<) for a user-defined type (e.g., a class)

Code

Read-only memory for machine instructions

Stack

Scratch memory for a thread of execution (in C++, e.g., int i=5;)

Tag

Tag - curly-brace-enclosed addition. Always has an =

• Base Class

The class from which members are inherited

• Derived Class

The class inheriting members

• Generalization

The process of extracting shared characteristics from two or more classes, and combining them into a generalized base class.

• Specialization†

The process of identifying and specifying derived classes from a base class.

Polymorphism

The provision of a single interface to multiple derived classes, enabling the same method call to invoke different derived methods to generate different results

Unified Modeling Language (UML)† -

The standard visual modeling language used to describe, specify, design, and document the structure and behavior of object-oriented systems

• Version Control† -

The task of keeping a system consisting of many versions well organized

Generic Programming

Writing algorithms in terms of types that are specified as parameters duringinstantiation or invocation

Constraint

curly-brace-enclosed Boolean condition, restriction, or assertion. May have a comparator, e.g., == or <.

1. Stereotype

e - guillemets-enclosed specialization

Global

memory for declarations outside of any class or function scope

Shadowing†

† - A variable declared in a narrower scope than that of a variable of the same name declared in a broader scope

• Invariant†

† - Code for which specified assertions are guaranteed to be true (often, a class in which attributes cannot change after instantiation)

• Second System Effect†

† - The common mistake of attempting to include far too many features in (typically) version 2.0, causing catastrophic schedule slips


Conjuntos de estudio relacionados

Intro to Communication C464 Questions

View Set

Disability Income Insurance Ch. 4

View Set

NCLEX Prep: Fluids and Electrolytes: Balance and Disturbance

View Set

Principles of Nutrition- Chapter 11

View Set

NURS 320: Prep U Practice Questions

View Set

Chapter 8 - Intrapartal Period: Assessments and Interventions

View Set

Невра. Кора і підкірка

View Set