Introduction to
Web Development
1 AC2070: Web Design & Programming
Đào Trung Kiên @ MICA Institute & Dept. of Comm. Eng., SEEE, Hanoi Univ. of Science and Technology
Course Overview
2 AC2070: Web Design & Programming
Đào Trung Kiên @ MICA Institute & Dept. of Comm. Eng., SEEE, Hanoi Univ. of Science and Technology
Introduction
Web Design and Programming (AC2070)
Structure:
Lectures
Assignments
Project
Final exam
Tools:
NodeJS
A good textcode editor:
VS Code / Sublime Text / Atom / Brackets
A standard-compliance web browser:
Chrome / Firefox / Edge
3 AC2070: Web Design & Programming
Đào Trung Kiên @ MICA Institute & Dept. of Comm. Eng., SEEE, Hanoi Univ. of Science and Technology
Course Objectives
At the end of this class, you will be able to:
Design and implement webpages using HTML
Make stylistic decisions with CSS
Create interactive webpages with JavaScript
Create dynamic websites with ExpressJS
Enhance interactive websites with AJAX
And beyond:
Understand the client-server programming model and apply
this to your designs
Speak the web programming lingo
Have fun with web development, and enjoy creating websites!
4 AC2070: Web Design & Programming
Đào Trung Kiên @ MICA Institute & Dept. of Comm. Eng., SEEE, Hanoi Univ. of Science and Technology
Contents
HTML language
Learn to compose web pages to present contents
CSS (Cascading Style Sheets)
Learn to polish web pages for better presentation
Client-side scripting
Learn to make web pages interactive with client-side JavaScript
Server-side development
Learn to program dynamic web sites with server-side
JavaScript
5 AC2070: Web Design & Programming
Đào Trung Kiên @ MICA Institute & Dept. of Comm. Eng., SEEE, Hanoi Univ. of Science and Technology
WWW (World Wide Web)
6 AC2070: Web Design & Programming
Đào Trung Kiên @ MICA Institute & Dept. of Comm. Eng., SEEE, Hanoi Univ. of Science and Technology
Definition
WWW = The Web
A system of globally accessible documents and
resources
A collection of websites and webpages stored in
web servers, that are interlinked by URLs
Not to be confused with Internet
Internet is a network
WWW is a service on Internet
AC2070: Web Design & Programming
Đào Trung Kiên @ MICA Institute & Dept. of Comm. Eng., SEEE, Hanoi Univ. of Science and Technology
html: ngôn ngữ để server hiển thị các phần tử
http: giao tiếp giữa client và server
History of WWW http - hypertext transfer protocol: giao thức truyền siêu văn bản
html - hypertext markup language: ngôn ngữ đánh dấu siêu văn bản
1989: WWW (including HTTP, HTML) invented by Timothy Berners-Lee
1991: Mosaic, first popular web browser
1994: WWW Consortium (W3C) at MIT
1995: JavaScript ➔ Interactive and dynamic webpages
1996: Google, the most popular search engine
2000: Burst of “dot-com” bubble
2002: Rise of blogs, wikis ➔ Web 2.0 = era of user-generated content
(blogs, wikis)
2003: Rise of social networks (MySpace, Facebook,…)
2005: Rise of web applications with AJAX
2014: HTML5 (location, 2D/3D graphics, media,…)
8 AC2070: Web Design & Programming
Đào Trung Kiên @ MICA Institute & Dept. of Comm. Eng., SEEE, Hanoi Univ. of Science and Technology
Demystification
Webpage (or just “page”): A document which can be
displayed in a web browser
Website (or just “site”): A collection of grouped webpages
nhiều trang web trên 1 địa chỉ gốc
and made available at a certain address
Web server: A computer (server) that hosts websites
Apache, IIS, Tomcat, nginx, ExpressJS,…
truy xuất
Web browser: A software that retrieves and displays
webpages to users
Opera, Chrome, Edge, IE, Netscape, Safari,…
9 AC2070: Web Design & Programming
Đào Trung Kiên @ MICA Institute & Dept. of Comm. Eng., SEEE, Hanoi Univ. of Science and Technology
Basic Components of WWW
Content: Information displayed by the web browser
Static: Content that doesn’t change
Dynamic: Content that varies based on various factors
Instructions: What the browser needs to do
Formatting: How the content is to be displayed
Navigation: How to travel between webpages
Others: Pop-up windows, validation, customization
Build a website = creating Content and Instructions
10 AC2070: Web Design & Programming
Đào Trung Kiên @ MICA Institute & Dept. of Comm. Eng., SEEE, Hanoi Univ. of Science and Technology
Web Standards
Web browsers and servers need to speak the same
“languages”
URL (Uniform Resource Locator): An address that helps to
locate a webpage đại chỉ 1 website
HTML (HyperText Markup Language): The markup
(formatting) language for webpages
HTTP (HyperText Transfer Protocol): A protocol (set of
communication rules) allowing web browsers to retrieve
resources from web servers
CSS, JavaScript, JSON, XML,…
11 AC2070: Web Design & Programming
Đào Trung Kiên @ MICA Institute & Dept. of Comm. Eng., SEEE, Hanoi Univ. of Science and Technology
Web Development
12 AC2070: Web Design & Programming
Đào Trung Kiên @ MICA Institute & Dept. of Comm. Eng., SEEE, Hanoi Univ. of Science and Technology
What is It?
Building and maintenance of
websites
Make websites work
Make websites work fast
Make pages look great
What do web devs need?
HTML
CSS
JavaScript
13 AC2070: Web Design & Programming
Đào Trung Kiên @ MICA Institute & Dept. of Comm. Eng., SEEE, Hanoi Univ. of Science and Technology
Front-end and Back-end Development
Client running a Server running
Web Browser Web Server Software
HTTP
Page request
HTTP
Server response
Front-end development: Back-end development:
- HTML - Web server
- CSS - Database
- Client-side scripting
Full-stack
development
14 AC2070: Web Design & Programming
Đào Trung Kiên @ MICA Institute & Dept. of Comm. Eng., SEEE, Hanoi Univ. of Science and Technology
Web Applications
Internet is more and more ubiquitous,
with very high-speed and wireless
connections
Web browsers are nowadays equipped
with powerful features (Web 2.0)
HTML5, CSS3, AJAX, REST, graphics (canvas,
WebGL, SVG), hardware accessibility
(camera, location, notification),...
➔ Web is now one of important application/service
development and distribution platforms (besides server,
desktop, mobile)
No installation needed → many advantages to users and providers
Ex: Google Maps, Gmail, MS Office 365, web games,...
15 AC2070: Web Design & Programming
Đào Trung Kiên @ MICA Institute & Dept. of Comm. Eng., SEEE, Hanoi Univ. of Science and Technology
SOA
Software distribution with Package
Model has many limitations
Low compatibility with user devices → high
software development cost
Feature, patch updates
Difficult to guarantee user activities
Difficult to assess usability, user experience
➔ Service Oriented Architecture (SOA)
Service in place of application
A service may target end users, or other services
4P: Process, Pratice, People, Platform
Ex: map, payment, storage (cloud), authentication, AI, advertisement,
user data analytics,…
16 AC2070: Web Design & Programming
Đào Trung Kiên @ MICA Institute & Dept. of Comm. Eng., SEEE, Hanoi Univ. of Science and Technology