ĐẶT VẤN ĐỀ 1.1 Mục tiêu đề tài Thế giới ngày nay với sự phát triển vượt bậc của công nghệ thông tin thực sự đã làm thay đổi đáng kể lối sống nhân loại. Trên nền tảng Internet đã phát triển rộng khắp hiện nay, giải trí trực tuyến giờ đây đã và đang thực sự trở thành một lĩnh vực sôi động và xu hướng phát triển trong thế kỷ XXI. Đặc biệt đối với các nước phát triển như Việt Nam thì đây chính là chìa khóa cho chúng ta tiếp thu nền tri thức thế giới. Điểm mạnh của Internet là thông qua nền tảng mạng máy tính, ngoài khả năng thực hiện các công việc hiệu quả, trao đổi thông tin nhanh chóng, mà còn là một trong những ứng dụng vào giải trí như nghe nhạc hay xem phim trực tuyến.2 Phương hướng giải quyết Các vấn đề cần giải quyết trong luận văn được thể hiện 2 chương sau: Phần 1: Tìm hiểu nghiên cứu công cụ ASP.NET và Window Media Services.
Lập trình web bằng ASP. Tìm hiểu các tính năng trong Window Media Services, cũng trong phần này tìm hiểu về ngôn ngữ được sử dụng cho lập trình mạng rất phổ biến ưu việt hiện nay là Lập trình bằng ASP. Phần 2: Xây dựng trang web nghe nhạc trực tuyến. Phần này là thiết kế và cài đặt trang web nghe nhạc trực tuyến dựa trên Window Media Services và ASP.
Đỗ Nguyên Huy - Trần Duy Minh Trang 1 Hiện thực Website nghe nhạc trực tuyến GVHD: Ths Ninh Xuân Hương CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Công nghệ ASP.1 Tổng quan về ASP.1 Tổng quan về lập trình ứng dụng Web Ứng dụng Web là hệ thống phức tạp, dựa trên nhiều yếu tố: Phần cứng, phần mềm, giao thức, ngôn ngữ và thành phần giao diện. Hai thành phần cơ bản của ứng dụng Web: HTTP (giao thức trao đổi tài nguyên) và HTML (ngôn ngữ xây dựng trang Web).1 HTTP và HTML – Nền móng của lập trình Web HTTP (Hypertext Transfer Protocol) Kỹ thuật cơ bản của lập trình ứng dụng Web, đó là giao thức cho phép các máy tính trao đổi thông tin với nhau qua mạng máy tính. HTTP được xác định qua URLs(Uniform Resource Locators), với cấu trúc chuỗi có định dạng như sau: http: //<host>[: port][<path>[?<query>]] Sau tiền tố http: //, chuỗi URL sẽ chứa tên host hay địa chỉ IP của máy Server (có thể có số cổn đi kèm), tiếp theo là đường dẫn đến tập tin Server được yêu cầu. Tùy chọn sau cùng là tham số, còn được gọi là query string (chuỗi tham số / chuỗi truy vấn).
HTML (Hypertext Markup Language) Trang Web HTML là một tập tin văn bản được viết bằng ngôn ngữ HTML, ngôn ngữ này còn được biết đến với tên gọi: ngôn ngữ đóng dấu văn bản. Ngôn ngữ HTML sử dụng các ký hiệu qui định sẵn (được gọi là tag) để trình bày nội dung văn bản. Nội dung + định dạng = kết quả hiển thị 2.2 Tìm hiểu các mô hình ứng dụng Mô hình ứng dụng 2 lớp Đây là mô hình đơn giản, khá phổ biến của một ứng dụng phân tán. Trong mô hình này, việc sử dụng xử lý dữ liệu được thực hiện trên Database Server, việc nhận và hiển thị dữ liệu được thực hiện ở Client.
Ưu điểm: Đỗ Nguyên Huy - Trần Duy Minh Trang 2 Hiện thực Website nghe nhạc trực tuyến GVHD: Ths Ninh Xuân Hương • Dữ liệu tập trung đảm bảo được đồng bộ. • Dữ liệu được chia sẻ cho nhiều người dùng. Khuyết điểm: • Các xử lý tra cứu và cập nhật dữ liệu được thực hiện ở Database Server, việc nhận kết quả và hiển thị phải được thực hiện ở Client, khó khăn trong vấn đề bảo trì và nâng cấp. • Khối lượng dữ liệu truyền trên mạng lớn, chiếm dụng đường truyền thêm gánh nặng cho Database Server.
Mô hình ứng dụng 3 lớp Mô hình 2 lớp phần nào đáp ứng được nhu cầu khắt khe của một ứng dụng phân tán, tuy nhiên khi khối lượng dữ liệu lớn, ứng dụng đòi hỏi nhiều xử lý phức tạp, số người dùng tăng, mô hình 2 lớp không thể đáp ứng được. Mô hình 3 lớp sử dụng thêm Application Server giữ nhiêm vụ tương tác giữa Client và Database Server, giảm bớt các xử lý trên Database Server, tập trung các xử lý nhận và hiển thị dữ liệu tại Application Server. Ưu điểm: • Hỗ trợ nhiều dùng. • Giảm bớt xử lý cho Client, nên không yêu cầu máy tính ở Client có cấu hình mạnh.
• Xử lý nhận và hiển thị dữ liệu tập trung tại Application Server, nên dễ quản lý bảo trì và nâng cấp. • Xử lý truy cập dữ liệu tập trung tại Database Server. Khuyết điểm: • Phải sử dụng thêm một Application Server, nên tăng thêm chi phí.2 Giới thiệu về ASP.Net Flatform bao gồm .Net Framework và những công cụ được dùng để xây dựng, phát triển ứng dụng và dịch vụ ASP.Net là bộ phần mềm được dùng để xây dựng và phát triển các ứng dụng bao gồm các ngôn ngữ lập trình: C++.NET, Visual Basic. Đỗ Nguyên Huy - Trần Duy Minh Trang 3 Hiện thực Website nghe nhạc trực tuyến GVHD: Ths Ninh Xuân Hương Tất cả các ngôn ngữ này được xây dựng trên .Net Flatform, nên ta thấy cú pháp cơ bản của những ngôn ngữ này tương tự nhau.Net Framework Hệ điều hành Cung cấp các chức năng xây dựng ứng dụng.
Với vai trò quản lý và thi hành ứng dụng .Net Framework cung cấp các lớp đối tượng (Class) để ta có thể gọi và thi hành các chức năng mà đối tượng đó cung cấp, tuy nhiên lời gọi có được “hưởng ứng ” hay không còn tùy vào khả năng của hệ điều hành của ta. Các chức năng đơn giản như hiển thị hộp thoại thông báo (MessageBox) sẽ được .Net Framework sử dụng các hàm của API của Windows. Chức năng phức tạp hơn như sử dụng các Component sẽ yêu cầu Windows phải cài đặt Microsoft Transaction Server (MTS) hay các chức năng trên Web cần cài đặt như IIS. Common Language Runtime Là thành phần kết nối giữa các phần khác trong .Net Framework với hệ điều hành.
CRL giữ vai trò quản lý việc thi hành các ứng dụng viết bằng .Net trên Windows. CRL sẽ thông dịch các lời gọi từ chương trình cho Windows thi hành, đảm bảo ứng dụng không chiếm dụng và sử dụng tràn lan tài nguyên của hệ thống. Nó cũng không cho phép các lệnh nguy hiểm thi hành. Các chức năng này được thực thi bởi các thành phần bên trong CRL như Class loader, Just In Time compiler,… Bộ thư viện các đối tượng Một số bộ thư viện sau: Base Class library - thư viện các lớp cơ sở.NET và XML.
Tìm hiểu về ASP.NET và những ưu điểm của ASP.NET là gì? ASP.NET là kỹ thuật lập trình và phát triển ứng dụng Web phía Server (Server- site) dựa trên nền tảng của Microsoft. Đỗ Nguyên Huy - Trần Duy Minh Trang 4 Hiện thực Website nghe nhạc trực tuyến GVHD: Ths Ninh Xuân Hương ASP.NET sử dụng kỹ thuật lập trình phía Server, mã lệnh phía Server sẽ được biên dịch và thi hành tại Web Server. Sau khi được Server đọc, biên dịch và thi hành, kết quả tự động được chuyển sang HTML/JavaScript/CSS và trả về cho Client. Tất cả các xử lý lệnh ASP.NET đều được thực hiện tại Server và do đó gọi là kỹ thuật lập trình ở phía Server.NET cho phép ta lựa chọn ngôn ngữ mà ta yêu thích: Visual Basic.Net, J#, C#,… Trang ASP.NET được biên dịch chạy trước.
Thay vì phải đọc và thông dịch mỗi khi trang Web yêu cầu, ASP.NET biên dịch những trang Web động thành những tập tin DLL mà server có thể thi hành nhanh chóng và hiệu quả. Yếu tố này là một bước nhảy vọt đáng kể so với kỹ thuật thông dịch cua ASP. 9 Những ưu điểm của của ASP.NET - Hỗ trợ mạnh mẽ bộ thư viện phong phú và đa dạng. - ASPX và ASP có thể có cùng hoạt động trong một ứng dụng.
- Sử dụng phong cách lập trình mới code behind. - Kiến trúc lập trình giống ứng dụng trên window. - Hỗ trợ quản lý trạng thái của các control, hỗ trợ cơ chế cache. - Tự động phát sinh mã HTML cho các Server Control tương ứng với từng loại Brower.
-Triển khai cài đặt: Không cần lock, không cần DLL, cho phép nhiều hình thức cấu hình ứng dụng. - Hỗ trợ quản lý ở mức toàn cục.2 Web Server Control 2.1 HTML Control Điều khiển HTML (tag HTML) trong ASP.NET có thể xem như những chuỗi văn bản bình thường. Để có thể được sử dụng lập trình ở phía Server ta gán runat=”Server” cho những điều khiển HTML đó. Những điều khiển HTML có thuộc tính runat=”Server” gọi là HTML Server Control.
Đỗ Nguyên Huy - Trần Duy Minh Trang 5 Hiện thực Website nghe nhạc trực tuyến GVHD: Ths Ninh Xuân Hương 2.NET Web Control ASP.NET Page Đây là thành phần chính của giao diện, là nơi chứa các điều khiển được sử dụng để thể hiện nội dung trang Web đến người dùng. Bao gồm các sự kiện: • Init: sự kiện Page_Init xảy ra đầu tiên khi trang Web được yêu cầu. • Load nơi đặt phần lớn các xử lý, giá trị khởi động cho trang Web được yêu cầu. • PreRender: khi trang Web chuẩn bị được trả về cho Client.
• Unload: đối lập sự kiện Page_Init. • Các thuộc tính: • IsPostBack: thuộc tính luận lý, giá trị của thuộc tính này cho biết trạng thái của trang Web khi được Load, nếu là Load đầu tiên giá trị của thuộc tính này là False, thường được sử dụng trong các sự kiện Page_Load để kiểm tra trạng thái trang Web. • SmartNavigation: là thuộc tính luận lý giá trị mặc định ban đầu là false.3 Các đối tượng trong ASP.NET Chúng ta sẽ tìm hiểu các đối tượng được dùng để xây dựng, phát triển và quản lý ứng dụng Web. Thông qua những đối tượng này, chúng ta có thể ghi nhận những yêu cầu từ Client, quản lý thông tin từ người dùng, cấu hình và bảo mật cho ứng dụng.1 Đối tượng Request, Respone 2.1 Đối tượng Respone Sử dụng để giao tiếp với Client, quản lý và điều phối thông tin từ Web Server đến các trình duyệt của người dùng.
Bao gồm các phương thức: • Write: in ra một chuỗi trên trang Web là phương thức chủ lực trong các ứng dụng Web sử dụng ASP 3.0 khi cần gửi kết quả từ Server cho Client. • Redirect: gửi yêu cầu từ Web Browser truy cập đến một địa chỉ khác. Đỗ Nguyên Huy - Trần Duy Minh Trang 6 Hiện thực Website nghe nhạc trực tuyến GVHD: Ths Ninh Xuân Hương 2.2 Đối tượng Request Dùng nhận thông tin từ trình duyệt của người dùng gửi thông tin về cho Server. Bao gồm các phương thức: • QueryString: HTTP được xác định qua URLs với cấu trúc chuỗi có định dạng như sau: http: //<host>[: port][<path>[?