History of Web
The introduction of HTML, the markup language used to create web pages, in 1991, and the development of the
first web standards in the mid-1990s helped to make the web more accessible and user-friendly.
The early 2000s saw the rise of Web 2.0, a term coined to describe a new generation of web applications that
allowed users to contribute and interact with content.
Social networking sites such as Facebook and Twitter, online video-sharing sites such as YouTube, and
collaborative platforms such as Wikipedia are all examples of Web 2.0 applications.
Web Technology
Web Technology refers to the various tools and techniques that are utilized in the process of communication
between different types of devices over the Internet. A web browser is used to access web pages. Web browsers
can be defined as programs that display text, data, pictures, animation, and video on the Internet. Hyperlinked
resources on the World Wide Web can be accessed using software interfaces provided by Web browsers.
Web Technology can be classified into the Following Sections:
• World Wide Web (WWW): The World Wide Web is based on several different technologies: Web
browsers, Hypertext Markup Language (HTML), and Hypertext Transfer Protocol (HTTP).
• Web Browser: The web browser is an application software to explore www (World Wide Web). It
provides an interface between the server and the client and requests to the server for web documents
and services.
• Web Server: A web server is a program that processes the network requests of the users and serves
them with files that create web pages. This exchange takes place using the Hypertext Transfer Protocol
(HTTP).
• Web Pages: A webpage is a digital document that is linked to the World Wide Web and viewable by
anyone connected to the internet who has a web browser.
• Web Development: Web development refers to the building, creating, and maintaining of websites. It
includes aspects such as web design, web publishing, web programming, and database management. It
is the creation of an application that works over the internet, i.e., websites.
Web Development can be Classified into Two Ways:
• Frontend Development: The part of a website that the user interacts directly is termed as front end. It is
also referred to as the ‘client side’ of the application.
• Backend Development: Backend is the server side of a website. It is the part of the website that users
cannot see and interact. It is the portion of software that does not come in direct contact with the users.
It is used to store and arrange data.
• Frontend Development Languages
• The front-end portion is built by using some languages which are discussed below:
• HTML: HTML stands for Hypertext Markup Language. It is used to design the front-end portion of
web pages using a markup language. HTML is a combination of Hypertext and Markup language.
Hypertext defines the link between the web pages. The markup language is used to define the text
documentation within the tag, which defines the structure of web pages.
• CSS: Cascading Style Sheets, fondly referred to as CSS, is a simply designed language intended to
simplify the process of making web pages presentable. CSS allows you to apply styles to web pages.
More importantly, CSS enables you to do this independently of the HTML that makes up each web
page.
• JavaScript: JavaScript is a famous scripting language used to create magic on the sites to make the site
interactive for the user. It is used to enhance the functionality of a website to run cool games and web-
based software.
• AJAX: Ajax is an acronym for Asynchronous JavaScript and XML. It is used to communicate with the
server without refreshing the web page thus increasing the user experience and better performance.
• There are many other languages through which one can do front-end development depending upon the
framework. For example, Flutter user Dart, React uses JavaScript, and Django uses Python, and much
more.
• Front End Frameworks and Libraries
• Backend Development Languages
• The back-end portion is built by using some languages, which are discussed below:
• PHP: PHP is a server-side scripting language designed specifically for web development. Since PHP
code is executed on the server side, it is called a server-side scripting language.
• Node.js: Node.js is an open-source and cross-platform runtime environment for executing JavaScript
code outside a browser. You need to remember that NodeJS is not a framework, and it’s not a
programming language. Most people are confused and understand it’s a framework or a programming
language. We often use Node.js for building back-end services like APIs like Web App or Mobile App.
It’s used in production by large companies such as PayPal, Uber, Netflix, Walmart, and so on.
• Python: Python is a programming language that lets you work quickly and integrate systems more
efficiently.
• Ruby: Ruby is a dynamic, reflective, object-oriented, general-purpose programming language. Ruby is
a pure Object-Oriented language developed by Yukihiro Matsumoto. Everything in Ruby is an object
except the blocks but there are replacements too for it i.e procs and lambda. The objective of Ruby’s
development was to make it act as a sensible buffer between human programmers and the underlying
computing machinery.
• Java: Java is one of the most popular and widely used programming languages and platforms. It is
highly scalable. Java components are easily available.
• JavaScript: JavaScript can be used as both (front end and back end) programming.
• Golang: Golang is a procedural and statically typed programming language having the syntax similar to
C programming language. Sometimes it is termed as Go Programming Language.
• C#: C# is a general-purpose, modern and object-oriented programming language pronounced as “C
sharp”.
• DBMS: The software which is used to manage database is called Database Management System
(DBMS).
• Back End Frameworks and Technology
• PHP
• Framework: Laravel
• CMS: WordPress
• NodeJS
• Framework: Express
• Python
• Framework: Django
• Package Manager: Python PIP
• Ruby
• Framework: Ruby on Rails
• Java
• Framework: Spring, Hibernate
• C#
• Framework: .NET
• Databases
• In web technology, a database is a structured collection of data that is stored electronically and
accessed via a web application. It serves as the backend component where data is stored, managed, and
retrieved. Databases can be relational (like MySQL, PostgreSQL) using structured tables and SQL for
queries or non-relational (like MongoDB, CouchDB), which stores data in flexible, document-oriented
formats. They enable web applications to handle dynamic content, user data, transactions, and more by
providing efficient storage, retrieval, and manipulation capabilities. Database management systems
(DBMS) are used to interact with the database, ensuring data integrity, security, and performance.
• Relational Database
• A relational database stores data in tables, like a spreadsheet, where each table has rows and columns.
The rows hold individual records, and the columns define the data attributes. Tables can be linked to
each other through special keys, allowing related data to be connected.
• Postgre SQL: PostgreSQL is a powerful, open-source relational database that supports advanced SQL
features and complex queries. It handles structured data, ensures ACID compliance, and is known for
its reliability and extensibility.
• MariaDB: MariaDB is an open-source relational database that evolved from MySQL, offering
improved performance, security, and features. It supports SQL queries and ACID compliance and is
highly compatible with MySQL.
• MySQL: MySQL is an open-source relational database management system that uses SQL for
managing structured data. It’s known for its reliability, ease of use, and performance, widely used in
web applications.
• NoSQL Databases
• A NoSQL database stores data in a flexible, non-tabular format, unlike traditional relational databases.
Instead of using tables with rows and columns, NoSQL databases might use documents, key-value
pairs, wide columns, or graphs to store data. This allows them to handle large amounts of unstructured
or semi-structured data efficiently. They are designed to scale easily and manage big data applications.
• MongoDB: MongoDB is a NoSQL database storing data in JSON-like documents. It handles
unstructured data, supports powerful queries, and scales easily across servers, making it popular for
flexible, scalable applications.
• Cassandra: Apache Cassandra is an open-source NoSQL database that is used for handling big data. It
has the capability to handle structured, semi-structured, and unstructured data.
• Redis: Redis is an in-memory NoSQL database known for its speed. It supports various data structures
like strings, hashes, and lists, making it ideal for caching, real-time analytics, and messaging.
• Data Format
• Format of data is used by web applications to communicate with each other. It is lightweight text-based
data interchange format, which means it is simpler to read and write.
• Below are two common data formats used in web development:
• XML: Extensible Markup Language (XML) is a markup language that defines a set of rules for
encoding documents in a format that is both human-readable and machine-readable.
• JSON: JSON or JavaScript Object Notation is a format for structuring data.
• API: API is an abbreviation for Application Programming Interface, which is a collection of
communication protocols and subroutines used by various programs to communicate between them.
• Web Protocols
Protocol Governing Web
Hypertext Transfer Protocol (HTTP):
HTTP is the foundation of data communication on the web. It is a protocol used to transfer data over the
internet, and it governs how web browsers and servers communicate with each other
Hypertext Transfer Protocol Secure (HTTPS):
HTTPS is a more secure version of HTTP that encrypts data transmitted between a web server and a web
browser. It uses SSL (Secure Sockets Layer) or TLS (Transport Layer Security) encryption to protect data from
interception and hacking
File Transfer Protocol (FTP):
FTP is a protocol used for transferring files between computers over the internet. It is commonly used to upload
and download files from web servers.
Simple Mail Transfer Protocol (SMTP):
SMTP is a protocol used for sending email over the internet. It enables email clients to send messages to mail
servers, which then forward the message to the recipient's mail server.
Post Office Protocol (POP):
POP is a protocol used for retrieving email from a mail server. It allows email clients to download messages
from the mail server and store them locally on the user's computer.
Internet Message Access Protocol (IMAP):
IMAP is a protocol used for retrieving and managing email messages. It allows email clients to access messages
stored on a mail server and synchronize changes between the server and the client.
TCP/IP and UDP:
How to develop Web Project:
Phase-I: Strategy:
1. Goals and objectives
2. Team building
3. Research and review
4. Project proposal
Phase-II: Design and specification:
1. Developing concepts
2. Content planning
3. Rough design
4. Final design
5. Build a prototype and Prototype testing
Phase-III: Production or development:
1. Coding
Phase-IV: Testing and maintenance:
1. Automation testing
2. Manual testing
Phase-V: Register with ISP:
1. Buy domain name
2. Hosting
Phase-VI: Launch
Core Java Object-oriented programming:
Java is a popular programming language that is widely used for developing desktop, web, and mobile
applications. Allow developers to create modular and reusable code.
Platform-independent: Java code can run on any platform (Windows, Mac, Linux, and others) that has a Java
Virtual Machine (JVM). Some of the key features of Java are:
Automatic memory management:
Java uses automatic memory management, which means that developers don't need to manage memory
manually. The Java Virtual Machine automatically allocates and deallocates memory.
Exception handling:
Allows developers to handle errors and exceptions effectively.
Rich API
The Java Standard Library includes APIs for file I/O, networking, database access, and more.
Multi-threading: Create applications that can perform multiple tasks simultaneously. Multi-threading can
improve application performance and responsiveness.
Security: Java has built-in security features that help protect against viruses, malware, and other security
threats.