0% found this document useful (0 votes)
113 views8 pages

DAC May 2021 Syllabus

The document outlines the modules, contents, and duration of the Diploma in Advanced Computing (DAC) May 2021 Batch. The course consists of 8 modules totaling 600 hours. Module 1 covers basic programming concepts in Java like arrays, loops, and object-oriented concepts. Module 2 focuses on object-oriented programming with Java, covering classes, inheritance, polymorphism and collections. Module 3 discusses algorithms and data structures. The remaining modules cover database technologies, web programming, web-based Java programming, general aptitude, and a software project.

Uploaded by

Dandwate Tata
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)
113 views8 pages

DAC May 2021 Syllabus

The document outlines the modules, contents, and duration of the Diploma in Advanced Computing (DAC) May 2021 Batch. The course consists of 8 modules totaling 600 hours. Module 1 covers basic programming concepts in Java like arrays, loops, and object-oriented concepts. Module 2 focuses on object-oriented programming with Java, covering classes, inheritance, polymorphism and collections. Module 3 discusses algorithms and data structures. The remaining modules cover database technologies, web programming, web-based Java programming, general aptitude, and a software project.

Uploaded by

Dandwate Tata
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/ 8

Diploma in Advanced Computing (DAC)

May 2021 Batch

COURSE MODULES:

Module No. Module Name Duration (Hrs)


M1a Basic Programming Concepts 20
M1b Operating System Concepts 24
M1c Software Engineering Concepts 20
M2 Object Oriented Programming with Java 88
M3 Algorithms and Data Structures 60
M4 Database Technologies 60
M5 Web Programming Technologies 88
M6 Web-based Java Programming 80
M7 General Aptitude & Communication 60
M8 Software Project 100
TOTAL 600

MODULE CONTENTS:

1a. Concepts of Programming o Two dimensional array in java


o Java Variable Arguments explained
• Getting Started
o Add, update, read array elements
o Setup development environment (JRE, JDK,
o Sorting and searching in array
eclipse)
o Java String Array to String
o Writing your first Java program
o How to copy arrays in Java
o About main () method
o Constructor in Java
1b. Operating System Concepts
• Object Oriented Concepts
o Class & Object • Introduction to OS
o Access Specifier o Evolution and components of OS
o Java Data Types, Primitives and Binary o Different from other application software
Literals o Functionality and Services of OS
• Operators o Types of Operating System
o Arithmetic Operator • Introduction to Linux
o Relational Operator o Basics of File System types
o Logical Operator o Commands associated with files/directories
o Unary Operator o Permissions (chmod,chown, etc)
o Ternary Operator o access control list
o Assignment Operator • File Management
• Conditional and Looping Statements o Attributes and Operations on File Management
o If, else if, switch o File Access Methods
o break & continue keyword o Directory Structure
o for loop • Shell Programming
o while loop o Types of shells in Linux
o do while loop o Shell Variables and Wild Card symbols
o static & final keyword o Shell Meta characters
o Recursion o Command line arguments
• Arrays ▪ Read, Echo, decision loops, arithmetic
o Initializing an Array in Java expressions

@CDAC Page 1 of 3
o Shell scripting • Introduction to testing methods: white-box,
• Process black-box and grey-box
o Process States • Introduction to functional and non-functional
o Preemptive and non-preemptive processes testing
o Process life cycle • Introduction to Selenium (use Eclipse IDE)
o FCFS • Load web driver
o RR • Create selense commands: locators: by ID,
o Shortest Job First name, class, tag name, XPath
o Priority • Add interactions: text box, radio button selection,
• Threads check box selection, drop down item selection,
o Types of Threads - user and kernel threads keyboard actions, mouse actions, multi select
o Difference between Threads and Process
• Concurrency control 2. Object Oriented Programming with Java
o Deadlock Handling Strategies
o Deadlock Prevention • Introduction to java
o Deadlock Avoidance • Features of java
• JVM Architecture
1c. Software Engineering Concepts • JDK and its usage
• Structure of java class
• Developing an application in a team • Working with data types: Primitive data types
• Issues developers face when working in a team • Operators
• Introduction to code versioning system o Unary, binary, Arithmetic, Assignment,
• Introduction to git compound, relational, logical, equality
• Introduction to git repository and git structure • Control statements
• Adding code to git o if-else-if, switch, ternary operator, for
• Creating and merging different git branches loop, while loop, do-while loop
• Introduction to software engineering • Declaring variables and methods
• Software Development Life Cycles • Data type compatibility
• Requirements Engineering • Static variables and methods
• Design and Architectural Engineering • Accessing static variables and methods of
o Design Models different class
o UML • Introduction to reference data types
• Object Oriented Analysis and Design • Reference variables and methods
• Introduction to Agile development model • Difference between reference data types and
• Agile development components primitive data types
• Benefits of Agile model • Difference between reference variable and
• Introduction to different tools used for agile static variable
web development • Constructors, initializing reference variables
• Introduction to Atlassian Jira using constructors
o Add Project • Pass by value v/s pass by reference
o Add Tasks and sub-tasks • Re-assigning a reference variable
o Create sprints with tasks • Passing reference variable to method
• Case study of developing web application • Initializing reference variable of different class
using agile methodology • Heap memory and stack memory
• Introduction to software testing
• Principles of software testing Object Oriented Programming Concepts
• Verification and validation • Introduction to OOP concepts
• Quality Assurance vs Quality Control vs Testing • Encapsulation
• Introduction to STLC and V Model • Inheritance: single & multilevel
• Types of testing: manual and automation • Inheritance: Hierarchical
• Tools used for automation testing • Polymorphism: Compile time and runtime
polymorphism

@CDAC Page 2 of 3
• Rules of overriding and overloading of o Object Class: Overriding to String, equals &
methods hashcode method
• super and this keywords Collections
• Upcasting & downcasting of a reference
variable • Introduction to collections: Collection hierarchy
• Abstract class and abstract methods • List, Queue, Set and Map Collections
• Interface (implementing multiple interfaces) • List Collection:
• Final variables, final methods and final class o ArrayList, LinkedList
• Functional interface o Vector (insert, delete, search, sort, iterate,
• New interface features (Java 8 & above) replace operations)
• Arrays • Collections class
• Enumerations • Comparable and Comparator interfaces
• Access modifiers (public, private, protected • Queue collection
and default) • Set Collection:
• Packages and import statements o HashSet, LinkedHashSet & TreeSet collection
• Static imports o Backed set collections
• Constructor chaining (with and without • Map Collection:
packages) o HashTable, HashMap, LinkedHashMap
• Accessing protected variables and methods & TreeMap classes
outside the package o Backed Map collections
• Garbage collection in java • Generics
• Requesting JVM to run garbage collection • Concurrent collections
• Different ways to make object eligible for • MultiThreading : Thread class and Runnable
garbage collection: (Nulling a reference Interface
variable, Re-assigning a reference variable • sleep, join, yield, setPriority, getPriority methods
& island of isolation) • ThreadGroup class
• Finalize method • Synchronization
• Wrapper Classes & String Class • Deadlock
o Wrapper classes and constant pools • Wait, notify and notifyAll methods
o String class, StringBuffer & StringBuilder • Inner classes
class
o String pool 3. Algorithms and Data Structures Using Java
• Exception Handling Problem Solving & Computational Thinking
o Exception hierarchy, Errors, Checked and
un-checked exceptions • Define the problem
o Exception propagation • Identify the problem
o try-catch-finally block , throws clause and • Introduction to Problem Solving
throw keyword • Problem solving basics
o Multi catch block
Algorithm & Data Structures
o Creating user defined checked and
unchecked exceptions • Introductory Concepts
• Java.io & java.nio Package • Algorithm Constructs
o Brief introduction to InputStream, • OO design: Abstract Data Types (ADTs)
OutputStream, Reader and Writer • Basic Data Structures
interfaces o Arrays
o NIO package o Stacks
o Serialization and de-serialization o Queues
o Shallow copy and deep copy o Circular Queues
• Object Class & java.util Package • Linkedlists
o Date, DateTime, Calendar class o Singly LinkedLists
o Converting Date to String and String to Date o Doubly LinkedLists
using SimpleDateFormat class

@CDAC Page 3 of 3
o Circular LinkedLists o Adjacency List
o Node-based storage with arrays o Graph Traversal Algorithms ( Breadth
• Recursion First Search, Depth First Search)
o What is recursion? • Shortest Path
o What is the base condition in recursion o Level Setting : Dijkstra's algorithm
o Direct and indirect recursion. o Level Correcting: All-pairs shortest
o Memory is allocated to different function path, Floyd-Warshall algorithm
calls in recursion • Spanning Trees
o Pro and cons of recursion o Minimum spanning tree algorithms,
o Function complexity during recursion o Prim's algorithm
• Trees & Applications o Kruskal's Algorithm
o Introduction to trees • What are the different class of algorithms
o Trees and Terminology • How to write efficient Algorithm
o Tree Traversals • Introduction to algorithm design techniques
o Binary trees • Algorithm Design techniques
o Complete binary trees / Almost complete • Analysis of an Algorithm
binary tree (ACBT) o Asymptotic Analysis
o Array Implementation of ACBT o Algorithm Analysis
o Binary search trees • Analysis of different type of Algorithms
o AVL Tree o Divide and Conquer Algorithm
o Multi-way Tree o Greedy algorithm
• Objectives of Searching o Dynamic Programming algorithm
o The Sequential Search o Brute force algorithm
o Analysis of Sequential Search o Backtracking algorithms
o The Binary Search o Branch-and-bound algorithms
• Analysis of Binary Search o Stochastic algorithms
• Introduction to sorting • Complexity
o Selection sort o Complexity Analysis
o Insertion sort o Space complexity of algorithm
o Bubble sort o Time complexity of algorithm
o Shell Sort • Case study on Algorithm Design techniques
o Heapsort • Application of Data structures
o Mergesort
o Quicksort 4. Database Technologies
• Analysis of sorting algorithms
• Hashing & Introduction to hashtables • Introduction to DBMS
• Hash Functions • Basic Database Terminology
• Different type of hash functions • Database Storage Architecture, Concepts of
• Collision Resolution Database Instance and Schema, Distributed
• Clustering Databases
o Primary • Types of DBMS: Relational, Object Relational
o Secondary and NoSQL Databases
• Linear Probing • Data Models (Conceptual, Logical, Physical),
• Quadratic Probing Codd’s 12 rules for RDBMS
• Double Hashing • Database Design, Entity-Relationship Diagram
• Inserting and Deleting an element from a (ERD)
hash table • Introduction to SQL, Categories of SQL
• Introduction to graph theory Commands: DDL, DML, DCL, DTL/TCL.
• Graph Terminology • Introduction to MySQL, MySQL Clients
(Monitor, Shell, Workbench).
• Different types of Graphs
• Representation of Graphs
o Adjacency Matrix

@CDAC Page 4 of 3
• SQL/MySQL Data Types, Database Constraints • Triggers (BEFORE, AFTER), New and Old trigger
(Primary Key, Unique, Not Null, Foreign Key, variables
Default, Check) • Trigger Examples and real time use
• Normalization, Need for Normalization • Full-Text Search, Pattern Matching with RegEx
• Data Redundancy, Data Anomalies, Functional • Introduction to NoSQL database, Features of
Dependency NoSQL Database
• Normal Forms (1NF, 2NF, 3NF, BCNF) with • Structured vs. Semistructured and Unstructured
examples, Introduction to 4th and 5th NF, Data
Need of Denormalization • Difference between RDBMS and NoSQL databases
• LIKE Operator, DISTINCT, Sorting (Order by • CAP Theorem, BASE Model
clause). • Categories of NoSQL Databases
• BETWEEN, AND, OR Operators, Comparing • Introduction to MongoDB, Features of MongoDB
Nulls (IS NULL/IS Not NULL), IN/NOT IN • MongoDB command interface and MongoDB
• Relational Algebra Operations (Selection, compass
Projection, Union, Intersect, Minus) • MongoDB Documents & Collections
• Aggregate Functions • RDBMS & MongoDB analogies: relations/tables
• Grouping Things Together (Group By, Having) => collections; tuples/records => documents
• Joins (Equi, Inner, Outer, Natural, Cross), SQL • JSON and BSON documents
Standard Syntax for Joins • Performing CRUD (CREATE, READ, UPDATE,
• Copying table structure/data, Sequences DELETE) Operations, UPSERT
(AUTO_INCREMENT) • MongoDB Operators, Sorting and Indexing in
• Subquery, Correlated Subquery, EXISTS/NOT MongoDB
EXISTS • Migrating from RDBMS to NoSQL
• TCL Commands (Commit/Rollback/SavePoint),
DCL Commands (GRANT/REVOKE/GRANT 5. Web Programming Technologies
OPTION)
• Views, Types of Views, Simple and Complex • Brief history of the Internet
Views • How does the Internet work?
• Indexes, Benefit of Indexes, Type of Indexes, • Internet Protocol; HTTP
Temporary Tables • Domain Names; Domain Name Service servers
• MySQL Storage Engines (InnoDB, MyISAM and • HTTP Protocols
others) o Difference between HTTP1.0, HTTP 1.1 and
• ACID Properties, Concurrency and Locks HTTP 2.0
• Introduction to MySQL Programming, Use of o Methods – GET, POST, HEAD, PUT, DELETE, etc.
MySQL Programs, o Status codes
• Introduction to Stored Procedures, Benefits of o Stateless nature of the protocol and
HTTP Session
Stored Procedures
o HTTPS
• Procedure Parameters (IN, OUT and INOUT)
• Architecture of the Web
• Flow Control Statements (LOOP, WHILE and
• Web servers – IIS, Apache server
REPEAT)
• Introduction to HTML
• Using above statements in Stored Procedures/
Functions • Document Object Model (DOM)
• Conditional Statements (IF, IF-ELSE-THEN, • Basic HTML Tags
SWITCH CASE) o Alignment, Headings, Anchor, Paragraph,
Image, Lists, Tables, and iFrames
• Example of each type of statement
• HTML5
• Loop constructs (ITERATE, LEAVE)
o New features in HTML5
• Functions with and without parameters
o New elements, new attributes, link
• MySQL Built-in functions (string, numeric, date)
relations, microdata, ARIA accessibility
• Cursors (Asensitive, Insensitive, Read only, o HTML5 Validation
Nonscrollable)
o Audio & Video Support
• Cursors example and real time use • HTML Forms & Controls

@CDAC Page 5 of 3
o Input, Text Area, Radio Button, Checkbox, • Errors, Debugging
Dropdown, Submit, Reset, Button, etc. • Introduction to Browser Dev Tool
• Introduction to CSS, Styling HTML with CSS, • Pushing code quality via JSLint tool
Structuring pages with CSS, • Introducing to jQuery
• Inline CSS, Internal CSS, External CSS, Multiple • jQuery selectors
styles, CSS Fonts • jQuery events
• CSS Box Model • jQuery animation effects
• id Attribute, class Attribute • jQuery DOM traversal and manipulation
• HTML Style Tags • Data attributes and templates
• Linking a style to an HTML document • jQuery DOM utility functions
• Introduction of UI Scripting • jQuery plugins
• The Best Experience for All Users • Introduction and need of JSON
o Desktop, Tablet, Mobile • JSON Syntax Rules
• Bootstrap • JSON Data - a Name and a Value,
o Overview of Bootstrap, Need to use • JSON Objects, JSON Arrays, JSON Files
Bootstrap • JSON parsing
o Bootstrap Grid System, Grid Classes, Basic • Introduction to Ajax
Structure of a Bootstrap Grid
• Ajax Framework
o Typography
• Ajax Architecture
o Components – Tables, Images, Jumbotron,
• Web services and Ajax
Wells, Alerts, Buttons, Button Groups,
Badges/Labels, Progress Bars, Pagination, • Ajax using JSON and jQuery
List Groups, Panels, Dropdowns, Collapse, Node.js
Tabs/Pills, Navbar
o Forms, Inputs • Introduction to Node.js
o Bootstrap Themes, Templates • Browser JS vs. Node.js
• ECMAScript 2015 (ES6)
JavaScript • Node.js REPL
• Introduction to JavaScript • Introduction to Asynchronous programming
• Variables in JavaScript and callbacks
• Statements, Operators, Comments, • Promises and async & await
Expressions, and Control Structures • The Event Loop and Timers
• JavaScript Scopes • Understanding Node modules, exports, and
• Strings, String Methods require
• Numbers, Number Methods • Introduction to npm
• Boolean Values o package.json and package-lock.json files
• Dates, Date Formats, Date Methods o Install, update, and manage package
• Arrays, Array Methods dependencies
• Objects, Object Definitions, Object Properties, o Local and global packages
Object Methods, Object Prototypes • File I/O – Sync & Async Methods
• Functions, Function Definitions, Function • HTTP Module – Building an HTTP server
Parameters, Function Invocation, Function • Developing a Node web application
Closures React
• Object Oriented Programming
o Method, Constructor, Inheritance, • Introduction to React
Encapsulation, Abstraction, Polymorphism • React Elements and React Components
• Document Object Model (DOM) • Function and Class Components
o Object hierarchy in JavaScript • Working with React Components and Props
o HTML DOM, DOM Elements, DOM Events o Compose components
o DOM Methods, DOM Manipulation o Render components
• Forms, Forms API, Forms Validation o Declutter components
• Regular Expressions • Introduction to State and Lifecycle

@CDAC Page 6 of 3
• Stateful components and lifecycle methods • Session Tracking with
• Props vs. State vs. Context o Cookies
• Handling events o HttpSession
• Conditional rendering • Request Dispatcher
• Lists and Keys • Page Navigation
o Rendering Multiple Components • Complete Case study Servlet Based
o Basic List Component • JSP: Separating UI from Content generation code
• Working with forms and inputs • MVC architecture
• Refs and the DOM • Design Pattern: MVC Pattern
• Lifting state up • Life cycle of a JSP page
• Error Boundaries • Directives, Implicit and Explicit Objects,
• Composition vs. Inheritance Scriptlets, Expressions, Expression Language
o Containment • Scope
o Specialization • JSP Error Page handling
• Thinking in React • JSTL
• Introduction to Redux • Hibernate Framework
• Actions, Reducers, and Stores o Introduction to Hibernate Framework
• Usage with React o Architecture
• Hibernate in IDE
6. Web-based Java Programming o Creating web application using Hibernate API
o Lifecycle of Hibernate Entities
• J2EE Overview
• HB with annotation example
o J2EE Container
• Hibernate Mappings and Relationships
o Packaging Web applications
• Collection and Component Mapping
o J2EE compliant web application
• HQL, Named Queries, Criteria Queries
o Deployment tools.
o Web application life cycle Spring
o Deploying web applications.
o Web Services Support • What is Spring Framework
• JDBC & Transaction Management • Overview of Spring Architecture
o Introduction to JDBC API • Spring MVC architecture
o JDBC Architecture • Spring Modules Overview
o JDBC Drivers • Understanding Spring 4 annotations (Basic
o JDBC Classes & Interfaces: Driver, Introduction)
Connection, Statement, • What is IoC (Inversion of Control)
PreparedStatement, ResultSet and their • IOC container
relationship to provider implementations • Dependency Injection
o Stored procedures and functions Invocation • Spring Beans
o SQL Injection overview and prevention • Autowiring Beans
o Design Pattern: Data Access Object Pattern • Bean Scopes
• Servlets: Dynamic Content Generation • Spring MVC
• Advantages of Servlets over CGI • Model, Model & View, HandlerMapping,
• Servlet Life cycle ViewResolver
• Servlet API & Deployment • Design Pattern: Front Controller Pattern
• Servlet Annotations • Spring MVC Web application with JSP views
• The Servlet interface (without Spring Boot)
• The HttpServlet, HttpServletRequest, • Using Thymleaf as alternate View Technology
HttpServletResponse (only introduction)
• Exception Handling • Spring Validations
• Servlet, DAO, POJO DB Layers • Spring i18n, Localization, Properties
• Session • File Upload example
• Session Management • Spring Boot essentials

@CDAC Page 7 of 3
• Why Spring boot
• Spring Boot Overview
• Basic Introduction of MAVEN
• Building Spring Web application with Boot
• Spring Boot in detail (Use Spring Boot for all
demo & assignments here onwards)
• Running a web application using Spring Boot
with CRUD (with Static Data not DB)
• Spring Data JDBC
• Spring Data Module
o Spring Data JPA (Repository support for JPA)
o CrudRepository & JPARepository
o Query methods
o Using custom query (@Query)
• Spring AOP
o AOP Overview
o Spring AOP
o AOP Terminology and annotations: Advice,
Join Points, Pointcuts, Aspects
• Building REST Services with Spring
o Introduction to web services
o SOAP Vs RESTful web services
o RESTful web service introduction
o Create RESTful web service in java using
Spring Boot
o RESTful web service JSON example
o RESTful web service CRUD example
o Using POSTMAN client to invoke REST API’s
o REST service invocation using REST
Template
• Testing in Spring
• Unit Testing of Spring MVC Controllers:
• Unit Testing of Spring Service Layer
• Integration Testing of Spring MVC Applications:
REST API
• Unit Testing Spring MVC Controllers with REST

7. Aptitude & Communication

8. Software Project

@CDAC Page 8 of 3

You might also like