Unformatted text preview:

C++ ProgrammingTable of ContentsHistoryWhat is C++DevelopmentStandardized C++Features of C++Object Oriented Features of C++Encapsulation And What It DoesJava and C++Advantages of C++Disadvantages of C++Future DevelopmentSlide 14C++ ProgrammingBy: Chris AnnaTable of Contents•History•What is C++?•Development of C++•Standardized C++•What are the features of C++?•What is Object Orientation?•Encapsulation•Java and C++•Advantages and Disadvantages•The future of C++History•The name C++ was created by Rick Mascitti and was first used in December of 1983.•Stroustrup worked on “C” in 1979.•Wanted to develop a language to enhance software development.•He chose “C” because it is general-purpose, fast and portable.•He later enhanced “C” and it became C++.What is C++•C++ programming is a programming language designed to making programming more enjoyable for the serious programmer.•In the 1990s it became one of the most popular programming languages in the world.Development•C++, designed by Bell Lab’s Bjarne Stroustup, was developed as an enhancement to the C programming language.•Enhancements Included the addition of classes followed by many features such as:–Virtual functions–Operator overloading–Multiple Inheritance–Templates–Exception handlingStandardized C++•In 1998 C++ Programming became standardized•It consists of Two parts:–Core Language - pure programming language, generally organized into statement blocks; the core language is often developed into libraries, which are then used during programming.–Standard Library - a collection of classes and functions; which are written in the core language. The Standard Library includes functions for data conversion, input, output, string manipulation, and other procedures.Features of C++•Features of C++ include an improved version of C:–Function casts–New / Delete–Default arguments–Function overloading–Name spaces–TemplatesObject Oriented Features of C++•C++ introduces object oriented features to C. •Object orientation is a computer programming paradigm that emphasizes on:•Objects - packaging data and functionality together into units within a running computer program.•Abstraction - combining multiple smaller operations into a single unit that can be referred to by name •Polymorphism - using the same name to invoke different operations on objects of different data types.•Inheritence - defining objects data types as extensions and/or restrictions of other object data types.Encapsulation And What It Does•C++ allows all members of a class to be declared public, private or protected.•Encapsulation describes- leaving out some details of implementation on purpose from the public •Public member - Member of the class that will be accessible to every other class.•Private - will only be accessible within that class.•Protected - will only be accessible to the class in which it is in and the classes that inherit said classJava and C++•Java is considered a much simpler and easy to use object-oriented programming language when compared to the popular programming language, C++.•Java replaced the complexity of multiple inheritance in C++ with a simple structure called interface, and also has eliminated the use of pointers.•Java uses automatic memory allocation and garbage collection.•C++ requires the programmer to allocate memory and to collect garbageAdvantages of C++•C++ Has compiler support and debuggers.•C++ Has a large selection of literature•One class can have more than one base class, which is referred to as Polymorphism.Disadvantages of C++•Not available on OS9•C++ is difficult to learn and can often become confusing.•Extensive use on some features such as, Operator overloading, Function overloading, and virtual functions can make C++ unreadable.•Executables are large (500kb) compared to OIC (150kb).Future Development•C++ continues to evolve to meet future requirements.•C++ will capitalize on its multi-paradigm nature more.•Name decoration and making object code produced by different compilers incompatible are still lacking in C++ standard.Future Development•Ports to platforms such as Solaris and Linux.•More use of “Inline


View Full Document

NOVA ITE 100 - Study Notes

Download Study Notes
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Study Notes and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Study Notes 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?