2 Nội dung • Giới thiệu công nghệ AJAX • Các công nghệ cấu thành AJAX • XMLHttpRequest và trao đổi dữ liệu bất đồng bộ • Ứng dụng AddressBook • Kết luận và hướng phát triển... Nội dung
Trang 1BÁO CÁO
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC
Sinh viên thực hiện : Phạm Thị Thu Duyên
Lớp : CT702 Giáo viên hướng dẫn: TS Nguyễn Ngọc Hóa
ĐỀ TÀI:
TÌM HIỂU VÀ XÂY DỰNG ỨNG DỤNG
DỰA TRÊN CÔNG NGHỆ AJAX
Trang 22
Nội dung
• Giới thiệu công nghệ AJAX
• Các công nghệ cấu thành AJAX
• XMLHttpRequest và trao đổi dữ liệu bất đồng bộ
• Ứng dụng AddressBook
• Kết luận và hướng phát triển
Trang 3Nội dung
• Các công nghệ cấu thành AJAX
• XMLHttpRequest và trao đổi dữ liệu bất đồng bộ
• Ứng dụng AddressBook
• Kết luận và hướng phát triển
• Giới thiệu công nghệ AJAX
Trang 44
Sự phát triển của Web
• 1990, Tim Berners-Lee sáng chế ra HTML=>mở ra kỷ nguyên WWW
Không có sự tương tác qua Web
• Web 1.0 và các trang web động
Các ứng dụng tương tác như eCommerce, forum…
Các công nghệ sử dụng JavaScript, ASP/ASP.NET, JSP/Servlet, PHP…
Trang 5Mô hình ứng dụng Web truyền thống
Trang 66
Mô hình tương tác đồng bộ client/server
Trang 7Nhược điểm
• Cách thức tương tác với người dùng: đồng
bộ client/server
Đợi phía server đáp ứng yêu cầu
Nạp lại toàn bộ trang web sau mỗi tương tác
• Một số rào cản khác (hoạt động qua trình duyệt…)
Trang 88
Giải pháp và công nghệ thực tế
• Chỉ cập nhật các phần bị thay đổi của trang Web
• Trao đổi dữ liệu bất đồng bộ client/server
• AJAX xuất hiện như một giải pháp
• Một công nghệ của Web 2.0
Trang 9Asynchronous JavaScript And XML
• AJAX là tập hợp của nhiều công nghệ với thế mạnh của riêng mình để tạo thành một sức mạnh mới
Thể hiện web theo chuẩn XHTML và CSS
Nâng cao tính năng động và phản hồi bằng DOM
Trao đổi và xử lý dữ liệu bằng XML và XSLT
Truy cập dữ liệu bất đồng bộ bởi XMLHttpRequest
Liên kết công nghệ bằng JavaScript
Trang 1010
Mô hình tương tác không đồng bộ với AJAX
Trang 11Nội dung
• XMLHttpRequest và trao đổi dữ liệu bất
đồng bộ
• Ứng dụng AddressBook
• Kết luận và hướng phát triển
• Các công nghệ cấu thành AJAX
• Giới thiệu công nghệ AJAX
Trang 1212
Các công nghệ cấu thành AJAX
• Cascading Style Sheet (CSS): Bảng
định kiểu xếp chồng
• Document Object Model (DOM): Mô
hình đối tượng tài liệu
• eXtensible Markup Language (XML):
Ngôn ngữ đánh dấu mở rộng
• JavaScript: Ngôn ngữ kịch bản phía client
• XMLHttpRequest
Trang 1414
Nội dung
• Giới thiệu công nghệ AJAX
• Các công nghệ cấu thành AJAX
• XMLHttpRequest và trao đổi dữ liệu bất
đồng bộ
• Ứng dụng AddressBook
• Kết luận và hướng phát triển
Trang 16cho các trình duyệt non-IE
Trang 17Mô hình ứng dụng AJAX
Trang 1818
Một số ứng dụng dùng AJAX
• Xử lý văn bản trên Net
• Giao tiếp, liên lạc
• Chia sẻ và lưu trữ file
• Bản đồ trực tuyến
Trang 19
http://maps.google.com/
Trang 2020
Nội dung
• Giới thiệu công nghệ AJAX
• Các công nghệ cấu thành AJAX
• XMLHttpRequest và trao đổi dữ liệu bất
đồng bộ
• Giới thiệu ứng dụng AddressBook
• Kết luận và hướng phát triển
Trang 2222
Các module của ứng dụng
• Module admin
• Module quản lý login/logout cho user
• Module quản lý danh mục
• Module quản lý nhóm
• Module quản lý danh sách mail
• Module quản lý các chức năng
Trang 23 Tạo và sử dụng đối tượng XMLHttpRequest
Dùng JavaScript để thao tác trên các đối
tượng DOM
Trang 2424
Kết quả ứng dụng
Trang 25Ứng dụng SimpleAddressBook
Trang 2626
So sánh
• Sau một tác động của người dùng
AddressBook: Nạp lại phần trang web bị thay đổi
SimpleAddressBook: Nạp lại toàn bộ trang web
Trang 27Nội dung
• Giới thiệu công nghệ AJAX
• Các công nghệ cấu thành AJAX
• XMLHttpRequest và trao đổi dữ liệu bất
đồng bộ
• Ứng dụng AddressBook
• Kết luận và hướng phát triển
Trang 28 Tăng tốc độ duyệt web
Xóa ranh giới giữa các ứng dụng Web và
ứng dụng Desktop
Trang 29Hướng phát triển
• Nâng cao tính cộng đồng và chia sẻ
• Xây dựng các ứng dụng tính tương tác cao với người dùng
• Thay thế ứng dụng Web truyền thống
bằng ứng dụng Web kiểu AJAX
• Cung cấp phần mềm dưới dạng các dịch
vụ Web
Trang 3030
Em xin chân thành cảm ơn!
Trang 31Kỹ thuật lập trình với AJAX
• Phía client: sử dụng các ngôn ngữ script
Thao tác các đối tượng DOM
Áp đặt giao diện với CSS
Tạo và xử lý các đối tượng XMLHttpRequest
• Phía server: sử dụng các công nghệ phía server
NET
J2EE
Trang 3232
Khó khăn trong lập trình AJAX và
giải pháp
• Lập trình phía client với ngôn ngữ Script
• Ứng dụng rất khó debug với mã nguồn được viết ở cả client và server
• Giải pháp
Hạn chế đến mức tối thiểu viết mã phía client
Sử dụng các thư viện AJAX trong ứng dụng Web
Trang 33Giới thiệu một số thư viện
Trang 34Giới thiệu về PHP
• Là một ngôn ngữ lập trình kiểu script,
chạy trên server và trả về mã HTML cho trình duyệt
Trang 35SAJAX (Simple Ajax) cho PHP
• Sajax là một Ajax framework giúp ta tạo các mã JavaScript phía trình duyệt với các ngôn ngữ khác nhau phía server
• Hiện nay Sajax cho phép dùng với ASP,
ColdFusion, Perl, PHP, Python, và Ruby
trên server