0% found this document useful (0 votes)
6 views3 pages

Software Foundation and Programming (With C++)

This document outlines a comprehensive C++ Programming and Object-Oriented Principles course designed to provide students with a deep understanding of C++ and OOP concepts. The course objectives include mastering programming languages, setting up development environments, and applying advanced C++ features and the Standard Template Library. It also details the course structure, including units, lab scenarios, learning outcomes, and recommended textbooks.

Uploaded by

farhankhalid626
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views3 pages

Software Foundation and Programming (With C++)

This document outlines a comprehensive C++ Programming and Object-Oriented Principles course designed to provide students with a deep understanding of C++ and OOP concepts. The course objectives include mastering programming languages, setting up development environments, and applying advanced C++ features and the Standard Template Library. It also details the course structure, including units, lab scenarios, learning outcomes, and recommended textbooks.

Uploaded by

farhankhalid626
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Software Foundation and Programming (With C++)

Course Code: Internal Examination:


No. of Lectures (Hrs./Week): 40 hrs. External Examination:
Total No. of Lectures: Total:
Credits: End Semester Exam Hours:

Course Description: Welcome to the world of programming excellence with our


comprehensive course on C++ Programming and Object-Oriented Principles. This course is
designed to equip you with a deep understanding of C++, one of the most powerful and versatile
programming languages, and help you master Object-Oriented Programming (OOP) principles
to develop efficient, modular, and maintainable software applications.

COURSE OBJECTIVE
● Gain insight into the history, evolution, and various types of programming languages,
enabling informed language selection for diverse applications.
● Comprehend and apply OOP concepts such as encapsulation, inheritance, polymorphism,
classes, and objects to design modular and efficient software.
● Set up a development environment, write, and execute C++ programs while grasping syntax,
data types, variables, input/output streams, operators, and control flow structures.
● Acquire skills in defining functions, function overloading, and understanding constructors,
destructors, inheritance, and polymorphism, promoting code reusability and modularity.
● Dive into advanced topics like memory management, file handling, exception handling,
recursion, and the Standard Template Library (STL) to become a versatile C++ programmer.

Unit Content No. of LEVELS


Lectures
I Introduction to Programming Languages & 3 Knowledge/
OOPS: Comprehension

History of Programming Languages, Evolution of


Programming Languages, Types of Programming
Languages, Programming Paradigms (Procedural,
OOP, functional etc. ), Concepts of OOP
(encapsulation, inheritance, polymorphism),
Classes and objects in OOP, Abstraction and
Encapsulation, Constructors, and Destructors
II C++ Basics: 8 Knowledge /
Comprehension/
Setting up the development Env, Writing and Application
running your first C++ Program, Variables and data
types, Input and output streams, Operators and
Expressions, Conditional statements (if, else,
switch), Looping structures (while, for, do-while)
III Functions and Object-Oriented Concepts: 9 Evaluation/
Application
Function definition and declaration, Function
overloading, Passing arguments by value and
reference, Classes and objects in C++, Constructors
and Destructors, Inheritance and polymorphism,
Data hiding and access control

IV Advanced C++ Features: 10 Comprehension/


Application
Pointers and references, Dynamic memory
allocation & deallocation, Input and output
streams, File operations in C++, Exception
handling in C++, Recursive functions

V C++ Standard Template Library (STL): 10 Comprehension /


Application/
Overview of STL, Containers (vectors, lists, maps, Evaluation
etc.), Iterators and algorithms, Vector, list, map,
set, queue, stack, etc. Sorting, searching, and
manipulation algorithms

Lab Scenario Description


Lab 1: Setting up the C++ Install and configure the C++ development Environment.
development environment Create a simple "Hello, World!" program
Lab 2: Basic C++ syntax Write a C++ program to calculate the average of three
and data types numbers
Lab 3: Control flow and Develop a program that helps a user choose a vacation
decision- making destination based on budget and preferences
Lab 4: Functions and Create a program to calculate and display the area of
function overloading different shapes (circle, rectangle, triangle)
Lab 5: Object-oriented Design a scenario involving classes and objects to simulate
programming with C++ a simple online shopping cart
Lab 6: Pointers and memory Develop a program that uses pointers to swap the values of
management two variables
Create a program to manage a simple address book with
Lab 7: File handling in C++ basic add, search, and delete functions
Lab 8: Using the C++ Implement a scenario where you use a vector to maintain a
Standard Template Library list of favorite movies
(STL)
Lab 9: Inheritance and Create a program that models different types of vehicles
polymorphism in C++ with basic inheritance and polymorphism
Lab 10: Comprehensive Work on a mini-project to create a simple calculator
C++ Project application with basic arithmetic operations

COURSE LEARNING OUTCOMES (CLO)


The syllabus adheres to all Levels and has been prepared in accordance with National Education
Policy (NEP). After completion of course, students would be able to:
● Gain a strong foundation in programming languages, understanding their history, evolution,
and paradigms to make informed language choices.
● Master Object-Oriented Programming principles, effectively applying encapsulation,
inheritance, polymorphism, and class design techniques.
● Develop practical skills in setting up C++ environments, writing programs, and understanding
syntax, data types, and control flow.
● Proficiency in using conditional statements and looping structures in C++, ensuring efficient
code.
● Apply functions, including overloading and argument passing, and implement OOP concepts
like classes, objects, constructors, destructors, inheritance, and polymorphism.

TEXT/REFERENCE BOOKS
● "Programming Principles and Practice Using C++" by Bjarne Stroustrup
● "Object-Oriented Programming in C++" by Robert Lafore
● "C++ Primer" by Stanley B. Lippman, Josée Lajoie, and Barbara E. Moo
● "C++ Notes for Professionals" by Stack Overflow Community

You might also like