Course Objectives :
- To introduce the basic Concepts of Object Oriented Programming (data types, operators and functions) using C++
- To introduce concepts of Classes and Objects with the examples of C++ programming
- To understand object oriented features such as Inheritance and Polymorphism
- To use various object oriented concepts (exceptional handling) to solve different problems
Course Outcomes (CO)
- CO 1 Ability to have an in-depth knowledge of object oriented programming paradigm
- CO 2 To be able to develop basic C++ programming skills
- CO 3 To be able to apply various object oriented features using C++
- CO 4 Ability to have an understanding of generic programming & standard templates
UNIT – I
Object Oriented Programming Paradigm, Basic Concepts of Object Oriented Programming, Benefits of Object Oriented Programming, Object Oriented Languages, Applications of Object Oriented Programming, C++ Programming Language, Tokens, Keywords, Identifiers and Constants, Data Types, Type Compatibility, Variables, Operators in C++, Implicit Type Conversions, Operator Precedence, The Main Function, Function Prototyping, Call by Reference, Return by Reference, Inline Functions, Function Overloading, Friend Functions, default parameter value.
UNIT – II
Specifying a class, Member Functions, Encapsulation, information hiding, abstract data types, objects & classes, Static Member Functions, Arrays of Objects, Constructors & Destructors, Parameterized Constructors, Copy Constructors, Dynamic Constructors, Destructors, identity and behaviour of an object, C++ garbage collection, dynamic memory allocation, Explicit Type Conversions, Operator Overloading.
UNIT – III
Inheritance, inheritance methods, Class hierarchy, derivation – public, private & protected, aggregation, Inheritance Constructors, composition vs. classification hierarchies, Containership, Initialization List, Polymorphism, categorization of polymorphic techniques, polymorphism by parameter, parametric polymorphism, generic function – template function, function overriding, run time polymorphism, virtual functions.
UNIT – IV
Standard C++ classes, using multiple inheritance, persistant objects, streams and files, namespaces, exception handling, generic classes, standard template library: Library organization and containers, standard containers, algorithm and Function objects, iterators and allocators, strings, streams, manipulators, user defined manipulators, vectors.
Textbook(s):
- Stanley B. Lippman, Josée Lajoie, Barbara E. Moo, “C++ Primer”, Addison-Wesley Professional, 2012.
- Ivor Horton, “Using the C++ Standard Template Libraries”, Apress, 2015.
- R. Lafore, “Object Oriented Programming using C++”, Galgotia.
References:
- A.R.Venugopal, Rajkumar, T. Ravishanker “Mastering C++”, TMH
- Bjarne Stroustrup, “Programming: principles and practice using C++”, Addison-Wesley, 2015.
- Bjarne Stroustrup, “A Tour of C++”, Addison-Wesley Professional, 2018.
- Bjarne Stroustrup, “The C++ Programming Language”, 4th Edition, Addison-Wesley Professional, 2013.
- Peter Van Weert and Marc Gregoire, “C++17 Standard Library Quick Reference: A Pocket Guide to Data Structures, Algorithms, and Functions”, Apress (2019)
- Rumbaugh et. al. “ Object Oriented Modelling & Design”, Prentice Hall
- G . Booch “Object Oriented Design & Applications”, Benjamin,Cummings.
- E.Balaguruswamy, “Objected Oriented Programming with C++”, TMH
- Steven C. Lawlor, “The Art of Programming Computer Science with C++”, Vikas Publication.
- Slobodan Dmitrović, Modern C++ for Absolute Beginners”:A Friendly Introduction to C++ Programming Language and C++11 to C++20 Standards”, Apress, 2020.
No comments:
Post a Comment