8. Những đóng góp mới của đề tài
1.4.2. Công nghệ và phần mềm thiết kế website
a) ASP.NET
ASP.NET là một công nghệ có tính cách mạng dùng để phát triển các ứng dụng về mạng hiện nay cũng như trong tương lai. ASP.NET là một framework để thiết lập các ứng dụng hết sức hùng mạnh cho mạng dựa trên CLR (Common Language Runtime) chứ không phải là một ngôn ngữ lập trình.
Các đặc điểm của ASP.NET:
- ASP.NET file có phần mở rộng là .aspx.
- ASP.NET file được phân tích ngữ pháp bởi XSPISAPI.DLL. - Dùng kiểu mẫu lập trình event – driven.
- Hỗ trợ gần 25 ngôn ngữ lập trình.
- Hỗ trợ tất cả các browser và các thiết bị lưu động (mobile devices).
CLR là môi trường được dùng để quản lý sự thi hành các nguồn mã mà ta đã soạn ra và biên dịch trong các ứng dụng. Tuy nhiên khi biên dịch nguồn mã, ta lại biên dịch chúng ra thành một ngôn ngữ trung gian gọi là Microsoft Intermediate Language (MSIL). Chính MSIL trung gian này là ngôn ngữ chung cho tất cả các ngôn ngữ .NET hiện có, do đó ASP.NET cũng được biên dịch ra MSIL. Trong khi biên dịch như vậy, các ứng dụng cũng sản xuất ra những thông tin cần thiết để tự quảng cáo chính mình, ta gọi những thông tin này là metadata. Ðến khi ta chạy một ứng dụng, CLR sẽ tiếp quản và lại biên dịch nguồn mã một lần nữa ra thành ngôn ngữ gốc của máy vi tính trước khi thi hành những công tác đã được bố trí trong nguồn mã đó. Ta có thể cảm thấy những việc bận rộn sau hậu trường đó khi phải chờ đợi một khoảng thời gian cần thiết để CLR chấm dứt nhiệm vụ của nó khi lần đầu phải biên dịch và hiển thị một website.
Hình 1.4. Môi trường CLR Code in VB .NET
VB .NET Compiler
Code in VB .NET Code in VB .NET
C# Compiler Appropriate Compiler
Just-in-Time (JIT) Compiler IL (Intermediate Language) Code
Native Machine Code
Execute
The Common Language Runtime
Mọi thứ trong .NET đều là object. Các object đó được tổ chức lại thành từng nhóm riêng biệt như trong một thư viện để ta dễ dàng sử dụng. Ta gọi các nhóm như vậy là namespaces, và ta sẽ dùng những namespace này để gọi hay nhập các class cần thiết cho ứng dụng của mình.
Hình 1.5. Thư viện class của .NET
b) Ajax
Các ứng dụng Ajax phần lớn trông giống như thể chúng được đặt trên máy của người sử dụng hơn là được đặt trên một máy phục vụ thông qua Internet. Lý do là vì các trang được cập nhật nhưng không nạp lại (refresh) toàn bộ. "Mọi thao tác của người sử dụng sẽ gửi mẫu của một lời gọi JavaScript tới bộ xử lý (engine) Ajax thay vì tạo ra một yêu cầu HTTP (HTTP request)", Jesse James Garrett đã ghi như vậy trong bài luận đầu tiên định nghĩa về thuật ngữ này. "Mọi đáp ứng cho thao tác của người sử dụng sẽ không cần truy vấn tới máy phục vụ – ví dụ như việc kiểm tra một cách đơn giản sự hợp lệ của dữ liệu, sửa đổi dữ liệu trong bộ nhớ và thậm chí một vài thao tác duyệt trang – bộ xử lý Ajax tự nó đảm nhận trách nhiệm này. Nếu bộ xử lý cần gì từ máy phục vụ để đáp ứng – như khi nó gửi dữ liệu để xử lý, tải về bổ sung các mã giao diện hay nhận về dữ liệu mới – nó sẽ thực hiện các yêu cầu tới máy phục vụ một cách không đồng bộ, thông thường sử dụng XML, mà không làm gián đoạn sự tương tác của người sử dụng với ứng dụng web".
ADO.NET
Data Access Web Forms Windows Forms
XLM
Core System Classes (Threading, Serialization, Reflection, Collections, And So On)
File I/O (And So On)
Các ứng dụng truyền thống về bản chất là gửi dữ liệu từ các form, được nhập bởi người sử dụng, tới một máy phục vụ web. Máy phục vụ web sẽ trả lời bằng việc gửi về một trang web mới. Do máy phục vụ phải tạo ra một trang web mới nên mỗi lần như vậy các ứng dụng chạy chậm và "lúng túng" hơn. Mặt khác, các ứng dụng Ajax có thể gửi các yêu cầu tới máy phục vụ web để nhận về chỉ những dữ liệu cần thiết. Trên máy khách, JavaScript sẽ xử lý các đáp ứng của máy chủ. Kết quả là trang web được hiển thị nhanh hơn vì lượng dữ liệu trao đổi giữa máy chủ và trình duyệt web giảm đi rất nhiều. Thời gian xử lý của máy chủ web cũng vì thế mà được giảm theo vì phần lớn thời gian xử lý được thực hiện trên máy khách của người dùng.
Dưới đây là hình so sánh giữa ứng dụng web truyền thống và Ajax.
Hình 1.6. So sánh giữa ứng dụng web truyền thống và Ajax Web server
datastores, backend processing, legacy system
Phía server user interface Trình duyệt HTTP request http(s) transport HTML + CSS data HTTP request http(s) transport XML data Trình duyệt user interface JavaScript call HTML + CSS data Ajax engine datastores, backend processing, legacy system
Phía server
1.4.2.2. Microsoft Visual Studio 2005 và SQL Server 2005
Trong phạm vi đề tài này, chúng tôi sử dụng phiên bản Microsoft Visual Studio (VS) 2005 hỗ trợ công nghệ ASP.NET với .NET framework 2.0 làm công cụ lập trình và ngôn ngữ C# để viết sản phẩm web, đồng thời chọn hệ quản trị cơ sở dữ liệu (CSDL) SQL Server 2005 làm công cụ quản lý database của sản phẩm.
a) Microsoft Visual Studio 2005
Giống như các phiên bản VS .Net trước đây, phiên bản VS 2005 hỗ trợ rất nhiều ngôn ngữ lập trình hướng đối tượng như: C# , VB.Net, J# và ngôn ngữ lập trình "siêu mạnh" là C++.Net.
Hình 1.7. Giao diện Microsoft Visual Studio 2005
VS 2005 là bộ công cụ phát triển phần mềm tích hợp mạnh mẽ với những tính năng hấp dẫn:
- Thiết kế giao diện, hỗ trợ viết mã (coding)
+ Tăng tốc tiến trình soạn thảo code bằng việc tự động hoàn thành các tên kiểu dữ liệu, các tên hàm, các thuộc tính và giúp cho việc sửa lỗi dễ dàng, thuận lợi nhờ sự hỗ trợ IntelliSense.
+ Tiết kiệm thời gian thông qua một số tính năng sinh mã tự động trong khi lập trình như: Insert Snippet, Surround With, Refactor.
- Xây dựng ứng dụng Web nhanh chóng
Trước đây, khi tạo một dự án Web, người dùng phải xác định một thư mục ảo (vitual directory) trong máy chủ Web IIS (Internet Information Services) và khi sao
chép dự án này sang máy khác rất "mệt mỏi". Nhưng với VS 2005, việc tạo ứng dụng Web không cần những thao tác trên, và thực sự đơn giản như tạo một ứng dụng trên Windows bình thường vì:
+ VS 2005 đã đưa vào công cụ phát triển Web mới là Visual Web Developer. Công cụ này cho phép tạo ra các ứng dụng Web được viết bằng ASP.NET 2.0.
+ Cải tiến lớn trong ASP.NET 2.0 là hỗ trợ tạo Master Page và cho phép các trang khác kế thừa lại Master Page.
+ Với Visual Web Developer, có khoảng 50 điều khiển Web mới được tích hợp giúp phát triển ứng dụng Web nhanh chóng và đơn giản hơn.
- Đóng gói và triển khai ứng dụng
VS 2005 cho phép đóng gói và triển khai ứng dụng đơn giản và dễ dàng hơn. Nhờ công nghệ đóng gói và triển khai ứng dụng ClickOne mới, bạn sẽ dễ dàng triển khai các ứng dụng đó trên máy chủ Web, hoặc các mạng chia sẻ tập tin.
- Hỗ trợ ứng dụng 64 bit
Xu hướng bộ xử lý 64 bit và bộ xử lý đa nhân đang ngày càng phát triển mạnh mẽ và cũng gây khó cho các nhà phát triển phần mềm. NetFramework 2.0 cũng như Visual Studio 2005 hỗ trợ tốt và tối ưu cho tính toán 64 bit.
b) SQL Server 2005
SQL Server 2005 là hệ cơ sở dữ liệu đầy "tâm huyết" của Microsoft bởi các ưu điểm nổi bật sau:
- Nâng cao hiệu năng, độ tin cậy, khả năng lập trình đơn giản và dễ sử dụng. - Tập trung vào khả năng xử lý giao dịch trực tuyến trên diện rộng OLTP (large-scale online transactional processing), ứng dụng thương mại điện tử (e- commerce applications) và kho dữ liệu (data warehousing).
- Cung cấp thêm các dịch vụ mới như: dịch vụ báo cáo Reporting Services, Service Broker và sự thay đổi đáng kể trong Database Engine.
Hình 1.8. Giao diện SQL Server 2005
1.5. Thực trạng việc sử dụng website vào dạy học môn Hóa ở trường THPT 1.5.1. Mục đích điều tra