FINDMIND
Course Content 2015- 2016 Version 2.1
Annexure 1 9/27/2015
‘C’
Topic Remarks
Parts of a ‘C’ program main()**, { }
Pre-processor Directives #, ##, #define, #ifdef, #else, #ifndef, #pragma, #error, #line ,macros
Fundamental Variable Types short int, long int, char, float, double, long double, long long int,
signed, unsigned – Their internal representation – Big and Small
endian methods
Simple Operators Arithmetic (+, -, *, /, %), Logical(<, >, ==, !,…)
Conditions and Loops if..else – cascading and nested. Switch..case..break, while, do..while,
for(;;), && and ||
User Defined functions Prototype, void, How are arguments passed**, how are return
values received**, call by Value, Call by reference, Pascal** and
_Cdecl calls **
Bitwise Operators XOR, NOT, AND, OR..practical usage in a programming environment
**
Arrays Array implementation, multidimensional arrays, umpteen number of
problems will be solved **
Pointers Definition, Usage, Uses , function pointers , FAR and HUGE pointers –
tiny, small, medium, compact, large, huge memory models **
Storage Data Types static variables, static functions, auto, register, extern and volatile
**
Structures, Unions and
Enumerations
Once use structures, embedded structures, self referential
structures, structures initialization, structures as parameters** ,
structures as return values**, pointers to structures, unions,
enumerated data types
File Operations Sequential files, Line sequential files, Relative files and indexed files
Command Line Arguments Working with command line arguments, using environment variables
– useful in most of the existing platforms DOS, UNIX, Windows
Variable Number of Arguments Usage of va_start, va_list, va_arg, va_list
Nice to know How to use the registers, Multiple VDU pages, Screen saving and
restoration.
** Proof of Concept – This will help them immensely in handling
interviews
Data Structures
Topic Remarks
Simple Linked List Linked List implementation using arrays and dynamic memory
allocation
Simple Doubly Linked List Linked List implementation using arrays and dynamic memory
allocation
Stacks and Queues Access mechanisms in an array and in dynamic allocated lists –
Usage of these access mechanisms by the operating system
Binary Search Tree Simple Binary tree creation deletion and traversal
Problems Solved Balancing a tree
Mirror imaging
Level printing
Graphs
o Dijktra’s Algorithm
o Prim’s Algorithm
o Kruskal’s Algorithm
Sorting and Searching Bubble, Insertion, Selection , Quick, Radix ,Heap
Linear Search, Binary Search
Games and Utilities – Simulation
Minesweeper
Knight’s Tour
8 Queen
Magic Square , Tiles –Puzzle, Calculator
Memory Games
‘C’ with Class - C++
By norms C++ is learnt or taught as a language to learn the concepts of Object Oriented Programming ,
but we at FINDMIND use C++ for a learning OOPS, but also to understand how compiler can hide all the
implementation details of certain operators, implementation of Objects, implementation of function
overloading, operator overloading, inheritance and friends functions. The net output at the end of
learning this module is absolute confidence in handling interviews with companies that develop
products. Hence this is just not C++, it is interview preparation.
Topic
Remarks
Introduction
Concepts of Object Oriented Programming
Benefits of OOP
What is C++
Structure of C++ Program
Functions in C++
Call by Reference
Return by Reference
Inline Functions
Default Arguments
Function Overloading
Friend and Virtual Functions
Constructors and Destructors
Constructors
Parameterized Constructors
Multiple Constructors in a Class
Constructors with Default Arguments
Copy Constructor, Dynamic Constructors
Destructors
Classes and Objects
Specifying a Class
Defining Member Functions
Making an Outside Function Inline
Nesting of Member Functions
Private Member Functions
Static Data Members
Static Member Functions
Objects as Function Arguments
Returning Objects
Pointer to Members
Inheritance
Defining Derived Classes
Single Inheritance
Types of Inheritance
Virtual Base Classes
Abstract Classes
Constructors in Derived Classes
Member Classes
Operator Overloading
Defining Operator Overloading
Overloading Unary Operators, Overloading Binary Operators
Overloading Binary Operators using Friends
Manipulation of Strings using Operators
Rules of Operator Overloading
Type Conversion
Managing Input and Output
C++ Streams
C++ Streams Classes
Unformatted and Formatted I/O
operations
Managing Output with Manipulators
Virtual Functions & Polymorphism
Polymorphism – Overview
Virtual Functions
Pure Virtual Functions
Virtual Constructors and Destructors
Templates
Class Templates
Function Templates
Overloading of Template Functions
Exception Handling
Basics of Exception Handling
Exception Handling Mechanism
Throwing Mechanism
Catching Mechanism
Specifying Exceptions
C#
Topic Remarks
Introduction MS Windows Os
C,C++,objective c, and java
C#
Intro to MS .net
Intro to object technology
C# Application
Installation
Classes and object Classes, object, methods, properties and instant variables
Declaration
Instance with variable
Auto implemented properties
Initialization Control statements Control structures
Condition and Loops
Operators
Methods Package coding in c#
Static method, variables and class math
Declaring methods with multiple parameter
Declaring and using method
Argument promotion and casting
Method overloading
Optional, named parameters
Recursion
Arrays Declaring and creating array
Passing array and elements to method
Passing array by value and reference
Multidimensional Array
Class and object Controlling access to members
Default and parameter less constructor
Composition
Static class members
Class view and object browser
Exception handling
GUI with windows form Window forms
Event handling
Control properties
Strings and character String classes
String constructors
Char methods
Collections Non Generic collection
Generic collection
Databases Relational db
Dynamic binding
Python
Topics Remarks
Introduction to python programming History of Python
Python Modules
First Program in Python
Simple Programs – I/O
Variables ,Expressions and Statements Values, variables and keywords
Operators and operands in python
Operator precedence
Expressions and Statements
Control Structure Control Structures
Functions Functions
Module math Functions
Function Definitions
Random-Number Generation
Scope Rules
Keyword import and Namespaces
Modules
Keyword Arguments
Strings Creating,initializing,accessing
String operators
Comparing strings
String Functions and methods
List Concept of Mutable list
Creating,initializing and accessing
Traversing,appending,updating
Deleting
List functions and methods
Dictionaries Concept of key value pair
Creating,initializing and accessing
Traversing
Appending
Updating and deleting
Dictionary functions &methods
Tuples Immutable concept
Creating
Initializing and accessing
Tuple functions
Object-Based Programming: Classes and Special Attributes
Data Abstraction. Controlling Access to Attributes
Operator Overloading Operator Overloading
Restrictions on Operator Overloading
Overloading Sequence Operations
Overloading Mapping Operations
Object-Oriented Programming: Inheritance and Polymorphism
Inheritance: Base Classes and Derived Classes
Creating Base Classes and Derived Classes
Overriding Base-Class Methods in a Derived Class
Abstract Base Classes and Concrete Classes
Inheriting from Built-in Types
Ruby
Topics Remarks
Introduction to RUBY What is Ruby & irb?
Why ?
OOPS Vs Ruby
Ruby environment & installation
Ruby Syntax
Data types Numbers & Expressions
Text & Strings
Arrays & Lists
Hashes
Flow control If and unless
Ternary operator
Else if & case
Code blocks
Other building blocks o Dates & Times o Large Numbers o Ranges o Symbols o Converting objects to other classes o Simple programs
The Core of Ruby Classes , Objects & Modules
Object Oriented Basics
Files & Databases I/O o Keyboard input o File I/O
Basic Databases
Relational Databases & SQL
Application programs Web application Frameworks o Rails o Sinatra o Ramaze
Ruby and the Internet o HTTP & the Web o E-Mail o File Transfers with FTP
Networking , Sockets and Daemons o Networking concepts o Basic network Operations o Servers & Clients
GUI – Based Desktop Application Development
Java
Topic Remarks
Introduction Generation of languages
Object technology(introduction of object oriented programming)
Objects Methods and classes Instantiation Methods call Attributes and Instance variable
Java and Java Development Environment
Simple programs in java Write a simple program to display a line of text
Commenting your program
Displaying a text in a dialog box
operators Arithmetic operators (+,-,*, /, %)
Equality operator (==,! =)
Relational operators(<,>,<=,>=)
Increment and decrement operator(++,--)
Compound assignment operator(+=,-=)
Logical operator(&&,||)
Boolean logical operator (&,|, ^,!)
Operator precedence
Control statements Selection and Loops
Arrays Declare a array
Initializing array
Pass array to method
Multi dimensional array
Class Arrays and ArrayList
Strings String as a class
Methods
Comparing strings
searching
extracting substring()
StringBuilder Constructor
Class,Methods,Objects,Constructor Declare a class
Declare a method With and without parameters
Declare a class with method
Static method and static fields
This keyword
Instantiating a object of a class Get method set method
Access modifiers (public, private)
Initializing object with constructor Default constructor Parameterized constructor
Polymorphism Concept of polymorphism
Overridden methods
Abstract class and abstract methods
Declare and implement Interfaces
Exception handling How to handle exception
When to use exception handling
Try block
Catch block or exception handler
Multi catch
Throw statement
Finally block
Top Related