Đề 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  
[3]. PHP tutorial online http://www.php.net/  
[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  
pdf 9 trang myanh 24780 Free
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:

  • pdfde_cuong_mon_hoc_lap_trinh_web_web_programming.pdf