SlideShare a Scribd company logo
Languages and Tools
for
Web Programming
Mrs. Alamelu.G
Assistant professor of BCA
E.M.G Yadava Women’s College
Madurai.
History of the Web
‱ Internet (1960s)
‱ World Wide Web - WWW (1991)
‱ First Web Browser - Netscape,
1994
‱ Google, 1998
‱ Facebook, 2004
‱ Smartphones (iPhone), 2007
‱ Tablets (iPad), 2010
Web programming
Web services vs. "classical" web programming
Client vs. server programming
client: JavaScript, Java
HTML-centric vs. program-centric
HTML-centric: PHP, ASP
cgi, fast-cgi
(Java) servlet
data model: Java servlet, database
Web services vs. web programming
web services = remote procedure call
we saw SOAP
structured data (XML)
methods and responses
generally, for machine consumption
web programming  generate HTML pages
for humans
often, database-driven
replacement for IBM 3270 terminals ...
Client vs. server programming
Execute code on client:
download Java applet  self-contained
programming environment
JavaScript (aka ECMAscript):
modify and get values from HTML
("document object model" – DOM)
Execute code on server  generate document
state maintenance (HTTP stateless)
login, shopping cart, preferences
Serving HTML Pages
HTML page includes image, audio, and video files.
All of this content lives on a web server—a remote
machine often far away from Client computer.
Client use a web browser to request, retrieve, and
eventually display web content on the screen.
What is HTML?
HTML is a language for describing web
pages.
HTML stands for Hyper Text Markup
Language.
HTML is not a programming language, it is
a markup language.
A markup language is a set of markup tags.
HTML uses markup tags to describe web
pages
Structure of an HTML page
<html>
<head> information about the page </head> <body> page
contents </body>
</html>
The header describes the page and the body contains the
page's contents an HTML page is saved into a file ending
with extension .html
Common Gateway Interface (CGI)
The interface specification that defines how information can be
passed from the browsers back to the server is called the Common
Gateway Interface, (CGI).
Processing dynamic pages
1. Web browser requests dynamic page.
2.Web server finds page and passes it to application server.
3. Application server scans page for instructions and finishes page.
4. Application server passes finished page back to web server
5. Web server sends finished page to requesting browser
Web Application
A web application is a website that contains pages with partly or final
content of a page.
The final content of a page is determined only when the visitor requests a
page from the web server.
A dynamic page which is the final content of the page that have varies of
from request based on the visitor’s actions.
Web applications are built to address a variety of challenges and problems
Common gateway interface (cgi)
Earliest attempt at dynamic web content
language-independent
passes HTTP request information via
command line (ISINDEX) – rarely used
environment variables: system info + query string (GET)
request body (POST)  standard input
return HTML or XML via standard output
non-parsed headers (NPH) return complete response
SQL architecture
 library interface
 proprietary
 JDBC, ODBC
 driver that connects (via TCP) to database
 same or different host
 issue queries, get results
 modify content
 transactions
SQL basics
‱ Integer: tinyint, smallint, mediumint, int(eger),
bigint
‱ Floating point: float, double, real
‱ Decimal: decimal(m,d) (for $)
‱ Date: date, datetime, timestamp, time, year
‱ String: char(N), varchar(N), tinyblob, tinytext,
blob, text, enum, set
SQL basics
 Retrieval: SELECT field1, field2 FROM table
WHERE condition ORDER BY expression
 Insertion: INSERT table SET
field1=value1,field2=value2, ...
 Update: UPDATE table SET field1=value1,
field2=value2 WHERE expression
 Delete row: DELETE FROM table WHERE
expression
Servlet life cycleRetrieval
 server application loads ServletClass
 creates instance via no-args constructor
 servers call servlet's init() method
 server calls service(req, res) method for each
request (often, with class name as URL), possibly
concurrently
 servers calls destroy() on shutdown
HTTP requests as servlets
 HTTP method GET, PUT, POST, ...  doGet,
doPut, doPost
 subclass of HttpServlet overrides default
implementation
n-tier architecture
client tier:
receives user events (keyboard, mouse)
presentation of data
user interface
e.g., Java applets, web browser, thin client
application
application-server tier:
"business logic"  actual data processing,
algorithms
can be component-based (Java Beans)
n-tier architecture
 Data-server tier
 data storage
 relational and legacy databases
 all tiers could run on same machine, but usually
separated
 HTTP (or SOAP) from client to server
 Corba or SOAP or remote-SQL between server
tiers
 Advantages:
 independent of storage model
 simpler authentication to database
THANKING YOU

More Related Content

PPTX
Jqueryppt (1)
AndreaSmile06
 
PDF
Dynamic content generation
Eleonora Ciceri
 
PPT
Web browser architecture.87 to 88
myrajendra
 
PDF
Jsp & Ajax
Ang Chen
 
PPT
Project First presentation about introduction to technologies to be used
arya krazydude
 
PPTX
Ajax
Michael Hamilton
 
PPTX
Browsers. Magic is inside.
Devexperts
 
PDF
[WSO2Con EU 2017] Introduction to Ballerina
WSO2
 
Jqueryppt (1)
AndreaSmile06
 
Dynamic content generation
Eleonora Ciceri
 
Web browser architecture.87 to 88
myrajendra
 
Jsp & Ajax
Ang Chen
 
Project First presentation about introduction to technologies to be used
arya krazydude
 
Browsers. Magic is inside.
Devexperts
 
[WSO2Con EU 2017] Introduction to Ballerina
WSO2
 

What's hot (18)

PPTX
SilverStripe From a Developer's Perspective
ajshort
 
PDF
[WSO2Con EU 2017] Manipulating XML, JSON and SQL Data Types with Ballerina
WSO2
 
PPT
Web Services with Objective-C
Juio Barros
 
PDF
Change RelationalDB to GraphDB with OrientDB
Apaichon Punopas
 
PDF
Mojo Facets – so, you have data and browser?
Dobrica Pavlinuơić
 
PPTX
INTRODUCTION TO JSP,JSP LIFE CYCLE, ANATOMY OF JSP PAGE AND JSP PROCESSING
Aaqib Hussain
 
PPT
Deploying java beans in jsp
Priyanka Pradhan
 
PDF
Angular - Chapter 7 - HTTP Services
WebStackAcademy
 
PPTX
MuleSoft ESB - CSV File to Database
akashdprajapati
 
PDF
Introduction to Browser Internals
Siva Arunachalam
 
PDF
Java Server Pages
Eleonora Ciceri
 
PPTX
NiFi - First approach
Mickael Cassy
 
PPTX
Introduction ASP
FaTin GhaZmi
 
PPTX
Overview of java web services
Todd Benson (I.T. SPECIALIST and I.T. SECURITY)
 
PDF
AJAX - An introduction
Eleonora Ciceri
 
PPTX
AJAX
Matthew Monroe
 
SilverStripe From a Developer's Perspective
ajshort
 
[WSO2Con EU 2017] Manipulating XML, JSON and SQL Data Types with Ballerina
WSO2
 
Web Services with Objective-C
Juio Barros
 
Change RelationalDB to GraphDB with OrientDB
Apaichon Punopas
 
Mojo Facets – so, you have data and browser?
Dobrica Pavlinuơić
 
INTRODUCTION TO JSP,JSP LIFE CYCLE, ANATOMY OF JSP PAGE AND JSP PROCESSING
Aaqib Hussain
 
Deploying java beans in jsp
Priyanka Pradhan
 
Angular - Chapter 7 - HTTP Services
WebStackAcademy
 
MuleSoft ESB - CSV File to Database
akashdprajapati
 
Introduction to Browser Internals
Siva Arunachalam
 
Java Server Pages
Eleonora Ciceri
 
NiFi - First approach
Mickael Cassy
 
Introduction ASP
FaTin GhaZmi
 
Overview of java web services
Todd Benson (I.T. SPECIALIST and I.T. SECURITY)
 
AJAX - An introduction
Eleonora Ciceri
 
Ad

Similar to Languages and tools for web programming (20)

PPT
21. Application Development and Administration in DBMS
koolkampus
 
PDF
Internet programming lecture 1
Mohammed Hussein
 
PPT
HTTP and Website Architecture and Middleware
Abdul Jalil Tamjid
 
PPTX
3. WEB TECHNOLOGIES.pptx B.Pharm sem 2 CAP
Vedika Narvekar
 
PDF
Making Of PHP Based Web Application
Sachin Walvekar
 
PPT
Data programing
Narayan Awasthi
 
PPT
6 3 tier architecture php
cefour
 
PPTX
Web Database
idroos7
 
PPT
WEB-DBMS A quick reference
Marc Dy
 
PPTX
Servlet & jsp
Subhasis Nayak
 
DOCX
Unit 1st and 3rd notes of java
Niraj Bharambe
 
PPT
02 intro
babak mehrabi
 
PPTX
Web application development ( basics )
Chirag Nag
 
PPTX
1 Intro of web technology and sciences .pptx
angelinjeba6
 
PDF
Java part 3
ACCESS Health Digital
 
PDF
15.web document types.pdf bdgjrjdhdhsgbdidh
KomaliGuptha1
 
PDF
Sencha Web Applications Come of Age
bastila
 
PDF
Webdevelopment
Giacomo Antonino Fazio
 
PPT
Introduction To Website Development
zaidfarooqui974
 
PDF
SERVER SIDE SCRIPTING
Prof Ansari
 
21. Application Development and Administration in DBMS
koolkampus
 
Internet programming lecture 1
Mohammed Hussein
 
HTTP and Website Architecture and Middleware
Abdul Jalil Tamjid
 
3. WEB TECHNOLOGIES.pptx B.Pharm sem 2 CAP
Vedika Narvekar
 
Making Of PHP Based Web Application
Sachin Walvekar
 
Data programing
Narayan Awasthi
 
6 3 tier architecture php
cefour
 
Web Database
idroos7
 
WEB-DBMS A quick reference
Marc Dy
 
Servlet & jsp
Subhasis Nayak
 
Unit 1st and 3rd notes of java
Niraj Bharambe
 
02 intro
babak mehrabi
 
Web application development ( basics )
Chirag Nag
 
1 Intro of web technology and sciences .pptx
angelinjeba6
 
Java part 3
ACCESS Health Digital
 
15.web document types.pdf bdgjrjdhdhsgbdidh
KomaliGuptha1
 
Sencha Web Applications Come of Age
bastila
 
Webdevelopment
Giacomo Antonino Fazio
 
Introduction To Website Development
zaidfarooqui974
 
SERVER SIDE SCRIPTING
Prof Ansari
 
Ad

More from Alamelu (7)

PPTX
Software Engineering- Understanding Requirements
Alamelu
 
PPTX
Advanced Machine Learning- Introduction to Machine Learning
Alamelu
 
PPTX
The Switch Statement,Loops,Array,Functions
Alamelu
 
PPTX
Introduction to learn and Python Interpreter
Alamelu
 
PPTX
Line drawing algorithm in Computer Graphics.pptx
Alamelu
 
PPTX
Line Clipping in Comeputer Graphics.pptx
Alamelu
 
PPTX
OUTPUT PRIMITIVES.pptx
Alamelu
 
Software Engineering- Understanding Requirements
Alamelu
 
Advanced Machine Learning- Introduction to Machine Learning
Alamelu
 
The Switch Statement,Loops,Array,Functions
Alamelu
 
Introduction to learn and Python Interpreter
Alamelu
 
Line drawing algorithm in Computer Graphics.pptx
Alamelu
 
Line Clipping in Comeputer Graphics.pptx
Alamelu
 
OUTPUT PRIMITIVES.pptx
Alamelu
 

Recently uploaded (20)

PDF
DevOps & Developer Experience Summer BBQ
AUGNYC
 
PDF
Software Development Company | KodekX
KodekX
 
PDF
Software Development Methodologies in 2025
KodekX
 
PDF
REPORT: Heating appliances market in Poland 2024
SPIUG
 
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
AVTRON Technologies LLC
 
PDF
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
PDF
Revolutionize Operations with Intelligent IoT Monitoring and Control
Rejig Digital
 
PPTX
Smart Infrastructure and Automation through IoT Sensors
Rejig Digital
 
PDF
NewMind AI Monthly Chronicles - July 2025
NewMind AI
 
PDF
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
PDF
The Evolution of KM Roles (Presented at Knowledge Summit Dublin 2025)
Enterprise Knowledge
 
PDF
CIFDAQ's Token Spotlight: SKY - A Forgotten Giant's Comeback?
CIFDAQ
 
PDF
Make GenAI investments go further with the Dell AI Factory - Infographic
Principled Technologies
 
PPTX
Comunidade Salesforce SĂŁo Paulo - Desmistificando o Omnistudio (Vlocity)
Francisco Vieira JĂșnior
 
PDF
Event Presentation Google Cloud Next Extended 2025
minhtrietgect
 
PDF
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
PDF
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
PDF
How Onsite IT Support Drives Business Efficiency, Security, and Growth.pdf
Captain IT
 
PPTX
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
DevOps & Developer Experience Summer BBQ
AUGNYC
 
Software Development Company | KodekX
KodekX
 
Software Development Methodologies in 2025
KodekX
 
REPORT: Heating appliances market in Poland 2024
SPIUG
 
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
AVTRON Technologies LLC
 
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
Revolutionize Operations with Intelligent IoT Monitoring and Control
Rejig Digital
 
Smart Infrastructure and Automation through IoT Sensors
Rejig Digital
 
NewMind AI Monthly Chronicles - July 2025
NewMind AI
 
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
The Evolution of KM Roles (Presented at Knowledge Summit Dublin 2025)
Enterprise Knowledge
 
CIFDAQ's Token Spotlight: SKY - A Forgotten Giant's Comeback?
CIFDAQ
 
Make GenAI investments go further with the Dell AI Factory - Infographic
Principled Technologies
 
Comunidade Salesforce SĂŁo Paulo - Desmistificando o Omnistudio (Vlocity)
Francisco Vieira JĂșnior
 
Event Presentation Google Cloud Next Extended 2025
minhtrietgect
 
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
How Onsite IT Support Drives Business Efficiency, Security, and Growth.pdf
Captain IT
 
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 

Languages and tools for web programming

  • 1. Languages and Tools for Web Programming Mrs. Alamelu.G Assistant professor of BCA E.M.G Yadava Women’s College Madurai.
  • 2. History of the Web ‱ Internet (1960s) ‱ World Wide Web - WWW (1991) ‱ First Web Browser - Netscape, 1994 ‱ Google, 1998 ‱ Facebook, 2004 ‱ Smartphones (iPhone), 2007 ‱ Tablets (iPad), 2010
  • 3. Web programming Web services vs. "classical" web programming Client vs. server programming client: JavaScript, Java HTML-centric vs. program-centric HTML-centric: PHP, ASP cgi, fast-cgi (Java) servlet data model: Java servlet, database
  • 4. Web services vs. web programming web services = remote procedure call we saw SOAP structured data (XML) methods and responses generally, for machine consumption web programming  generate HTML pages for humans often, database-driven replacement for IBM 3270 terminals ...
  • 5. Client vs. server programming Execute code on client: download Java applet  self-contained programming environment JavaScript (aka ECMAscript): modify and get values from HTML ("document object model" – DOM) Execute code on server  generate document state maintenance (HTTP stateless) login, shopping cart, preferences
  • 6. Serving HTML Pages HTML page includes image, audio, and video files. All of this content lives on a web server—a remote machine often far away from Client computer. Client use a web browser to request, retrieve, and eventually display web content on the screen.
  • 7. What is HTML? HTML is a language for describing web pages. HTML stands for Hyper Text Markup Language. HTML is not a programming language, it is a markup language. A markup language is a set of markup tags. HTML uses markup tags to describe web pages
  • 8. Structure of an HTML page <html> <head> information about the page </head> <body> page contents </body> </html> The header describes the page and the body contains the page's contents an HTML page is saved into a file ending with extension .html
  • 9. Common Gateway Interface (CGI) The interface specification that defines how information can be passed from the browsers back to the server is called the Common Gateway Interface, (CGI).
  • 10. Processing dynamic pages 1. Web browser requests dynamic page. 2.Web server finds page and passes it to application server. 3. Application server scans page for instructions and finishes page. 4. Application server passes finished page back to web server 5. Web server sends finished page to requesting browser
  • 11. Web Application A web application is a website that contains pages with partly or final content of a page. The final content of a page is determined only when the visitor requests a page from the web server. A dynamic page which is the final content of the page that have varies of from request based on the visitor’s actions. Web applications are built to address a variety of challenges and problems
  • 12. Common gateway interface (cgi) Earliest attempt at dynamic web content language-independent passes HTTP request information via command line (ISINDEX) – rarely used environment variables: system info + query string (GET) request body (POST)  standard input return HTML or XML via standard output non-parsed headers (NPH) return complete response
  • 13. SQL architecture  library interface  proprietary  JDBC, ODBC  driver that connects (via TCP) to database  same or different host  issue queries, get results  modify content  transactions
  • 14. SQL basics ‱ Integer: tinyint, smallint, mediumint, int(eger), bigint ‱ Floating point: float, double, real ‱ Decimal: decimal(m,d) (for $) ‱ Date: date, datetime, timestamp, time, year ‱ String: char(N), varchar(N), tinyblob, tinytext, blob, text, enum, set
  • 15. SQL basics  Retrieval: SELECT field1, field2 FROM table WHERE condition ORDER BY expression  Insertion: INSERT table SET field1=value1,field2=value2, ...  Update: UPDATE table SET field1=value1, field2=value2 WHERE expression  Delete row: DELETE FROM table WHERE expression
  • 16. Servlet life cycleRetrieval  server application loads ServletClass  creates instance via no-args constructor  servers call servlet's init() method  server calls service(req, res) method for each request (often, with class name as URL), possibly concurrently  servers calls destroy() on shutdown
  • 17. HTTP requests as servlets  HTTP method GET, PUT, POST, ...  doGet, doPut, doPost  subclass of HttpServlet overrides default implementation
  • 18. n-tier architecture client tier: receives user events (keyboard, mouse) presentation of data user interface e.g., Java applets, web browser, thin client application application-server tier: "business logic"  actual data processing, algorithms can be component-based (Java Beans)
  • 19. n-tier architecture  Data-server tier  data storage  relational and legacy databases  all tiers could run on same machine, but usually separated  HTTP (or SOAP) from client to server  Corba or SOAP or remote-SQL between server tiers  Advantages:  independent of storage model  simpler authentication to database