Analyst Programmer_AP106: Basic C++ Programming Concepts
About Course
- This course serves as an introduction to the C++ programming language, a dominant language in the industry today.
- It equips students with the foundational principles of programming that are transferable to various programming languages.
- The curriculum encompasses essential programming concepts, such as:
-
- The fundamental principles of C++ programming
- Algorithmic and procedural approaches to problem-solving
- Program conceptualization and creation
- The fundamental principles of C++ programming
- Elementary data types
- Algorithmic and procedural approaches to problem-solving
- Program conceptualization and creation
- Elementary data types
- Control flow structures
- Function utilization
- Array manipulation
- Pointer operations
- An initial exposure to classes for creating custom data types in programming.
Upon successful completion of this course, the student will have demonstrated the ability to:
- Analyze the given problem statements to create basic program designs.
- Implement different functions for input and output, various data types, basic operators, files and functions.
- Demonstrate basic object oriented and structured programming concepts.
- Implement programming techniques to solve problems in the C++ programming language.
- Apply the concepts and principles of the programming language to the real-world problems and solve the problems through project-based learning.
-
Course Content
Module 1
-
03:03
-
23:48
-
LO2: Explain the Role of the Internet and the Web in Computing
06:51 -
LO3: Identify Historical Developments in Computing Technology
10:07 -
LO4: Discuss various types of Computer Networks and Protocols
14:24 -
LO5: Knowledge Check
-
Case Study: Introduction to Computers, the Internet, and the Web
-
02:38
-
15:01
-
LO2: Explain the process of Compiling, Linking, and Running a C program
14:37 -
LO3: Identify and Correct Simple Syntax Errors in a C program
15:18 -
LO4: Knowledge Check
-
Case Study: Introduction to C Programming
-
02:23
-
14:02
-
LO2: Develop Modular C programs using Functions
12:21 -
LO3: Knowledge Check
-
Case Study: Structured Program Development in C
-
Topic 4: C Program Control
02:37 -
LO1: Define and classify Control Structures in C
31:58 -
LO2: Explain Sequential and Selection Control Structures
23:10 -
LO3: Discuss Iteration Control Structures
20:27 -
LO4: Knowledge Check
-
Case Study: C Program Control
-
Topic 5: C Functions
03:05 -
LO1: Define the Purpose, Types, and Syntax of Functions in C
15:00 -
LO2: Implement functions with and without return values and parameters
16:53 -
LO3: Explain Scope and Lifetime of Variables in Functions
10:45 -
LO4: Evaluate different methods of passing arguments to Functions
06:33 -
LO5: Knowledge Check
-
Case Study: C Functions
-
Topic 6: C Arrays
02:56 -
LO1: Explain the concept of Arrays in C
09:15 -
LO2: Declare, Initialize, and Manipulate One-dimensional and Multidimensional Arrays
15:05 -
LO3: Analyze the role of Arrays in handling Collections of Data
08:10 -
LO4: Debug common issues with Arrays, such as Out-of-bounds Errors
07:32 -
LO5: Knowledge Check
-
Case Study: C Arrays
-
Topic 7: C Pointers
02:31 -
LO1: Describe Pointers and their Role in Memory Management
00:00 -
LO2: Analyze the Relationship between Pointers, Arrays, and Functions in C
00:00 -
LO3: Explain Potential Risks and Errors associated with Pointer Usage
00:00 -
LO4: Knowledge Check
-
Case Study: C Pointers
-
Topic 8: C Characters and Strings
00:00 -
LO1: Describe how Characters and Strings are represented in C
00:00 -
LO2: Implement programs that Manipulate Strings using Standard Library Functions
00:00 -
LO3: Analyze String Manipulation Methods for Efficiency
00:00 -
LO4: Evaluate the use of Pointers in Handling Strings
00:00 -
LO5: Knowledge Check
-
Case Study: C Characters and Strings
-
Topic 9: C Formatted Input/Output
00:00 -
LO1: Explain the purpose of Formatted Input and Output in C
00:00 -
LO2: Implement Formatted Input and Output using printf and scanf Functions
00:00 -
LO3: Analyze common Formatting issues in C programs
00:00 -
LO4: Knowledge Check
-
Case Study: C Formatted Input/Output
-
Topic 10: C Structures, Unions, Bit Manipulation, and Enumerations
00:00 -
LO1: Describe the concepts of Structures and Unions in C
00:00 -
LO2: Explain the significance of Bit manipulations and their Applications
00:00 -
LO3: Demonstrate the use of Enumerations in a program
00:00 -
LO4: Knowledge Check
-
Case Study: C Structures, Unions, Bit Manipulation, and Enumerations
-
Topic 11: C File Processing
00:00 -
LO1: Explain the process of File Handling in C
00:00 -
LO2: Implement programs that Open, Read, Write, and Close Files
00:00 -
LO3: Analyze file Input/Output Operations for different File Types
00:00 -
LO4: Debug Standard File handling Errors in C programs
00:00 -
LO5: Knowledge Check
-
Case Study: C File Processing
-
Topic 12: C Data Structures
00:00 -
LO1: Describe Linked Lists in the C programming language
00:00 -
LO2: Discuss Stacks in the C programming language
00:00 -
LO3: Explain Queues in the C programming language
00:00 -
LO4: Knowledge Check
-
Case Study: C Data Structures
-
Topic 13: C Preprocessor
00:00 -
LO1: Explain the purpose of the C preprocessor and its Directives
00:00 -
LO2: Analyze the role of Macros and Conditional Compilation
00:00 -
LO3: Evaluate potential issues related to Preprocessor Directives
00:00 -
LO4: Knowledge Check
-
Case Study: C Preprocessor
-
Topic 14: Other C Topics
00:00 -
LO1: Discuss Dynamic Memory Allocation in C
00:00 -
LO2: Explain Memory Management, Recursion, and Multithreading
00:00 -
LO3: Analyze the advantages and limitations of advanced C features
00:00 -
LO4: Knowledge Check
-
Case Study: Other C Topics
-
Topic 15: C++ as a Better C
00:00 -
LO1: Compare and contrast C and C++ Programming
00:00 -
LO2: Modify C programs to include basic C++ Features
00:00 -
LO3: Knowledge Check
-
Case Study: C++ as a Better C
-
Topic 16: Introducing Object Terminology
00:00 -
LO1: Discuss basic Class with Attributes and Methods
00:00 -
LO2: Identify object-oriented principles like Objects
00:00 -
LO3: Describe Inheritance utilizing basic OOP concepts
00:00 -
LO4: Explain the concept of Encapsulation and its applications
00:00 -
LO5: Knowledge Check
-
Case Study: Introducing Object Terminology
-
Topic 17: Introduction to Classes, Objects, and Strings
00:00 -
LO1: Explain the Structure of Classes in C++
00:00 -
LO2: Describe Classes with Constructors, Destructors, and Member Functions
00:00 -
LO3: Discuss the Creation and manipulation of Objects from User-Defined Classes
00:00 -
LO4: Knowledge Check
-
Case Study: Introduction to Classes, Objects, and Strings
-
Topic 18: Classes
00:00 -
LO1: Explain Data Hiding and Access Control in Classes
00:00 -
LO2: Express Member Functions that demonstrate Encapsulation
00:00 -
LO3: Compare Public, Private, and Protected Access Specifiers
00:00 -
LO4: Knowledge Check
-
Case Study: Classes
-
Topic 19: Throwing Exceptions
00:00 -
LO1: Define Exceptions and Exception Handling in C++
00:00 -
LO2: Implement Try-catch Blocks for Handling Exceptions
00:00 -
LO3: Analyze the Benefits of Exception Handling in Software Development
00:00 -
LO4: Knowledge Check
-
Case Study: Throwing Exceptions
-
Topic 20: Operator Overloading
00:00 -
LO1: Explain the concept of Operator Overloading in C++
00:00 -
LO2: Discuss overloaded Operators in User-Defined Classes
00:00 -
LO3: Knowledge Check
-
Case Study: Operator Overloading
-
Topic 21: Class String
00:00 -
LO1: Describe the Characteristics and Advantages of the C++ string class over C-style strings
00:00 -
LO2: Analyze the performance differences between string class and C-style strings
00:00 -
LO3: Knowledge Check
-
Case Study: Class string
-
Topic 22: Object-Oriented Programming: Inheritance
00:00 -
LO1: Define the concept of inheritance and its role in OOP
00:00 -
LO2:Analyze the relationships between Base and Derived Classes
00:00 -
LO3: Evaluate the use of Inheritance for Code Reuse and Maintainability
00:00 -
LO4: Knowledge Check
-
Case Study: Object-Oriented Programming: Inheritance
-
Topic 23: Object-Oriented Programming: Polymorphism
00:00 -
LO1: Explain Polymorphism and its types
00:00 -
LO2: Implement Polymorphism using Virtual functions and Function overriding
00:00 -
LO3: Knowledge Check
-
Case Study: Object-Oriented Programming: Polymorphism
-
Topic 24: Stream Input/Output: A Deeper Look
00:00 -
LO1: Explain the use of stream classes in C++ for input and output operations
00:00 -
LO2: Describe Error-Handling Mechanisms in Stream Operations
00:00 -
LO3: Knowledge Check
-
Case Study: Stream Input/Output: A Deeper Look
-
Topic 25: Exception Handling: A Deeper Look
00:00 -
LO1: Identify advanced features of C++ exception handling
00:00 -
LO2: Analyze the impact of Exception Handling on program stability and Debugging
00:00 -
LO3: Describe the design of exception-safe code and resource management using RAII
00:00 -
LO4: Knowledge Check
-
Case Study: Exception Handling: A Deeper Look
-
Topic 26: Introduction to Custom Templates
00:00 -
LO1: Define Templates in C++ for Generic programming
00:00 -
LO2: Discuss Function and Class Templates for Handling Multiple Data Types
00:00 -
LO3: Evaluate the benefits and potential pitfalls of using Templates
00:00 -
LO4: Knowledge Check
-
Case Study: Introduction to Custom Templates
-
Module Based Quiz