fresher pre-induction boot camp course content mar 2015 v1.0

14
Boot Camp Course Curriculum (Boot Camp Phase @ College level) Prepared By: Training Group

Upload: alexander-hamilton

Post on 02-Oct-2015

4 views

Category:

Documents


0 download

DESCRIPTION

L&T

TRANSCRIPT

  • Boot Camp Course Curriculum

    (Boot Camp Phase @ College level)

    Prepared By: Training Group

  • Document Title: Fresher Induction Course Curriculum Creation Date: 05th Mar 2015

    Boot Camp Course Content Page 2 of 14

    Table of Contents

    Topic: PLT (Programming Logics and Techniques) ___________________________________ 4

    Course Objectives: ___________________________________________________________________________ 4

    Introduction to Problem Solving and Programming Techniques_____________________________________________ 4

    Computer Architecture - Physical & Logical _____________________________________________________________ 4

    Types of Software ____________________________________________________________________________________ 4

    Types of Programming ________________________________________________________________________________ 5

    Programming Environment ____________________________________________________________________________ 5

    Execution Environment Memory Layout _______________________________________________________________ 5

    Programming Language Paradigms _____________________________________________________________________ 5

    What is a Program? ___________________________________________________________________________________ 5

    Algorithms __________________________________________________________________________________________ 5

    Pseud code __________________________________________________________________________________________ 5

    Flowcharts __________________________________________________________________________________________ 5

    Flow Control Constructs ______________________________________________________________________________ 5

    Implementing flow controlling in C _____________________________________________________________________ 5

    Understanding variable scope (Global, Local) - ___________________________________________________________ 5

    Modular Programming ________________________________________________________________________________ 5

    Data Structures ______________________________________________________________________________________ 5

    Topic: DBMS (DataBase Management System) _______________________________________ 6

    Course Objectives: ___________________________________________________________________________ 6

    Introduction to DBMS _________________________________________________________________________________ 6

    DBMS Architecture ___________________________________________________________________________________ 6

    Types of Databases ___________________________________________________________________________________ 6

    Introduction to Data Modeling _________________________________________________________________________ 6

    E-R Model (Using Chens notations) _____________________________________________________________________ 6

    KEYS concept in RDBMS _______________________________________________________________________________ 7

    Normalization _______________________________________________________________________________________ 7

    ANSI SQL - Basic Operations ___________________________________________________________________________ 7

    SQL - Advanced Operations____________________________________________________________________________ 7

    Topic: OOPS (Object Oriented Programming) with C++ _______________________________ 9

    Course Objectives: ___________________________________________________________________________ 9

    Object Oriented programming Concepts ________________________________________________________________ 9

    Additional features in C++ ____________________________________________________________________________ 9

    Object Oriented Programming in C++ ___________________________________________________________________ 9

    Object creation and referencing _______________________________________________________________________ 9

    Static Members _____________________________________________________________________________________ 10

    Associations as Object relationship ____________________________________________________________________ 10

    Inheritance ________________________________________________________________________________________ 10

  • Document Title: Fresher Induction Course Curriculum Creation Date: 05th Mar 2015

    Boot Camp Course Content Page 3 of 14

    Polymorphism ______________________________________________________________________________________ 10

    Implementation of Hybrid Inheritance & Diamond problem _______________________________________________ 10

    Topic: Web Concepts _________________________________________________________ 11

    Course Objectives: __________________________________________________________________________ 11

    Introduction to the Internet and the World Wide Web ___________________________________________________ 11

    Understanding the concept of Protocols _______________________________________________________________ 11

    Hypertext Markup Language (HTML) ___________________________________________________________________ 11

    Concepts of Cascading Style Sheets ___________________________________________________________________ 12

    Introduction to Scripting Language ____________________________________________________________________ 12

    Overview of HTML 5.0 _______________________________________________________________________________ 12

    Introduction To jQuery ______________________________________________________________________________ 12

    DOM Traversal- Selectors & Filters ____________________________________________________________________ 12

    Events _____________________________________________________________________________________________ 13

    eXtensible Markup Language _________________________________________________________________________ 13

    Validations & Transformations ________________________________________________________________________ 13

    Recommended topics to be referred after Boot Camp _______________________________ 14

    Java Training Course Outline _________________________________________________________________________ 14

    Microsoft .NET Programming (C#, ASP.NET) ____________________________________________________________ 14

  • Document Title: Fresher Induction Course Curriculum Creation Date: 05th Mar 2015

    Boot Camp Course Content Page 4 of 14

    Fundamentals of Programming and Database Management System

    Topic: PLT (Programming Logics and Techniques)

    Course Objectives:

    o Describe the major parts of a computing system

    o Describe the compile, edit, debug, and execute cycle

    o Recognize basic data types, variables, constants, operators, and expressions

    o Identify and describe the properties of variables including values, scope, persistence and

    size

    o Explain control flow including selection, iteration and function calls

    o Choose appropriate conditional and iteration constructs for a given programming task

    o Implement, test, and debug algorithms for solving simple problems

    o Describe parameter passing mechanisms

    o Analyze the behavior of simple programs involving fundamental programming constructs (i.e., variables, types, expressions, assignment, simple I/O, conditional and iterative

    control structures, functions and parameter passing, pointers)

    o Design programs that use compound data types: arrays, structs, strings

    o Recognize correct C programming language syntax

    o Describe top-down design and step-wise refinement

    o Explain the importance of algorithms and data structures in the problem-solving process

    o Explain type conversion and type incompatibility

    o Recognize and apply standard libraries

    o Describe various simple problem-solving techniques

    Introduction to Problem Solving and Programming Techniques

    Computer Architecture - Physical & Logical

    Types of Software

    o System Software

    o Application Software

    o Utilities (Compilers & Interpreters)

  • Document Title: Fresher Induction Course Curriculum Creation Date: 05th Mar 2015

    Boot Camp Course Content Page 5 of 14

    Types of Programming

    Programming Environment

    o Lifecycle of compilation process in C (Preprocessing, Compilation, Linking & Execution)

    Execution Environment Memory Layout

    o Basic Data Types, Operators & Expressions

    Programming Language Paradigms

    What is a Program?

    o Structure of C Program

    Algorithms

    Pseud code

    Flowcharts

    Flow Control Constructs

    o Conditional

    o Looping

    Implementing flow controlling in C

    Understanding variable scope (Global, Local) -

    o Auto & Extern in C

    Modular Programming

    o Functions in C

    Return type

    void type

    Parameters (Call by value)

    Function prototype

    Data Structures

    o Arrays (up to 2 dimensional)

    o Overview of Linked List (Only Theory)

  • Document Title: Fresher Induction Course Curriculum Creation Date: 05th Mar 2015

    Boot Camp Course Content Page 6 of 14

    Topic: DBMS (DataBase Management System)

    Course Objectives:

    o Understand the role of a database management system in an organization.

    o Understand basic database concepts, including the structure and operation of the relational

    data model.

    o Construct simple and moderately advanced database queries using Structured Query

    Language (SQL).

    o Understand and successfully apply logical database design principles, including E-R

    diagrams and database normalization.

    o Describe and discuss selected advanced database topics, such as distributed database systems and the data warehouse.

    Introduction to DBMS

    o Explain the need for a database

    o Explain the File-Based Systems

    o Define Database & DBMS

    o Explain some of the features of DBMS

    o Identify the usage of Database

    DBMS Architecture

    o Explain the Three-level architecture of DBMS

    o Explain the functions of Database Systems

    o Describe the overall system architecture

    Types of Databases

    o Explain the structure of Data

    o Explain the process of data access in various data-models

    Introduction to Data Modeling

    o Explain the steps involved in the database designing pattern

    o Design a Conceptual database using ER model

    E-R Model (Using Chens notations)

    o Explain the concepts of Relational Data Model

    o Explain the role of relational operators

    o Convert an ER Model into tables

  • Document Title: Fresher Induction Course Curriculum Creation Date: 05th Mar 2015

    Boot Camp Course Content Page 7 of 14

    KEYS concept in RDBMS

    o Super Key

    o Candidate Key

    o Integrity Constraints in DBMS

    Normalization

    o Explain the role of Normalization in database design

    o Explain the steps in Normalization

    o Types of Normal Forms 1NF, 2NF, 3NF

    ANSI SQL - Basic Operations

    o Write Queries using SQL select statements (DQL)

    a. SELECT

    o Work with SQL Operators

    a. IN, BETWEEN, NOT, LIKE

    o Work with SQL Functions

    a. Aggregate functions like SUM, MAX, AVG etc.

    o Work with SQL clauses

    a. GROUP BY, ORDER BY, HAVING

    o Work with the SQL Data Definition Language (DDL)

    a. CREATE, ALTER, DROP, TRUNCATE

    o Work with the SQL Data Manipulation Language (DML)

    a. INSERT, UPDATE, DELETE

    SQL - Advanced Operations

    o Sub-queries

    a. Single & Multiple row

    o Develop queries using SQL Joins

    a. INNER

    b. OUTER

    i. RIGHT OUTER

    ii. LEFT OUTER

    iii. FULL OUTER

    c. SELF

  • Document Title: Fresher Induction Course Curriculum Creation Date: 05th Mar 2015

    Boot Camp Course Content Page 8 of 14

    o Introduction to views (Theory of Simple & Complex views)

    a. CREATE, ALTER & DROP Simple View

    o Overview of Indexes (Theory of Clustered & Non-Clustered)

  • Document Title: Fresher Induction Course Curriculum Creation Date: 05th Mar 2015

    Boot Camp Course Content Page 9 of 14

    Topic: OOPS (Object Oriented Programming) with C++

    Course Objectives:

    o To prepare object-oriented design for small/medium scale problems

    o To demonstrate the differences between traditional imperative design and object-oriented

    design

    o To explain class structures as fundamental, modular building blocks

    o To understand the role of inheritance, polymorphism, dynamic binding and generic

    structures in building reusable code

    o To write small/medium scale C++ programs

    Object Oriented programming Concepts

    o Distinction from procedural approach o Class as a blue-print o Why to use the concept of classes o Object and their attributes o Data Abstraction - Dealing with the data in the real world terms o Data Encapsulation o Inheritance (Reusability & Extensibility) o Messages - Interface to an object o Polymorphism

    o Incorporating future needs o Economy of expression

    o Class Hierarchy - Relationship definitions o Generalization o Specialization

    Additional features in C++

    o Function overloading o Default arguments o Inline functions o Reference types

    Object Oriented Programming in C++

    o Writing a class: Data members and member functions o Data types & basic Operator in C++ o Encapsulation

    o Access modifiers: private, protected & public o Abstraction

    o Using member functions & manipulating data members

    Object creation and referencing

    o Constructor & Destructor- Why we need them? o Constructor Overloading o Concept of Pointers to object o Copy Constructor o Dynamic object creation using new and delete operators

  • Document Title: Fresher Induction Course Curriculum Creation Date: 05th Mar 2015

    Boot Camp Course Content Page 10 of 14

    Static Members

    o Requirement of Static Data Members o Static Functions o Differences in static and non-static members

    Associations as Object relationship

    o What is Object relationship? o Association o Aggregation o Composition o Containment in C++ o Implementing Association in C++

    Inheritance

    o Concept of Inheritance - Deviation from traditional approach o Types of Inheritance (Concept)

    o Single o Multiple o Multilevel o Hierarchical o Hybrid

    o Reusability - Protecting the investment of earlier efforts o Concept of base and derived classes o How to design reusable classes o Dos and Donts of reusable classes o Whats overriding all about o Accessing members of the base class

    Polymorphism

    o Static Binding v/s Dynamic Binding o Whats Polymorphism all about o How does it cater to economy of expression o Why use Polymorphism o When to use polymorphism o Concept of common mechanism o How to identify a common mechanism o Whats Virtual Method all about o Pure Virtual Functions

    Implementation of Hybrid Inheritance & Diamond problem

    o What is diamond problem? o Resolving diamond problem

    o Using scope resolution o Using virtual keyword in Inheritance

  • Document Title: Fresher Induction Course Curriculum Creation Date: 05th Mar 2015

    Boot Camp Course Content Page 11 of 14

    Topic: Web Concepts

    Course Objectives:

    o Write syntactically correct HTTP messages and describe the semantics of common HTTP

    methods and header fields

    o Discuss differences between URIs, URNs, and URLs, and demonstrate a detailed

    understanding of http-scheme URLs, both relative and absolute

    o Describe the actions, including those related to the cache, performed by a browser in the

    process of visiting a Web address

    o Write a valid standards-conformant HTML document involving a variety of element types, including hyperlinks, images, lists, tables, and forms

    o Use CSS to implement a variety of presentation effects in HTML and XML documents,

    including explicit positioning of elements

    o Give the distinguishing characteristic of scripting languages

    o Discuss the reasons for and effects of nonstandard client-side scripting language characteristics, such as limited data types, dynamic variable types and properties, and

    extensive use of automatic type conversion

    o Write a client-side function that uses a regular expression to validate form entry and, if an

    entry is invalid, displays an error message rather than submitting the form

    o Recognize and correct validity errors in XML documents

    o Discuss how XML DTDs differ from XML schemas

    Introduction to the Internet and the World Wide Web

    o What is Internet

    o What is the World Wide Web?

    o Difference between URL, URI, URN

    o Anatomy of a Web Page

    o Comparing Web Site Projects and Web Application Projects

    o Proxy Servers & Firewalls

    Understanding the concept of Protocols

    o Hypertext Transport Protocol (HTTP)

    o HTTP request ; HTTP response ; HTML -Web page

    Hypertext Markup Language (HTML)

    o What is a Markup Language & its History

    o Concepts of Tags & Entities

  • Document Title: Fresher Induction Course Curriculum Creation Date: 05th Mar 2015

    Boot Camp Course Content Page 12 of 14

    o Creating a simple Web Page

    o Images & Links in a Web Page

    o Tables & Forms

    Concepts of Cascading Style Sheets

    o Introduction to Cascading style Sheets

    o Concept of ID and Class selector

    Introduction to Scripting Language

    o The need for Scripting Language

    o Difference between Server Side Scripting and Client Side scripting

    o Introduction to JavaScript

    o Functions: In-built and User defined

    o Overview of event handling using JavaScript

    o Overview of regular expressions eMail ID validation

    o Validating an Basic HTML form

    Overview of HTML 5.0

    o Introduction to HTML5

    o Symantec elements

    o Form elements

    o Media elements

    Introduction To jQuery

    o What is jQuery?

    o jQuery Vs Other JavaScript Libraries

    o Download the Library

    o Using Google Content Deliver Network (CDN)

    o The jQuery Function Object

    o jQuery Simple Demo

    DOM Traversal- Selectors & Filters

    o Basic Selectors

    o Hierarchy Selectors

    o Selection By Attribute

    o Basic Filters in jQuery

    o jQuery Method Chaining

  • Document Title: Fresher Induction Course Curriculum Creation Date: 05th Mar 2015

    Boot Camp Course Content Page 13 of 14

    Events

    o Events Overview

    o jQuery event model

    eXtensible Markup Language

    o Why XML?

    o XML Architecture- Building Flexible three- tier web applications

    o XML a universal data format

    o Benefits of XML

    o Business benefits of XML

    o Technology benefits of XML

    o Well formed documents

    o Well formed rules

    o Parsing XML documents

    o Data verses Markup

    o Creating an XML document

    o Comments

    o Processing Instructions

    o Classification of the character data between the tags

    o The DOCTYPE declaration

    o Attributes

    Validations & Transformations

    o Validating XML Document against:

    o DTD

    Declaring of Elements

    Declaring Attributes

    o XML Schemas- XSD

    Creating a schema file

    Creating Simple Data Types and Complex Types

    Creating attributes

    Usage of Group, AttributeGroup, Choice elements

  • Document Title: Fresher Induction Course Curriculum Creation Date: 05th Mar 2015

    Boot Camp Course Content Page 14 of 14

    Recommended topics to be referred after Boot Camp

    Java Training Course Outline

    o Getting Started with OOPS and Java o Data types and Variables o Operators and Expressions o Control Flow o Arrays o Introducing Classes o Inheritance in Java o Inner Classes and Packages o Exception Handling o Input/Output Streams o MultiThreading in Java o Collection Framework and Generics

    Microsoft .NET Programming (C#, ASP.NET)

    o .NET Framework4.0

    MicroSoft .NET Overview

    .NET Languages

    o C#.NET

    C# Languages Basics

    Object Oriented Language and OOPS Concepts

    Memory Management

    Exceptional Handling

    Operator Overloading