Đề cương môn học Lập trình Web (Web programming)
Đại Học Quốc Gia TP.HCM
Trường Đại Học Bách Khoa
Khoa KH&KT Máy Tính
Vietnam National University – HCMC
Ho Chi Minh City University of Technology
Faculty of Computer Science and Engineering
Đề cương môn học
LẬP TRÌNH WEB
(Web Programming)
Số tín chỉ
Số tiết
3 (2.2.5)
Tổng: 60
MSMH CO3049
LT: 30
TH:
TN: 30
BTL/TL: x
Môn ĐA, TT, LV
Tỉ lệ đánh giá
BT: 10%
TN: 10%
KT: 0
BTL/TL:40% Thi: 40%
Hình thức đánh giá
Môn tiên quyết
- Thi: tự luận, 90 phút
Môn học trước
Môn song hành
CTĐT ngành
Khoa học máy tính; Kỹ thuật máy tính
Đại học
Trình độ đào tạo
Cấp độ môn học
3
Ghi chú khác
1. Mô tả môn học
• Cung cấp cho sinh viên những kiến thức cần thiết về lập trình web, tạo nền tảng cho việc phát
triển các ứng dụng trên nền web.
• Giúp sinh viên có đủ khả năng thiết kế và xây dựng một website cơ bản.
Course Description
• To provide students with fundamental knowledge on web programming as a foundation for
development of applications running in web
• To help students with neccesary skills to design and build a basic website
2. Tài liệu học tập
[1]. Web Programming Step by Step, by Marty Stepp, Jessica Miller, and Victoria Kirst, 2nd
Edition, 2012
[4]. SEO – Search Engine Optimization Bible, Jerri L. Ledford, Wiley Publishing, Inc, 2008
[5]. Learning PHP, MySQL, Javascript, CSS and HTML5, A step-by-step guide to creating dynamic
websites, Robin Nixon, 3rd Edition, 2014
3. Mục tiêu môn học
• Học để hiểu biết cách thiết kế một website, bao gồm thiết kế giao diện, thiết kế tương tác, thiết
kế cơ sở dữ liệu, thiết kế các chức năng cơ bản của một website.
• Nắm và vận dụng kiến thức cơ bản về các loại ngôn ngữ lập trình web và các framework, công
cụ, bao gồm PHP, Javascript, Ajax, Jquery, JASON, Bootstrap, …
• Ứng dụng các kiến thức đã học vào việc xây dựng một website đáp ứng được các tiêu chí như
dễ sử dụng, mang tính cạnh tranh cao, bảo mật, thứ hạng cao trong các công cụ tìm kiếm, …
Course Goals
• Learn how to design a website including interface design, interaction design, database design
and design of key functionalities of a website.
• Learn and use web programming languages, frameworks, tools including PHP, Javascript, Ajax,
Jquery, JASON, Bootstrap.
• Apply knowledge into building a website that meets many requirements such as usability,
competition, security, high ranking in search engines, …
4. Chuẩn đầu ra môn học
STT
Chuẩn đầu ra môn học
CDIO
L.O.1
Mô tả được các khái niệm cơ bản về Internet và website, hiểu được cơ chế
vận hành một website, hiểu vòng đời phát triển một website
L.O.1.1 Hiểu được các khái niệm về Internet và website
L.O.1.2 Nắm được thông tin cơ bản về cơ chế hoạt động của một website,
những ngôn ngữ lập trình phổ biến dùng để xây dựng website
L.O.1.3 Hiểu vòng đời phát triển một website
L.O.2
L.O.3
Áp dụng kiến thức đã học vào việc phân tích cấu trúc một website
L.O.2.1 Hiểu được các thẻ trong cấu trúc một trang web
L.O.2.2 Dùng được các thẻ để xây dựng được một trang web cơ bản
L.O.2.3 Học được cách tổ chức sắp xếp bên trong một website
Vận dụng kiến thức đã học vào việc thiết kế giao diện website, thiết kế
tương tác và cơ sở dữ liệu
L.O.3.1 Học và sử dụng được cách trình bày dữ liệu cho một website, bao
gồm câu chữ, hình ảnh, âm thanh, video, …
L.O.3.2 Thiết kế được giao diện website
L.O.3.3 Thiết kế tương tác người dùng với website
L.O.3.4 Thiết kế cơ sở dữ liệu cho website
L.O.3.5 Nắm vững các ngôn ngữ lập trình web vào việc xây dựng website
Đánh giá website đã xây dựng
L.O.4
L.O.4.1 Đánh giá website theo tiêu chí khả năng sử dụng (usability)
L.O.4.2 Đánh giá website theo tiêu chí bảo mật
L.O.4.3 Đánh giá website theo thứ hạng trong các công cụ tìm kiếm
Bảo mật website
L.O.5
L.O.6
L.O.5.1 Áp dụng kiến thức về bảo mật để giảm thiểu nguy cơ tấn công
L.O.5.2 Bảo trì và giám sát website trước các nguy cơ tấn công
Tối ưu hóa website để cải thiện thứ hạng trong các công cụ tìm kiếm
L.O.6.1 Nắm các quy tắc cơ bản được dùng để xếp hạng website trong các
công cụ tìm kiếm
L.O.6.2 Áp dụng các quy tắc xếp hạng nhằm cải thiện thứ hạng website
Course Outcomes
No
Course Outcomes
CDIO
L.O.1
Describe fundamental issues on Internet and website, understand the way
website operates, understand website development life cycle
L.O.1.1 Understand fundamental issues of Internet and website
L.O.1.2 Understand the way website operates, understand website
development life cycle, get to know programming languages for website
creation.
L.O.1.3 Understand website development life cycle
Apply knowledge to analyze structure of a website
L.O.2.1 Understand tags used inside the programming code of a website
L.O.2.2 Used the tags to create a basic webpage
L.O.2.3 Learn how to organize folders and files in a webserver hosting
Apply knowledge to interface design, interaction design and database
design
L.O.2
L.O.3
L.O.3.1 Learn how to present data inside a webpage, including text,
images, audio, video, …
L.O.3.2 Design interface of a website
L.O.3.3 Design interaction of a user to a website
L.O.3.4 Design database for a website
L.O.3.5 Apply knowledge of programming languages into buiding a
website
L.O.4
Evaluate the website built
L.O.4.1 Evaluate the website based on usability criteria
L.O.4.2 Evaluate the website based on security criteria
L.O.4.3 Evaluate the website based on ranking in search engines
Secure the website
L.O.5
L.O.6
L.O.5.1 Apply security procedures to secure the website
L.O.5.2 Maintain and monitoring the website
Optimize the website to improve ranking in search engines
L.O.6.1 Understand basic rules to rate a website used by search engines
L.O.6.2 Apply the mentioned rules to improve website ranking in search
engines
5. Hướng dẫn cách học - chi tiết cách đánh giá môn học
•
•
•
•
•
•
Tham gia các giờ giảng trên lớp: hơn 80% số giờ
Đọc các tài liệu giảng dạy và tài liệu tham khảo
Tự học và làm việc theo nhóm
Thực hành: 20%
Bài tập lớn: 40% kết quả
Thi cuối kỳ: 40%, tự luận – 90p
Learning Strategies & Assessment Scheme:
•
•
•
•
•
•
Attending lectures: >80% lecture times
Reading textbooks and references
Self-study and working in group
Lab practices: 20%
Assignments: 40%
Final Exam: 40%, writing test – 90 minutes
6. Dự kiến danh sách Cán bộ tham gia giảng dạy
TS. Nguyễn Đức Thái
7. Nội dung chi tiết
Tuần
Nội dung
Chuẩn đầu ra chi tiết
Hoạt động
dạy và học
Hoạt
động
đánh giá
Chương 1. Giới thiệu
L.O.1.1 Hiểu được các khái
niệm về Internet và website.
Thi
Giảng dạy và
trao đổi trên lớp
1
Bài tập lớn
•
•
Giới thiệu môn học
Tổng quan về Internet và World
Wide Web
L.O.1.2 Nắm được thông tin
cơ bản về cơ chế hoạt động
của một website, những ngôn
ngữ lập trình phổ biến dùng để
xây dựng website.
Đọc sách, tìm
hiểu trên
Internet
Chương 2. Vòng đời phát triển L.O.1.3 Hiểu vòng đời phát
Thi
Bài tập lớn
Giảng dạy và
trao đổi trên lớp
2
3
website
triển một website
Đọc sách, tìm
hiểu trên
Internet
Chương 3. Thiết kế web
Thi
Bài tập lớn
Thực hành
L.O.3.1 Học và sử dụng được Giảng dạy và
cách trình bày dữ liệu cho một trao đổi trên lớp
website, bao gồm câu chữ,
•
Thiết kế xem người dùng là trung
tâm
Đọc sách, tìm
hiểu trên
Internet
hình ảnh, âm thanh, video, …
L.O.3.2 Thiết kế được giao
diện website
•
•
Thiết kế giao diện
Thiết kế tương tác
L.O.3.3 Thiết kế tương tác
người dùng với website
Thực hành trên
lớp
Chương 4. HTML5
Thi
Bài tập lớn
Thực hành
L.O.2.1 Hiểu được các thẻ Giảng dạy và
4
5
6
trong cấu trúc một trang web
trao đổi trên lớp
•
•
HTML5 cơ bản
Các phần tử HTML5
o Liệt kê danh sách
o Lập bảng
Đọc sách, tìm
hiểu trên
Internet
L.O.2.2 Dùng được các thẻ để
xây dựng được một trang web
cơ bản
o …
Thực hành trên
lớp
L.O.3.2 Thiết kế được giao Giảng dạy và
Chương 5. Dùng CSS3
Thi
Bài tập lớn
Thực hành
diện website
trao đổi trên lớp
•
•
CSS3 cơ bản
Cách dùng CSS3, cú pháp CSS3
L.O.3.3 Thiết kế tương tác
người dùng với website
Đọc sách, tìm
hiểu trên
Internet
Thực hành trên
lớp
Chương 6. Cách layout trang web
L.O.3.1 Học và sử dụng được
cách trình bày dữ liệu cho một
website, bao gồm câu chữ,
hình ảnh, âm thanh, video, …
Thi
Bài tập lớn
Thực hành
Giảng dạy và
trao đổi trên lớp
•
•
Tổng quan về layout
Layout trang web
Đọc sách, tìm
hiểu trên
Internet
L.O.3.2 Thiết kế được giao
diện website
Thực hành trên
lớp
L.O.3.3 Thiết kế tương tác
người dùng với website
Tuần
Nội dung
Chuẩn đầu ra chi tiết
Hoạt động
dạy và học
Hoạt
động
đánh giá
Thi
Bài tập lớn
Thực hành
Chương 7. PHP
L.O.3.5 Nắm vững các ngôn
ngữ lập trình web vào việc xây
dựng website
Giảng dạy và
trao đổi trên lớp
7
•
•
Những vấn đề cơ bản phía Server
Cú pháp PHP
Đọc sách, tìm
hiểu trên
Internet
Thực hành trên
lớp
Chương 8. Forms
Thi
Bài tập lớn
Thực hành
L.O.2.1 Hiểu được các thẻ Giảng dạy và
8
trong cấu trúc một trang web
trao đổi trên lớp
•
•
Cơ bản về form
Cách tạo form và xử lý dữ liệu
form
Đọc sách, tìm
hiểu trên
Internet
L.O.2.2 Dùng được các thẻ để
xây dựng được một trang web
cơ bản
Thực hành trên
lớp
L.O.3.5 Nắm vững các ngôn
ngữ lập trình web vào việc xây
dựng website
Chương 9. Javascript
L.O.3.3 Thiết kế tương tác
người dùng với website
Thi
Bài tập lớn
Thực hành
Giảng dạy và
trao đổi trên lớp
9
•
•
Tổng quan về Javascript
Cú pháp Javascript
L.O.3.5 Nắm vững các ngôn
ngữ lập trình web vào việc xây
dựng website
Đọc sách, tìm
hiểu trên
Internet
Thực hành trên
lớp
Chương 10. DOM, AJAX, JQUERY, L.O.3.3 Thiết kế tương tác
Thi
Bài tập lớn
Thực hành
Giảng dạy và
10
11
12
13
JSON
Giới thiệu một số công cụ hỗ trợ
việc xây dựng website
người dùng với website
trao đổi trên lớp
•
L.O.3.5 Nắm vững các ngôn
ngữ lập trình web vào việc xây
dựng website
Đọc sách, tìm
hiểu trên
Internet
Thực hành trên
lớp
Giảng dạy và
Chương
Scriptaculous
11.
Biểu
mẫu
và L.O.2.3 Học được cách tổ
chức sắp xếp bên trong một
website
Thi
Bài tập lớn
Thực hành
trao đổi trên lớp
•
•
Prototype
Đọc sách, tìm
hiểu trên
Internet
Scriptaculous
L.O.3.5 Nắm vững các ngôn
ngữ lập trình web vào việc xây
dựng website
Thực hành trên
lớp
Giảng dạy và
Chương 12. Kiểm soát sự kiện (event) L.O.3.3 Thiết kế tương tác
Thi
Bài tập lớn
Thực hành
trong lập trình web
người dùng với website
trao đổi trên lớp
•
•
•
•
•
•
Event Object
L.O.3.5 Nắm vững các ngôn
ngữ lập trình web vào việc xây
dựng website
Đọc sách, tìm
hiểu trên
Internet
Mouse Events
Keyboard và Text Events
Form Events
Page Events
Thực hành trên
lớp
Giảng dạy và
Timer Events
Chương 13. Cơ sở dữ liệu quan hệ và L.O.3.4 Thiết kế cơ sở dữ liệu
Thi
Bài tập lớn
Thực hành
SQL
cho website
trao đổi trên lớp
•
Tổng quan về cơ sở dữ liệu
L.O.3.5 Nắm vững các ngôn
Tuần
Nội dung
Chuẩn đầu ra chi tiết
Hoạt động
dạy và học
Hoạt
động
đánh giá
ngữ lập trình web vào việc xây Đọc sách, tìm
•
•
•
SQL
dựng website
hiểu trên
Internet
Truy vấn đa bảng
Truy vấn cơ sở dữ liệu trong PHP
Thực hành trên
lớp
Chương 14. Cookies và Sessions
L.O.3.3 Thiết kế tương tác
người dùng với website
Thi
Bài tập lớn
Thực hành
Giảng dạy và
trao đổi trên lớp
14
15
•
•
•
Cơ bản về Cookie
Lập trình với Cookies
Sessions
L.O.3.5 Nắm vững các ngôn
ngữ lập trình web vào việc xây
dựng website
Đọc sách, tìm
hiểu trên
Internet
Thực hành trên
lớp
Giảng dạy và
Chương 15. Bảo mật web và SEO
L.O.5.1 Áp dụng kiến thức về
bảo mật để giảm thiểu nguy cơ
tấn công
Thi
Bài tập lớn
Thực hành
trao đổi trên lớp
•
•
Tổng quan về bảo mật website
Tối ưu hóa cho các công cụ tìm
kiếm
Đọc sách, tìm
hiểu trên
Internet
L.O.5.2 Bảo trì và giám sát
website trước các nguy cơ tấn
công
Thực hành trên
lớp
L.O.6.1 Nắm các quy tắc cơ
bản được dùng để xếp hạng
website trong các công cụ tìm
kiếm
L.O.6.2 Áp dụng các quy tắc
xếp hạng nhằm cải thiện thứ
hạng website
Week
Contents
Course Outcome
Evaluation
1
Chapter 1. Introduction
L.O.1.1 Understand
fundamental issues of Internet
and website
L.O.1.2 Understand the way
website operates, understand
website development life
cycle, get to know
programming languages for
website creation.
Final Exam,
Assignment
Lab
Lecture and
Discussion in
class
•
•
Course Introduction
Internet and World Wide Web
Read books,
Search in
Internet
2
3
Chapter 2. Web software
development life cycle
L.O.1.3 Understand website
development life cycle
Final Exam,
Assignment
Lab
Lecture and
Discussion in
class
Read books,
Search in
Internet
Lecture and
Discussion in
class
Chapter 3. Web design
L.O.3.1 Learn how to present
data inside a webpage,
including text, images, audio,
video, …
L.O.3.2 Design interface of a
website
Final Exam,
Assignment
Lab
•
•
•
User-centered Design
Interface design
Interaction design
Read books,
Search in
L.O.3.3 Design interaction of
Week
Contents
Course Outcome
a user to a website
Evaluation
Internet
Lab
4
Chapter 4. HTML5
L.O.2.1 Understand tags used
inside the programming code
of a website
L.O.2.2 Used the tags to create
a basic webpage
Final Exam,
Assignment
Lab
Lecture and
Discussion in
class
•
•
Basic HTML5
More HTML5 Elements
o Lists
o Tables
Read books,
Search in
Internet
o Quotations
o …
•
Web Standards
Lab
o W3C HTML Validator
o Web Page Metadata
5
Chapter 5. CSS3 for styling
L.O.3.2 Design interface of a
website
L.O.3.3 Design interaction of
a user to a website
Final Exam,
Assignment
Lab
Lecture and
Discussion in
class
•
•
•
Basic CSS3
CSS3 Properties
More CSS3 syntax
Read books,
Search in
Internet
Lab
6
Chapter 6. Page Layout
L.O.3.1 Learn how to present
data inside a webpage,
including text, images, audio,
video, …
L.O.3.2 Design interface of a
website
Final Exam,
Assignment
Lab
Lecture and
Discussion in
class
•
•
•
•
•
Styling Page Sections
Introduction to Layout
Floating Elements
Sizing and Positioning
…
Read books,
Search in
Internet
L.O.3.3 Design interaction of
a user to a website
Lab
7
Chapter 7. PHP
L.O.3.5 Apply knowledge of
programming languages into
buiding a website
Final Exam,
Assignment
Lab
Lecture and
Discussion in
class
•
•
Server-side Basics
PHP Syntax
Read books,
Search in
Internet
Lab
8
Chapter 8. Forms
L.O.2.1 Understand tags used
inside the programming code
of a website
L.O.2.2 Used the tags to create
a basic webpage
L.O.3.5 Apply knowledge of
programming languages into
buiding a website
Final Exam,
Assignment
Lab
Lecture and
Discussion in
class
•
•
•
•
•
Form Basics
Form Controls
Submitting Data
Processing Form Data in PHP
…
Read books,
Search in
Internet
Lab
9
Chapter 9. Javascript
L.O.3.3 Design interaction of
a user to a website
L.O.3.5 Apply knowledge of
programming languages into
buiding a website
Final Exam,
Assignment
Lab
Lecture and
Discussion in
class
•
•
Key Javascript Concepts
Javascript Syntax
Read books,
Search in
Internet
Lab
10
Chapter 10. DOM, AJAX, JQUERY, L.O.3.3 Design interaction of
JSON a user to a website
Final Exam,
Assignment
Lecture and
Discussion in
Week
Contents
Course Outcome
Evaluation
L.O.3.5 Apply knowledge of
programming languages into
buiding a website
Lab
class
•
•
•
•
•
Global DOM Objects
DOM Elements Objects
The DOM Tree
Read books,
Search in
Internet
Ajax Concepts
Using XMLHTTPREQUEST to
Fetch Data
Lab
•
•
XML
JSON
Chapter
11
12
13
14
15
11.
Prototype
and L.O.2.3 Learn how to organize
folders and files in a
Final Exam,
Assignment
Lab
Lecture and
Discussion in
class
Scriptaculous
webserver hosting
•
•
Prototype
L.O.3.5 Apply knowledge of
programming languages into
buiding a website
Scriptaculous
Read books,
Search in
Internet
Lab
Chapter 12. Events
Event-handling
L.O.3.3 Design interaction of
a user to a website
L.O.3.5 Apply knowledge of
programming languages into
buiding a website
Final Exam,
Assignment
Lab
Lecture and
Discussion in
class
•
o The Event Object
o Mouse Events
o Keyboard and Text Events
o Form Events
o Page Events
Read books,
Search in
Internet
o Timer Events
Lab
Chapter 13. Relational Database and L.O.3.4 Design database for a
SQL
Final Exam,
Assignment
Lab
Lecture and
Discussion in
class
website
L.O.3.5 Apply knowledge of
programming languages into
buiding a website
•
•
•
•
Database Basics
SQL
Read books,
Search in
Internet
Multi-table Queries
Querying a Database in PHP
Lab
Chapter 14. Cookies and Sessions
L.O.3.3 Design interaction of
a user to a website
L.O.3.5 Apply knowledge of
programming languages into
buiding a website
Final Exam,
Assignment
Lab
Lecture and
Discussion in
class
•
•
•
Cookie Basics
Programming with Cookies
Sessions
Read books,
Search in
Internet
Lab
Chapter 15. Web Security and Search L.O.5.1 Apply security
Engine Optimization (SEO)
Final Exam,
Assignment
Lab
Lecture and
Discussion in
class
procedures to secure the
website
•
•
Web Security
L.O.5.2 Maintain and
monitoring the website
L.O.6.1 Understand basic
rules to rate a website used by
search engines
SEO Strategies
Read books,
Search in
Internet
L.O.6.2 Apply the mentioned
rules to improve website
ranking in search engines
Lab
8. Thông tin liên hệ
Bộ môn/Khoa phụ trách Bộ môn Hệ Thống và Mạng Máy Tính
Văn phòng
Nhà A3, Khoa Khoa học và Kỹ thuật Máy tính
268 Lý Thường Kiệt, P.14, Q.10, Thành phố Hồ Chí Minh
84-8 38 64 72 56, ext. 5840
Điện thoại
Giảng viên phụ trách
Email
TS. Nguyễn Đức Thái
Tp.Hồ Chí Minh, ngày 09 tháng 12 năm 2015
TRƯỞNG KHOA
CHỦ NHIỆM BỘ MÔN
TS. Nguyễn Đức Thái
CB PHỤ TRÁCH LẬP ĐỀ CƯƠNG
PGS.TS. Thoại Nam
TS. Nguyễn Đức Thái
Bạn đang xem tài liệu "Đề cương môn học Lập trình Web (Web programming)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
de_cuong_mon_hoc_lap_trinh_web_web_programming.pdf

