IT3501 - Full Stack Web Development
Assignment 1: Overview of Full Stack Web Development
Introduction:
Full Stack Web Development refers to the process of designing, developing, and deploying both the frontend
(client side) and backend (server side) of a web application.
A full stack developer is skilled in working with all layers of an application-user interface, server logic, and
database management.
Components of a Full Stack Application:
1. User (Client) - The end-user who interacts with the application using a browser or mobile app.
2. Browser (Frontend) - Renders UI, sends requests to server. Uses HTML, CSS, JavaScript, React, Angular.
3. Web Server - Receives browser requests, processes them, and sends responses. Example: Apache,
Nginx, Express.js.
4. Backend - Handles business logic and data processing. Common languages: Node.js, Python, PHP, Java.
5. Database - Stores and retrieves application data. Examples: MySQL, MongoDB.
Architecture (MVC):
Model - Manages data and rules.
View - Displays user interface.
Controller - Handles input and updates Model/View.
Example Stacks:
- MEAN: MongoDB, Express.js, Angular, Node.js
- MERN: MongoDB, Express.js, React, Node.js
- LAMP: Linux, Apache, MySQL, PHP
Advantages:
- One developer/team can manage the full project.
- Better understanding of complete workflow.
- Cost-effective and scalable.
Conclusion:
Full Stack Web Development integrates frontend and backend technologies to deliver complete web
applications.
IT3501 - Full Stack Web Development
Assignment 2: MVC Architecture in Full Stack Development
Introduction:
MVC (Model-View-Controller) is a software design pattern used to structure applications into three
components.
Components:
- Model: Manages application data and logic, interacts with the database.
- View: Displays the user interface.
- Controller: Acts as a bridge between Model and View, processes input.
Workflow:
1. User sends a request.
2. Controller processes and interacts with Model.
3. Model fetches/updates data from the database.
4. Controller passes data to View.
5. View displays results.
Advantages:
- Clear separation of concerns.
- Easy to scale and maintain.
- Supports parallel development.
- Promotes code reusability.
Conclusion:
MVC architecture ensures organized, maintainable, and efficient full stack application development.
IT3501 - Full Stack Web Development
Assignment 3: Technology Stacks - MEAN & MERN
Introduction:
A technology stack is a set of tools and frameworks used to build applications. MEAN and MERN are popular
JavaScript-based stacks.
MEAN Stack:
- MongoDB - NoSQL database.
- Express.js - Web framework for Node.js.
- Angular - Frontend framework.
- Node.js - Backend runtime.
MERN Stack:
- MongoDB - Database layer.
- Express.js - Server-side framework.
- React - UI library.
- Node.js - Backend runtime.
Comparison:
MEAN uses Angular (framework with two-way binding).
MERN uses React (library with one-way binding).
MEAN has a steeper learning curve, MERN is easier for beginners.
Advantages:
- JavaScript across the stack.
- High scalability.
- Large community support.
Conclusion:
Both MEAN and MERN are powerful full stack solutions. Choice depends on project requirements and
preference.