DỊCH VỤ BLOG
Xuất phát từ những lợi ích mà blog mang lại cho giáo dục và đào tạo, để thúc đẩy phát triển việc ứng dụng mạng xã hội Blog vào đào tạo ở Việt Nam em đã có ý tưởng xây dựng một website hướng dẫn sử dụng blog để blog ngày càng phổ biến và dễ dàng hơn với tất cả giáo viên, học sinh.
4.1 Giới thiệu công nghệ sử dụng
4.1.1 Công nghệ ASP.NET
a. Kiến thức .NET framework
Trước đây và cả ngày nay, trong lĩnh vực phần mềm có rất nhiều ngôn ngữ lập trình được sử dụng để phát triển như Basic, Java, Pascal, C/C++, Visual Basic, C# ... Mỗi ngôn ngữ đều có những ưu điểm và nhược điểm riêng, chẳng hạn như Java có lợi thế phát triển ứng dụng mạng, ứng dụng trên Mobile và độc lập hệ điều hành ( Write One – Run Every Where); Visual Basic tỏ ra dễ học và dễ phát triển các ứng dụng Winform; C# vượt trội bởi sự kết hợp sức mạnh của C++ và sự dễ dàng của Visual Basic… Những ưu điểm có tính đặc thù của từng ngôn ngữ là điều đã được khẳng định. Tuy nhiên, điều mà ai cũng thấy rõ là rất khó để có thể tận dụng được sức mạnh của tất cả các ngôn ngữ lập trình trong một dự án phầm mềm, chẳng hạn không thể hoặc rất khó khăn để việc một ứng dụng có sử dụng đồng thời cả ngôn ngữ Visual Basic và Java với Delphi … Cũng do sự khác biệt giữa các ngôn ngữ lập trình mà việc tiếp cận hay chuyển đổi sang ngôn ngữ lập trình mới sẽ tốn rất nhiều thời gian (tuy rằng về tư tưởng và nguyên lý có tương tự nhau). Do đó, đòi hỏi phải có một cách tiếp cận sao cho tối ưu nhất, vừa đảm bảo tốn ít chi phí chuyển đổi vừa đảm bảo nhiều người có thể tham gia lập trình, đồng thời ứng dụng phải hoạt động tốt trong môi trường mạng Internet. Đó chỉnh là lý do để Microsoft cho ra công nghệ phát triển phầm mêm mới .NET.
Microsoft .NET là một nền tảng (platform) phát triển ứng dụng mới và hoàn chỉnh nhất từ trước tới nay. Sự ra đời của Microsoft .NET có tính cách mạng, nó đem đến cho các nhà lập trình một phong cách phát triển phầm mềm đột phá, khắc phục hầu hết các hạn chế trước đây của các ngôn ngữ lập trình. Phiên bản .NET đầu tiên (version 1.0) được Microsoft đưa ra thị trường vào năm 2001.
.NET framework
.Net framework là một platform làm đơn giản việc phát triển ứng dụng trong môi trường phân tán của Internet. .Net framework có 2 thành phần chính là Common Language Runtime (CRL) và thư viện lớp .NET framework.
Base Class Library: Là tập các thư viện chứa các lớp cơ bản để sử dụng trong tất cả các ngôn ngữ .NET
ADO.NET: Là tập các thư viện chuyên dành cho thao tác với cơ sở dữ liệu. ASP.NET: Các thư viện dành cho phát triển các ứng dụng Web (webform). Windows Form: Các thư viện dành cho phát triển các ứng dụng Windows (winform).
Common Language Specification: Phần này có nhiệ, vụ đặc tả ngôn ngữ chung để các chương trình viết trên các ngôn ngữ lập trình khác nhau phải tuân theo. Nói cách khác, biên dịch các chương trình viết trên các ngôn ngữ lập trình khác nhau về một ngôn ngữ thống nhất chung (Common Language).
b. Công nghệ ASP.NET
Trước hết, tên đầy đủ của ASP.NET là Active Server Pages .NET (.NET ở đây là .NET framwork). ASP.NET là một nền tảng ứng dụng web, được phát triển và cung cấp bởi Microsoft, cho phép những người lập trình tạo ra những trang web động, những ứng dụng web và những dịch vụ web. Lần đầu tiên được đưa ra trên thị trường vào tháng 2 năm 2002 cùng với phiên bản 1.0 của .NET framework, là công nghệ nối tiếp của Microsoft Active Server Pages (ASP). ASP.NET được biên dịch dưới dạng Common Language Runtime (CLR) là môi trường thực thi chuẩn trên nền .Net
Tại sao lựa chọn ASP.NET
.NET Framework và các ứng dụng của nó đã và đang tạo một cuộc cách mạng kỹ thuật trong công nghệ tin học, thay đổi tận gốc rễ các kiểu mẫu lập trình hay phát triển, triển khai mạng trên thế giới và do đó tạo một vận hội mới đáp ứng mọi yêu cầu khẩn thiết cho các ngành nghề kỹ thuật và thương mại hiện nay. ASP.NET chính là một trong những ứng dụng quan trọng nhất để phát triển và triển khai mạng một cách dễ dàng chưa từng thấy từ trước đến nay.
Công nghệ ASP.NET sẽ hướng các lập trình viên Web vào quỹ đạo của chúng bằng các lý do sau:
- Độc lập ngôn ngữ (Language Independence): ASP.NET cho phép bạn biên dịch không phục thuộc ngôn ngữ, thực hiện tối ưu việc kết hợp các ngôn ngữ khác nhau. Bạn có thể dùng VB.NET, C# hay kể cả C++ để xây dựng trang ASP.NET.
- Dễ phát triển (Simplified Development): ASP.NET cho phép bạn khai báo và viết mã đơn giản.
- Tách mã và nội dung thành hai phần khác nhau: Trong mỗi Web form bạn có thể khai báo một số thủ tục trên tập tin với các tên mở rộng .cs, trang này được gọi là “code behinh the page” chứa đựng nội dung mã nguồn. Trong khi Web form chứa các đối tượng trực quan mang tính giao diện người dùng.
- Tính mềm dẻo và khả năng nâng cấp (Improved Scalability): Cho phép chúng ta quản lý trạng thái của các Session và tạo Form trên một ứng dụng sử dụng hệ thống nhiều Server.
- Hỗ trợ nhiều trình khách (Support for multi client): ASP.NET Controls có thể tự động nhận diện khách để hiển thị cho phù hợp. Chính vì vậy bạn không cần quan tâm đến việc phải viết mã như thế nào để nhận dạng loại trình duyệt của trình khách (client) khi người sử dụng triệu gọi trang ASP.NET.
- Xử lý phía trình chủ (Server Side Processing): ASP.NET thay đổi trang web như một đối tượng trên Server Side, nhiều thuộc tính, phương thức đối tượng và biến cố sử dụng để tự động tạo ra nội dung trong mã nguồn bằng phát biểu “Runnat=Server”.
- Thay vì sử dụng mô hình tích hợp DLL, COM, DCOM trước đây với công nghệ ASP.NET bạn có thể sử dụng dịch vụ tương tự nhưng đơn giản hơn đó là Web Services.
Ưu điểm của ASP.NET
Developer Productivity Easy Programming Model:
ASP.NET giúp ta phát triển và triển khai các ứng dụng về mạng trong một thời gian kỷ lục vì nó cung cấp cho ta một kiểu mẫu lập trình dễ dàng và gọn nhất. Ngoài các trang ASP.NET làm việc với mọi trình duyệt (browsers) hiện nay như Internet Explorer (IE), Netscape, Opera, AOL,… mà không cần phải thay đổi các nguồn mã rất vất vả như trước.
Flecible Language Option:
ASP.NET có khả năng lưu trữ một kết quả chung trong phân bộ memory của trang để gửi giải đáp cho cùng một yêu cầu từ nhiều khách hàng khác nhau và nhờ đó không những tiết kiệm được sự lặp đi lặp lại công tác thi hành của một trang web mà còn gia tăng hiệu suất một cách ngoạn mục do giới hạn tối đa việc chất vấn các cơ sở dữ liệu rất tốn nhiều thời gian.
.NET Outform J2EE:
Trong việc đối đầu với nhau về hiệu suất (performance) và scalability với cùng một ứng dụng phát triển giữa Sun’ Java Pet Store J2EE và ASP.NET thì ASP.NET không những nhanh vượt trội hơn J2EE đến 28 lần (khoảng 2700%), nguồn mã lại ít hơn nhiều (khoảng 1/4 nguồn mã của J2EE) mà còn dùng bộ xử lý (processor) chỉ khoảng 1/6 lần so với việc sử dụng của J2EE.
Mobile Web Service Support:
ASP.NET Moblie Conntrols còn giúp ta phát triển và triển khai mạng nhắm vào thị trường những cell phone hay PDA với gần 80 Moblie Web Servide được cung cấp trong .NET framework. Bạn chỉ cần lập trình cho ứng dụng của bạn rồi để cho Moblie Control đó tự động phát sinh ra những nguồn mã như WAP/WML, HTML hay IMode thích hợp với từng loại thiết bị (device) riêng biệt.
Để thấy rõ hơn những ưu điểm của ASP.NET so với các sản phẩm khác ta tiến hành so sánh giữa ASP.NET và một ngôn ngữ mạnh trước đó là ASP.
- Việc viết mã trong ASP gặp phải khó khăn khi mà code và mã HTML lẫn lộn với nhau, việc dò tìm và gỡ lỗi không dễ dàng. ASP.NET đã khắc phục một các ngoạn mục nhược điểm này bằng việc tách mã lập trình và mã HTML thành các tập tin riêng biệt, việc viết mã trở nên vô cùng rõ ràng, nhờ đó nâng cao khả năng phát triển ứng dụng.
- Các đối tượng trong ASP.NET được cải tiến rất nhiều so vứi ASP với những thuộc tính và phương thức mới. Một số đối tượng được ánh xạ thành các thuộc tính của các lớp ngoài (ví dụ đối tượng HttpRequest, HttpResponse được ánh xạ thành các thuộc tính của đối tượng Page) giúp cho người lập trình có thể truy cập trực tiếp các đối tượng này giảm nhẹ gánh nặng viết code.
- ASP.NET sử dụng cơ chế chỉ biên dịch một lần đầu tiên khách với các trang ASP mỗi lần người dùng triệu gọi chúng lại phải được thông dịch lại toàn bộ mặc dù không có sự thay đổi về cấu trúc. Điều này làm cho tốc độ lướt web của các
trang ASP.NET được cải thiện rất nhiều so với ASP.
- Trong ASP, bạn chỉ có hai lựa chọn ngôn ngữ lập trình là VBScript hay Microsoft Jscript bằng cách khai báo chỉ dẫn language ở đầu trang. Trong khi đó với ASP.NET bạn có thể có nhiều lựa chọn hơn với các ngôn ngữ được hỗ trợ bởi Net Framework như C#, VB Basic.Net, Jscript… được cung cấp bởi Microsoft.
- Khi làm việc với cơ sở dữ liệu, mô hình ASP sử dụng đối tượng ADO tạo một liên kết vĩnh viễn từ ứng dụng đến cơ sở dữ liệu gốc trong khi đó ASP.NET sử dụng đối tượng ADO.NET, đối tượng này chỉ tạo một liên kết tạm thời đến chỉ những phần cơ sở dữ liệu cần sử dụng. Chỉ khi nào cần cập nhật, chỉnh sửa nó mới liên kết lại với cơ sở dữ liệu chính. Chính vì lý do này việc truy xuất dữ liệu với ASP.NET nhanh hơn nhiều so với ASP. Bên cạnh đó đối tượng ADO có tính bảo mật chưa cao, không hỗ trợ định dạng XML, trong khi chuẩn XML đang dần trở thành một chuẩn dùng định dạng dữ liệu trong các ứng dụng mạng và Internet.