Introduction to Full-Stack Web Development
Web development has become one of the most innovative and important areas of the IT industry. This article aims to demonstrate the principles, concepts, and technologies surrounding full-stack web development.
What is a “Full-Stack” Web Developer?
A full-stack web developer is a person who can develop both client and server software, also knows how to
- Program a browser (like using JavaScript, jQuery, Angular, or Vue)
- Program a server (like using PHP, ASP, Python, or Node)
- Program a database (like using SQL, SQLite, or MongoDB)
According to that, the client-side is called Front-end, and the server-side is called Back-end.
Front-end (client-side)
The “front-end” of a website refers to the technology involved in the visual rendering of data in the client’s web browser.
Eg :HTML,CSS, Bootstrap, JSON, XML, JQuery, Javascript ,Angular,React
There are many elements that come together to make this happen including, but not necessarily limited to:
- HTML (Hypertext Markup Language)
- DOM (Document Object Model)
- CSS (Cascading Style Sheets)
- JavaScript/JQuery (or other client-side API/Framework)
- Mobile Device Design Optimization
Back-end (server-side)
The “back-end” of a website refers to the server, server-side scripts, databases, and machine configuration settings.
1.Server-Side Scripting Languages
There are many popular back end scripting languages which helps to provide dynamic content to websites. Some of them are PHP, Python, Nodejs, ExpressJs, Ruby, Perl
2.Databases & Data Storage
Another key component to the back-end is the storage and retrieval of data. There are markup style formats like XML and JSON that allow you to store and organize data in text files. Some of them are SQL, MySQL, PostgresSQL, and MongoDB.
Popular Stacks
- LAMP stack: JavaScript — Linux — Apache — MySQL — PHP
- LEMP stack: JavaScript — Linux — Nginx — MySQL — PHP
- WAMP stack: Windows—Apache — MySQL — PHP
- JAM stack: JavaScript — Apis— Markup
- Django stack: JavaScript — Python — Django — MySQL
- Ruby on Rails: JavaScript — Ruby — SQLite — Rails
- MEAN stack: MongoDB — ExpressJs — AngularJS — Node.js
- MERN stack: MongoDB — ExpressJs — ReactJS — Node.js
Advantages
The advantage of being a full stack web developer is:
- You can master all the techniques involved in a development project
- You can make a prototype very rapidly
- You can switch between front and back end development based on requirements
- You can better understand all aspects of new and upcoming technologies