Course Curriculum (w.e.f.
Session2023-24)
Master of ComputerApplications
MCAE0005: FULLSTACK DEVELOPMENT II
Objective: To provide a comprehensive and practical understanding of web development technologies
and methodologies. By the end of the course, students should be equipped with the skills and knowledge
required to design, build, and deploy full-fledged web applications, encompassing both front-end and
back-end components.
Credits:03 L–T–P–J: 3–0–0–0
Module Teaching
No. Content Hours
Basic 1. Web Development Fundamentals (optional )
HTML & CSS- Basic structure and styling of web pages, JavaScript:
Fundamentals of JS, DOM manipulation, ES6+ features
Version Control (Git): Basic git commands, creating repositories, and using
GitHub for collaboration
Browser Developer Tools: Inspecting elements, console, network tab for
I 22
debugging
JavaScript Essentials- Data Types: Strings, numbers, arrays, objects, Control
Flow: Conditionals (if-else), loops (for, while),
Functions: Declaration, invocation, and arrow functions, Objects and Arrays:
Manipulation, iteration, and JSON,
Asynchronous JavaScript: Callbacks, Promises, async/await
Error Handling: try-catch block
Basics of Databases- Relational Databases (SQL): What is SQL, basic CRUD
operations (Create, Read, Update, Delete), NoSQL
Databases: Understanding NoSQL, differences from SQL, examples
(MongoDB, CouchDB)
[Link]- Introduction to [Link] (What is [Link], Features, Event-driven
architecture), Core Modules (File system, HTTP, Path, Events and Streams)
,NPM (Node Package Manager) (Installing and managing packages, Creating
[Link], Using nodemon and dotenv), Asynchronous Programming
(Callbacks and Promises, async/await, Error handling in async code), Building
HTTP Servers (Creating a basic server, Request and Response handling), Basic
REST APIs (Introduction to REST principles, CRUD operations)
[Link]- Introduction to React (What is [Link], Advantages of React, JSX
syntax), Components (Functional components, Class components, Props and
prop drilling), State and Lifecycle (Using useState for local state, Handling side
effects with useEffect, Component lifecycle), Event Handling (Handling user
inputs and events, Controlled vs. uncontrolled components), React Router
(Introduction to React Router, Setting up routes, Dynamic and nested routing),
Data Fetching (Fetching data with fetch and Axios, Handling loading and error
states), State Management (Using Context API for global state, Avoiding prop
drilling), Optimization (Memorization with useMemo and useCallback, Lazy
loading components
[Link]- Introduction to [Link] (What is [Link], Setting up
[Link]), Middleware (Built-in middleware, Third-party middleware,
Custom middleware), Routing (Setting up routes, Query strings and route
II parameters, Nested routes), RESTful API Development (Designing REST 19
APIs, Handling GET, POST, PUT, DELETE requests, Error handling and
validation), Static Files and Views (Serving static files, Working with template
engines), Security and Performance (Securing APIs, Optimization techniques)
MongoDB- Introduction to MongoDB (What is MongoDB, NoSQL vs. SQL,
Setting up MongoDB), CRUD Operations (Creating and inserting documents,
Reading data with queries, Updating and deleting documents), Mongoose
(Setting up Mongoose, Defining schemas and models, Data validation),
Relationships (One-to-One, One-to-Many, Population in Mongoose),
Aggregation Framework (Using pipelines, Filtering and grouping data),
Indexes (Creating and managing indexes, Performance optimization with
indexing) Create: insertOne(), insertMany() Read: find(), findOne(),
countDocuments(), distinct(), findById() Update: updateOne(), updateMany(),
DEPARTMENT OF COMPUTER ENGINEERING & APPLICATIONS, Institute of Engineering & Technology
Course Curriculum (w.e.f. Session2023-24)
Master of ComputerApplications
replaceOne(), findAndModify() Delete: deleteOne(), deleteMany(), drop()
Mongoose: Schema(), [Link](), save(), find(), findOne(), findById(),
updateOne(), updateMany(), remove(), populate() Relationships: Embedding
documents, Referencing documents (ObjectId), populate() Aggregation:
$match, $group, $project, $sort, $limit, $skip, $unwind, $lookup, $count, $min,
$max Indexing: createIndex(), dropIndex(), listIndexes(), ensureIndex()
Aggregation Operators: $sum, $avg, $push, $addToSet, $first, $last, $concat,
$regex Transactions: startSession(), commitTransaction(), abortTransaction()
Sharding: shardCollection(), enableSharding(), splitChunk()
Full-Stack Integration- Connecting Frontend (React) with Backend
([Link]), Using Axios to call APIs, Handling CORS issues, Securing APIs
with authentication (JWT), Setting up protected routes in React- Configuring
Flutter for iOS Deployment, Managing Certificates, Code Signing, and
Provisioning Profiles.
References:
● "HTML and CSS: Design and Build Websites" by Jon Duckett "JavaScript: The Good Parts" by Douglas Crockford.
● "Learning React: Modern Patterns for Developing React Apps" by Alex Banks and Eve Porcello "[Link],
MongoDB and Angular Web Development" by Brad Dayley
● "Express in Action" by Evan Hahn
● "SQL for Mere Mortals" by John L. Viescas and Michael J. Hernandez
Outcome: After completion of course, student will be able to:
• CO1: Proficiency in HTML and CSS.
• CO2: Strong JavaScript Fundamentals
• CO3: Develop Responsive Web Design.
• CO4: Understand Front-End Framework Familiarity.
• CO5: Proficiency in Server-Side Scripting
• CO6: Understand the basic concepts of User Interface Interactivity.
• CO7: Database Integration
• CO8: RESTful API Development
• CO9: Authentication and Security Implementation
• CO10: Error Handling and Debugging
Mapping of Course Outcomes (COs) with Program Outcomes (POs) and Program Specific
Outcomes (PSOs):
COs POs/PSOs
CO1 PO1,PO5/PSO1
CO2 PO1,PO3/PSO1, PSO2
CO3 PO1,PO3/PSO2, PSO4
CO4 PO1/PSO1
DEPARTMENT OF COMPUTER ENGINEERING & APPLICATIONS, Institute of Engineering & Technology
Course Curriculum (w.e.f. Session2023-24)
Master of ComputerApplications
DEPARTMENT OF COMPUTER ENGINEERING & APPLICATIONS, Institute of Engineering & Technology