What Are C++ and Oop?
By: Bred • Study Guide • 2,941 Words • February 18, 2010 • 837 Views
Join now to read essay What Are C++ and Oop?
Origins of C++
What are C++ and OOP?
C++ is an advanced, high-level programming language (“Computer languages”) that is used to develop powerful applications for Microsoft® Windows®, many Linux environments, and other well-known and widely used operating systems. C++ is quickly becoming the standard language for commercial software development (Oualline).
OOP, an abbreviation for object-oriented programming is simply code that “attempts to place a new layer of abstraction between the programmer and the data he is working with … this layer will help the programmer develop better code more quickly than he could do before.” (McHale). OOP languages must include four fundamental concepts before it may reasonably be defined as object-oriented (O-O): encapsulation, polymorphism, inheritance and the ability to be dynamic (McHale).
Where did C++ come from?
C++ was designed and implemented by Bjarne Stroustrup who works for AT&T Bell Labs as head of the Large-Scale Program Research department where he is heavily involved with the evolution of his product (Duffy, 98). His development, originally called “C with classes” was a marriage between a language called Simula67 with object-orientated features and C, which was powerful and efficient in its design.
Fortran
John Backus at IBM developed Fortran in 1956. Fortran, an abbreviation and acronym for FORmula TRANslation system, is generally considered to be the first high-level programming language. Fortran is, even today, a language of choice among programmers, its latest release, Fortran 90, in 1990. Early versions of this language would be largely criticized today [there were a few problems like the program layout, which had to obey certain criteria like an 80 character maximum line (the length “of a punch card on which the programs were often written”) (Parsons) and the first six columns were reserved for labels and comments, denoted by the keyword C]; however, this language influenced every language used today in the programming community in some way. A sample Fortran program would look like this (the digits 1, 2, and 3 in this program are labels and .GT. signifies a comparison checking to see if the variable, H, is Greater Than 5):
C EXAMPLE FORTRAN CODE
DIMENSION A(5), B(5,2)
INTEGER H
DO 1 I = 1,5
1 A(I) = 6 - I
H = 1
3 IF (H.GT.5) GO TO 2
B(H,1) = 1
B(H,2) = 5 + 3 * (H - A(H) )
H = H + 1
GO TO 3
2 STOP
END
(Parsons)
ALGOL
Algol, short for ALGOrithmic Language, is perhaps the most influential programming language ever created. The first implementation arose in 1958 and quickly became the standard for expressing algorithms. Algol was most widely used in the academic community, which thusly led to its widespread usage.
P: begin
integer h, i;
real array A[1:5], B[1:5, 1:2];
for i := 1 step 1 until 5 do
A[I] := 6 - i;
h := 1
Loop: if h <= 5 then
begin
B[h,1] := 1;
B[h,2] := 5 + 3 * (h - A[h]);
h := h + 1;
go to Loop
end
end P
(Parsons)
The similarity between such modern languages as Pascal and Modula-2 and Algol proves it influential to the programming community, even today. Algol also introduced the concept of “free-format,” a concept that allows programmers to arrange the code any way they want (assuming the syntax is correct) (Parsons). This concept proves itself useful today in making source code easier to read and eliminating the problem of “spaghetti code” (code written in an unreadable fashion, or strung together as spaghetti is).
Simula67
Simula67 was developed by the Norwegian armed forces (Kristen Nygaard and Ole-Johan Dahl at the Norwegian Computer Center)