G-TEC CERTIFIED OBJECT-ORIENTED PROGRAMMER – (GCOOP)
Duration : 3 Months / 216 hours
G-TEC CERTIFIED OBJECT-ORIENTED PROGRAMMER – (GCOOP) – GN13380F
A course designed embedding the most popular OOP languages to give you a gateway to the wide world of developing.
BASICS OF PROGRAMMING AND HISTORY OF C
- Define software, the components of a programming software (editor, debugger, compiler, interpreter, linker etc.)
- Algorithm, pseudo codes, flow chart.
- Programming models- procedure oriented and object oriented and the difference.
- The history of c.
- Standard c libraries and the first c program.
- The life cycle and adding comments to a program.
DATA TYPES AND VARIABLES
- Define data types, data type classification- integral and floating
- Data types and their max values
- Variables/ identifiers, variable declaration and its syntax
- Assigning values to a variable
- Adding comments
- Display variable values with printf(), reading variable values with scanf()
- Define format specifies (%f, %d, %s)
- Formatting output
- Data type qualifiers (short, long, unsigned etc)
- External variables (use of extern keyword) and its usage
- Static variables
- Register variables and volatile variables
- Converting data types
- Arrays and multi-dimensional arrays.
CONSTANTS AND OPERATORS
- Declaring constants and define its use
- Enumerating constants using the enum keyword, Typedef
- Using # define and conditional definition.
- Performing operations using operators- arithmetic operators (+,-,*,/,%,++,–)
- Logical operators (and, or, not)
- Assignment operators (=,+=,-=,*=,/=,%=)
- Comparison operator (==, !=, <,>, >=,<=)
- Conditional operator (?:)
- Sizeof operator and operator precedence.
CONTROL STRUCTURES AND FUNCTIONS
- Control structures- branching (if, if else, switch) syntax and usage,
- Looping (for, while and do while) with the detailed syntax and context of usage,
- The break and continue statement, goto statement.
- Functions- define what a functions is, function declaration with its syntax, function arguments, calling functions and recursive functions, function in custom headers, multiple source files and static functions.
- Some important built-in math, string and character functions.
POINTERS AND COMMAND LINE ARGUMENTS
- Introduce pointers
- Pointing to a variable
- Pointer datatypes, getting and setting values using pointers, pointer arithmetic, pointers and arrays
- Changing variable values with pointers
- Passing pointers to functions
- Array of pointers and pointing to functions.
- Creating command line argument program in c
- The argc and argv arguments
- Build and make a c program
- Passing arguments through command line.
STRUCTURE, LINKED LIST AND FILE HANDLING
- Define structure and its use,
- Declaring a structure,
- Creating instances of a structure,
- Using typedef with structure, nesting of structures and its application,
- Accessing members of a structure,
- Arrays and pointers in structures,
- Structure pointer, collection of structures, structures as function argument,
- Unions and its difference with structures, declaring a union, array of unions, unions as member of structures and pointers to unions.
- Linked list- concept of linked list and dynamic memory allocation using malloc,
- Types of linked list single, doubly linked list, circular linked list), inserting, appending and deleting nodes in singly linked list, grounding the node and emptying the list.
- Explain the concept of dynamic memory allocation and write a program to create a singly linked list and do the basic operations such as insert a node, delete a node and empty the list. Demonstrate the implementation of doubly linked list, circular linked list and its basic operations.
- File handling and Basic graphics
- Introduce the library for file operations and important functions in it.
- The FILE datatype, fopen(), fclose(), file pointers, fscanf(), fprintf(), fputs(), fgets(), fputc(), fgetc(), fread() and fwrite().
- Reading and writing files character wise and as a whole and reporting errors.
- Introduce graphics in C, text mode and graphics mode, graphics used in text mode- window(), cputs(), gotoxy();
- Graphics in graphics mode, INITGRAPH(), closegraph(), circle(), setcolor(), setlinestyle(), setfillstyle(), floodfill(), rectangle(), line();
- Text in graphics mode- outtext(), settextstyle()
FUNDAMENTALS OF OBJECT ORIENTED PROGRAMMING
- Procedure oriented program approach
- Object oriented programming approach, the difference between two approaches
- Characteristics of oops- class (global and local)
- Object encapsulation, data abstraction, inheritance, polymorphism, data hiding
- Modeling real world objects, types of objects
- Kinds of relationships- association, aggregation, specialization and generalization
- Class and object diagram
- Object based and object oriented languages
- Advantages and disadvantages.
BASICS OF C++
- Similarities and differences between C and C++
- Basics of C++, C++ character sets
- Identifiers, keywords;
- Data types- built-in datatypes, derived data types, user defined datatypes, range of data types
- Enum, typedef, typecasting, variables
- Literals or constants- integer constants, character constants and floating point constants
- Operators- arithmetic operators, relational operators, logical operators
- Precedence of operators, special operators, escape sequence, comments in C++, structure of a C++ program
- Statements in C++ – selection or conditional statements, iterative or looping statements, breaking statements
- Syntax and examples of all these control statements.
- Define what a function is,
- How to declare a function, its basic syntax?
- Function prototype,
- Function definition, function call,
- Actual parameter, formal parameter,
- Call by value, call by reference, call by pointer,
- Types of function- void functions, void functions with parameter, function with parameter and return type,
- Nested functions, recursion,
- Inline function, functions with default arguments,
- Functions with constant parameters,
- Scope rules (local and global),
- Storage class (auto storage, register, extern and static storage specifier)
- Definition of arrays
- Types of arrays, single dimensional and multi-dimensional.
- Single dimensional array- initializing, accessing and modifying the array elements, STRUCTURE, UNION AND BIT FIELD
- Introduce structure, its declaration
- The dot operator,
- Initialization and using them in program.
- Structure with arrays as its elements, array of structures,
- Initialization of arrays, array of structures,
- Nested structures, accessing nested structure
- Using structure in functions, passing a structure to a function.
- Copying a structure, dynamic structure using malloc(), self-referential structure.
- Union- define what is union
- How to access the members of a union, initialize it?
- Anonymous unions, bit fields and accessing bit fields.
- Use of single dimensional arrays
- Multidimensional- two dimensional arrays, character arrays or string- initialization
- Built-in functions for strings (strcpy, strcmp, strlen, strcat)
- Arrays and functions.
- Passing arrays to functions.
- Declaration of pointers
- Using address of operator, value at/indirection operator
- Pointer arithmetic,
- Pointers and single dimensional arrays.
- Arrays of pointers, pointers and strings, pointers and structure
- Pointers and function, pointers as function arguments, function returns pointer, pointer to function, passing a function to another function
- Pointers to pointers
- Dynamic memory management, new operator, delete operator, constant pointer,
- Free store/memory heap pointer, pointer to void.
CLASSES AND OBJECTS
- Define what a class is
- Declaration of class
- General syntax, defining members, inline functions
- Outline definitions, creating objects, comparison of class and object
- Scope resolution operators
- Arrays within class
- Array of objects
- Objects and functions
- Functions returning object
- Friend function, friend function of more than one class
- Friend class, constant member function, nested function
- Nested class, container class, pointers and objects, dynamic objects, this pointer
- Memory allocation of objects, static data members and member functions
- Structure and class, union and class
CONSTRUCTORS AND DESTRUCTORS
- Explain about constructors, structure of a constructor
- Importance of constructors, characteristics of a constructor
- Types of constructors- default constructors, parameterized constructors
- Default argument constructor, copy constructor, dynamic constructor
- Destructor- importance of destructor, characteristics of a destructor, comparison of constructor and destructor
- Structure of inheritance and its syntax
- Types of derivation- public, private and protected
- Importance of inheritance, types of base class- direct and indirect
- Types of inheritance- single level, multi-level inheritance and its syntax
- Multiple inheritance, its syntax and ambiguity
- Hierarchical inheritance its syntax, hybrid inheritance and its syntax and ambiguity
- Virtual base class
- Constructor invocation in inheritance
- Parameterized constructor invocation in inheritance
- Destructor under inheritance, container class.
- Define polymorphism
- Types of polymorphism
- Compile time (function overloading, operator overloading, template),
- Runtime (virtual function)
- Compile time polymorphism- function overloading, need for function overloading, rules for best matching, function overloading with various datatypes, function overloading with default arguments
- Constructor overloading, operator overloading and its need
- Rules to overload an operator and its advantages
- Syntax for operator overloading, overloading binary operator using member function and friend function
- Overloading assignment operator
- Overloading relational operator
- Overloading unary operator
- List the operators that cannot be overloaded
- Runtime polymorphism
- Virtual functions, need for virtual functions, pure virtual functions, abstract base class, role of abstract base class
- Virtual destructor
FILE ORGANIZATION, TEMPLATES, EXCEPTION HANDLING AND PREPROCESSOR DIRECTIVES
- File organization- stream, basic operations with files
- Opening file using constructor and using open () function, reading and writing files, file access modes, closing a file, reading and writing characters (get and put)
- Reading and writing strings, multiple files with same stream, binary files – read () and write() functions
- Random access files, error handling in files, seekg(), seekp(), tellg() etc.
- File handling using commandline arguments.
- Templates – explain what templates are, its uses, different types of templates and its application, class templates.
- Exception handling- its basic structure and syntax and its usage (try, throw and catch), multiple catch block.
- Preprocessor directives- give a brief description about macros, manipulators, unformatted i/o functions, character testing and conversion functions, string manipulation functions.
INTRODUCTION TO JAVA
- Introduction to java Programming
- Environmental Setup
- Java Basics
- OOP Terminology
- Class & Object Creation
- Built-in Class Attributes
- Object Destruction.
- Class Inheritance
- Function Overloading
- Data Hiding
FUNCTIONS MODULES, INTERFACES, INHERITANCES & EXCEPTIONS
- Function Implementation
- Function Arguments
- Anonymous Function
- Function Return
- Scope of Variables
- Handling Exceptions using: try-catch Try with multiple catch
- User defined Exception
- Thread operations in java
- Multithreading in java
STRINGS, COLLECTIONS & FILES
- Introduction to Strings
DATABASES & JDBC
- SQL Queries
- DML, DDL, DCL
- Join operations
- MySQL Queries
- Database Connection