24/05/2018, 23:34

Gioi thiệu về asp.net

Ta phải công nhận một điều là .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 (Information Technology), thay đổi tận gốc rễ các kiểu mẫu lập trình hay phét triển và triển khai mạng trên ...

Ta phải công nhận một điều là .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 (Information Technology), thay đổi tận gốc rễ các kiểu mẫu lập trình hay phét triển và 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 cũng như vạch một hướng đi vững chắc và lâu dài cho tương lai tin học. 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ừ xưa đến nay. Hãy lắng nghe chính Microsoft nói về ASP.NET như thế nào:

“ASP.NET is a revolutionary programming frramework that enables the rapid development of powerful web applications and services. Part of the Microsoft .NET Platform, it provides the easiest and most scalable way to develop, deploy and run distributed web applications that can target any browser or any application.”

Chúng ta cùng tìm hiểu những đặc tính của ASP.NET:

- Easy Programming Model:

ASP.NET giúp chúng 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 gàng nhất. Ngoài ra, các trang ASP.NET còn làm việc với mọi browsers hiện nay như Internet Explorer (IE), Netscape, Opera, AOL…mà không cần đổi tới đổi lui các nguồn mã vật vã như trước.

- Flexible Language Options:

Không như ASP kiểu cổ điển chỉ giới hạn với VBScripts and JScripts, ASP.NET yểm trợ trên 25 ngôn ngữ lập trình (dĩ nhiên ngoài các ngôn ngữ mới thiết lập đã cài sẵn yểm trợ .NET framework như là VB.NET, C# và JScript.NET còn có MC++.NET, Smalltalk.NET, COBOL.NET, Eiffel.NET, Perl.NET, Component Pascal.NET, Mercury.NET, Oberon.NET, Python.NET…).

- Great Tool Support:

Mặc dù ta có thể chỉ dùng đến Notepad để triển khai các trang ASP.NET nhưng Visual Studio.NET giúp năng suất triển khai mạng thêm phần hiệu quả vì ta có thể quan sát các kế hoạch của ta dễ dàng hơn khi phác họa các thành phần của ASP.NET bằng hình ảnh với ASP.NET Web Forms hay Services theo phương pháp “drag-drop-doubleclick” quen thuộc của nền Windows. Hơn nữa, còn yểm trợ ta trong việc phát hiện và loại bỏ các lỗi sai một cách rất thuận lợi trong khi phát triển các ứng dụng về mạng (support for debugging and deploying ASP.NET Web applications).

- Rich Class Framework:

Nhờ nền tảng vững vàng và tài nguyên phong phú .NET Framework với hơn 5000 classes bao gồm đủ thứ như XML, data access, file upload, regular expressions, transactions, message queuing, SMTP mail, … nên việc thiết kế các đặc tính trong một ứng dụng trở nên nhẹ nhàng và thoải mái hơn xưa rất nhiều.

- Compile execution:

ASP.NET không những chạy nhanh hơn ASP cổ điển gấp 5 lần mà còn có thể duy trì kiểu mẫu cập nhật gọi là kiểu mẫu “just hit save”, nghĩa là ASP.NET tự động dò tìm mọi sự thay đổi và compile files khi cần thiết cũng như lưu trữ kết quả compile đó để cung ứng dịch vụ cho những yêu cầu tiếp theo sau, nhờ vậy ứng dụng của bạn luôn luôn được cập nhật hóa và chạy với tốc độ nhanh.

- Rich output caching:

ASP.NET có khả năng lưu trữ một kết quả chung trong bộ phận 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 ( eliminating the need to query the datab ase on every request ) rất tốn nhiều thời gian.

- .NET Outperforms J2EE:

Trong việc đối đầu 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's 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%), nguoonfmaxlaij it hơn nhiều (khoảng ¼ 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 processor của J2EE.

- Memory Leak, DeadLock và Crash protection:

ASP.NET cũng có khả năng dò tìm và phục hồi (detects and recovers) những trở ngại nghiêm trọng như deadlocks hay bộ nhớ bị rỉ để đảm bảo ứng dụng của bạn luôn luôn sẵn sàng khi dùng mà không làm cản trở việc cung ứng dịch vụ cần thiết thường lệ.

- Simple application deployment:

ASP.NET đơn giản hóa việc triển khai ứng dụng mạng, do đó biến việc triển khai toàn bộ ứng dụng trở nên dễ dàng và thuận tiện hơn hẳn trước kia vì bây giờ ta chỉ cần sao (với XCOPY) và lưu trữ ở server chứ không cần phải chạy chương trình “regsrv32” để đăng ký bất cứ thành phần nào cả, và thêm nữa khi cần lưu trữ những yếu tố phụ cần thiết cho việc thiết lập hay bố trí các ứng dụng, ta chỉ cần lưu trữ nó vào trong một hồ sơ dưới dạng XML là đủ.

- Dynamic update of running application:

ASP.NET cho phép ta tự động cập nhật hóa các thành phần đã compiled (compiled components) mà không cần phải khởi động lại các Web server.

- Easy Migration Path:

Ta không cần phải du nhập những ứng dụng được phát triển và triển khia bằng ASP cổ điển hiện có vào ASP.NET vì ASP.NET có thể chạy song song với ASP ở cùng một Internet Information Server (IIS) trong nền windows 2000 hay windowx XP. Các ứng dụng cũ vẫn được chạy hết sức thoải mái với ASP.DLL trong khi ASP.NET sẽ xử lý các ứng dụng mới. Ngoài ra, ASP.NET còn cho phép bạn dùng lại những thành phần thương mại hiện nay kiểu COM cổ điển trong các ứng dụng của nó.

- XML Web Services:

Dịch vụ về mạng với XML cũng cho phép bạn truyền đạt (communicate) và chia sẻ các dữ kiện xuyên qua mạng Internet dễ dàng hơn các SOAP client mà không hề phân biệt đối xử các hệ điều hành hay ngôn ngữ lập trình khác nhau (regardless of OS or programming language). Nhờ đó, ta không cần phải học thêm hay đào sâu các kiến thức về Networking, XML hay SOAP, ...

- Mobile Web Service Support:

Thêm nữa, ASP.NET Mobile Controls 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 hơn 80 Mobile Web Services đượ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 phó mặc cho Mobile Controls đó tự động phát sinh ra những nguồn mã WAP/WML, HTML hay iMode thích hợp với từng loại thiết bị riêng biệt.

Trước hết, họ tên của ASP.NET là Active Server Pages .NET (.NET dây là .NET framework). Nói đơn giản và ngắn gọn thì 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 is a revolutionary technology for developing web applications). Lưu ý ở chỗ ASP.NET là một phương pháp tổ chức hay khung tổ chức (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. Ngôn ngữ lập trình được dùng để diễn đạt ASP.NET là VB.NET (Visual Basic .NET) và VB.NET chỉ là một trong 25 ngôn ngữ .NET hiện nay được dùng để phát triển các trang ASP.NET mà thôi.

Tuy mang họ tên gần giống như ASP cổ điển nhưng ASP.NET không phải là ASP. Ta sơ lược ở đây một vài khác biệt giữa ASP.NET và ASP để ta có một khái niệm tổng quát.

ASP.NET được phác thảo lại từ số không, nó được thay đổi tận gốc rễ và phát triển phù hợp với yêu cầu hiện nay cũng như vạch một hướng đi vững chắc cho tương lai tin học. Lý do chính là vì Microsoft đã quá chán nản trong việc thêm thắt và kết hợp những công cụ mới vào các kiểu mẫu lập trình hay thiết kế mạng theo kiểu cổ điển nên Microsoft nghĩ rằng tốt nhất là nên làm một kiểu mẫu hoàn toàn mới thay vì vá víu chỗ này chỗ nọ vào ASP. Đó là chưa kể tới nhiều phát minh mới ra đời sau này dựa trên những khái niệm mới mẻ theo xu hướng phát triển hiện nay của công nghệ tin học (Information Technology) cần được đưa vào kiểu mẫu phát triển mới đó. ASP.NET cung cấp một phương pháp hoàn toàn khác biệt với ASP.

ASP đã và đang thi hành sứ mạng được giao cho nó để phát triển mạng một cách tốt đẹp. Vậy thì tại sao ta cần phải đổi mới hoàn toàn? Lý do đơn giản là vì ASP đã không còn đáp ứng đủ nhu cầu hiện nay trong lĩnh vực phát triển mạng của công nghệ tin học. ASP được thiết kế riêng biệt và nằm ở tầng phía trên hệ điều hành Windows và Internet Information Server do đó các công dụng của nó hết sức rời rạc và giới hạn.

Trong khi đó, ASP.NET là một cơ cấu trong các cơ cấu của hệ điều hành Windows dưới dạng nền hay khung .NET. Như vậy ASP.NET không những có thể dùng các object của các ứng dụng cũ mà còn có thể sử dụng tất cả mọi tài nguyên Windows có một cách dễ dàng.

Ta có thể tóm tắt đại khái sự thay đổi như sau:

Tập tin của ASP.NET (ASP.NET file) có extension là .ASPX, còn tập tin của ASP là .ASP

Tập tin của ASP.NET (ASP.NET file) được phân tích ngữ pháp bởi XSPISAPI.DLL. Còn tập tin của ASP được phân tích bởi i ASP.DLL.

ASP.NET là kiểu mẫu lập trình phát động bằng sự kiện (event driven), còn các trang ASP được thi hành theo tuần tự từ trên xuống dưới.

ASP.NET sử dụng trình biên dịch (compiled code) nên rất nhanh, còn ASP dùng trình thông dịch (interpreted code) do đó hiệu suất và tốc độ cũng thua kém hẳn.

ASP.NET yểm trợ gần 25 ngôn ngữ lập trình mới với .NET và chạy trong môi trường biên dịch (compiled environment), còn ASP chỉ chấp nhận VBScript và JavaScript nên ASP chỉ là một scripted language trong môi trường thông dịch (in the interpreter environment). Không những vậy, ASP.NET còn kết hợp nhuần nhuyễn với XML (Extensible Markup Language) để vận chuyển các thông tin qua mạng.

ASP.NET yểm trợ tất cả các browser và quan trọng hơn nữa là yểm trợ các thiết bị lưu động (mobile devices). Chính các thiết bị lưu động, mà mỗi ngày càng phổ biến, đã khiến việc dùng ASP trong phát triển mạng nhằm vươn tới thị trường mới đó trở nên vô cùng khó khăn.

0