Ðề tài: Ajax
View Single Post
Old 05-11-2006, 03:53 PM   #5
Hồ sơ
MarsNIIT
1/2 bán cầu bắc cô đơn
 
MarsNIIT's Avatar
 
Tham gia ngày: Sep 2006
Số bài viết: 1,334
Tiền: 25
Thanks: 151
Thanked 659 Times in 380 Posts
MarsNIIT is on a distinguished road
Default Ðề: Ajax

1. CGI
Giải pháp đầu tiên để làm các trang Web động là Common Gateway Interface (CGI). CGI cho phép tạo các chương tŕnh chạy khi người dùng gửi các yêu cầu. Giả sử khi cần hiển thị các các mục để bán trên Web site – với một CGI script ta có thể truy nhập cơ sở dữ liệu sản phẩm và hiển thị kết quả. Sử dụng các form HTML đơn giản và các CGI script, có thể tạo các “cửa hàng” ảo cho phép bán sản phẩm cho khách hàng qua một tŕnh duyệt. CGI script có thể được viết bằng một số ngôn ngữ từ Perl cho đến Visual Basic.
Tuy nhiên, CGI không phải là cách an toàn cho các trang Web động. Với CGI, người khác có thể chạy chương tŕnh trên hệ thống. V́ thế có thể chạy các chương tŕnh không mong muốn gây tổn hại hệ thống. Nhưng dù vậy, cho đến hôm nay th́ CGI vẫn c̣n được sử dụng.

2. Applet
Tháng 5/1995, John Gage của hăng Sun và Andressen (nay thuộc Netscape Communications Corporation) đă công bố một ngôn ngữ lập tŕnh mới có tên Java. Netscape Navigator đă hỗ trợ ngôn ngữ mới này, và một con đường mới cho các trang Web động được mở ra, kỷ nguyên của applet bắt đầu.

Applet cho phép các nhà phát triển viết các ứng dụng nhỏ nhúng vào trang Web. Khi người dùng sử dụng một tŕnh duyệt hỗ trợ Java, họ có thể chạy các applet trong tŕnh duyệt trên nền máy ảo Java Virtual Machine (JVM). Dù rằng applet làm được nhiều điều song nó cũng có một số nhược điểm: thường bị chặn bởi việc đọc và ghi các file hệ thống, không thể tải các thư viện, hoặc đôi khi không thể thực thi trên phía client. Bù lại những hạn chế trên, applet được chạy trên một mô h́nh bảo mật kiểu sandbox bảo vệ người dùng khỏi các đoạn mă nguy hiểm.

Có những lúc applet được sử dụng rất nhiều, nhưng nó cũng có những vấn đề nảy sinh: đó là sự phụ thuộc vào máy ảo Java JVM, các applet chỉ thực thi khi có môi trường thích hợp được cài đặt phía client, hơn nữa tốc độ của các applet là tương đối chậm v́ thế applet không phải là giải pháp tối ưu cho Web động.

3. JavaScript
Cùng thời gian này, Netscape đă tạo ra một ngôn ngữ kịch bản gọi là JavaScript. JavaScript được thiết kế để việc phát triển dễ dàng hơn cho các nhà thiết kế Web và các lập tŕnh viên không thành thạo Java. (Microsoft cũng có một ngôn ngữ kịch bản gọi là VBScript). JavaScript ngay lập tức trở thành một phương pháp hiệu quả để tạo ra các trang Web động.
Việc người ta coi các trang như là một đối tượng đă làm nảy sinh một khái niệm mới gọi là Document Object Model (DOM). Lúc đầu th́ JavaScript và DOM có một sự kết hợp chặt chẽ nhưng sau đó chúng được phân tách. DOM hoàn toàn là cách biểu diễn hướng đối tượng của trang Web và nó có thể được sửa đổi với các ngôn ngữ kịch bản bất kỳ như JavaScript hay VBScript.
Tổ chức World Wide Web Consortium (W3C) đă chuẩn hóa DOM, trong khi European Computer Manufacturers Association (ECMA) phê duyệt JavaScript dưới dạng đặc tả ECMAScript.

4. JSP/Servlet, ASP và PHP
Cùng với Java, Sun đồng thời đưa ra một công nghệ mới gọi là servlet. Các đoạn mă Java sẽ không chạy phía client như với applet; chúng sẽ được chạy trên một ứng dụng phía server. Servlet cũng đồng thời phục vụ các CGI script. Servlet là một bước tiến lớn, nó đưa ra một thư viện hàm API trên Java và một thư viện hoàn chỉnh để thao tác trên giao thức HTTP.
JavaServer Page (JSP) là một công nghệ lập tŕnh Web của Sun, cùng với nó là một công nghệ khác của Microsoft - Active Server Pages (ASP), JSP là công nghệ đ̣i hỏi một tŕnh chủ hiểu được Java.
Microsoft đă nghiên cứu các nhược điểm của servlet và tạo ra ASP dễ dàng hơn để thiết kế các trang web động. Microsoft thêm các bộ công cụ rất mạnh và sự tích hợp rất hoàn hảo với các Web server. JSP và ASP có những nét tương đương v́ chúng đều được thiết kế để phân tách qua tŕnh xử lí khỏi quá tŕnh biểu diễn. Có sự khác biệt về kỹ thuật, song cả hai đều cho phép các nhà thiết kế Web tập trung vào cách bố trí (layout) trong khi các nhà phát triển phần mềm th́ tập trung vào các kỹ thuật lập tŕnh logic.
Tất nhiên Microsoft và Sun không độc quyền ở các giải pháp phía server. C̣n có các công nghệ khác, trong đó phải kể đến là PHP (Hypertext Preprocessor) cho tới Cold Fusion. Các công nghệ này cung cấp các bộ công cụ rất mạnh cho các nhà phát triển.

5. Flash
Năm 1996, FutureWave đă đưa ra sản phẩm FutureSplash Animator. Sau đó FutureWave thuộc sở hữu của Macromedia, và công ty này đưa ra sản phẩm Flash. Flash cho phép các nhà thiết kế tạo các ứng dụng hoạt họa và linh động. Flash không đ̣i hỏi các kỹ năng lập tŕnh cao cấp và rất dễ học. Cũng giống như các nhiều giải pháp khác Flash yêu cầu phần mềm phía client. Chẳng hạn như gói Shockwave Player plug-in có thể được tích hợp trong một số hệ điều hành hay tŕnh duyệt.

6. DHTML
Khi Microsoft và Netscape đưa ra các version 4 của các tŕnh duyệt của họ, th́ các nhà phát triển Web có một lựa chọn mới: Dynamic HTML (DHTML). DHTML không phải là một chuẩn của W3C; nó giống một bộ công cụ thương mại hơn. Trong thực tế nó là một tập hợp gồm HTML, Cascading Style Sheets (CSS), JavaScript, và DOM. Tập hợp các công nghệ trên cho phép các nhà pháp triển sửa đổi nội dung và cấu trúc của một trang Web một cách nhanh chóng. Tuy nhiên, DHTML yêu cầu sự hỗ trợ từ các tŕnh duyệt. Mặc dù cả Internet Explorer và Netscape hỗ trợ DHTML, nhưng các thể hiện của chúng là khác nhau, các nhà phát triển cần phải biết được loại tŕnh duyệt nào mà phía client dùng. DHTML thật sự là một bước tiến mới, nhưng nó vẫn cần một sự qui chuẩn để phát triển. Hiện nay DHTML vẫn đang trên con đường phát triển mạnh.

7. XML
Kể từ khi ra đời vào giữa năm 1990, eXtensible Markup Language (XML) của W3C dẫn xuất của SGML đă trở nên rất phổ biến. XML có mặt ở khắp nơi, Microsoft Office 12 cũng sẽ hỗ trợ định dạng file XML.

Ngày nay chúng ta có rất nhiều dạng dẫn xuất của XML cho các ứng dụng Web (tất nhiên là có cả XHTML): XUL của Mozilla; XAMJ, một sản phẩm mă nguồn mở trên nền Java; MXML từ Macromedia; và XAML của Microsoft.


Công nghệ Web thế hệ thứ hai – Web 2.0

Được xem là một cuộc cách mạng trên thế giới mạng, thế hệ web mới có những thay đổi quan trọng không chỉ ở nền tảng công nghệ mà c̣n cả ở cách thức sử dụng - h́nh thành nên môi trường cộng đồng, ở đó mọi người cùng tham gia đóng góp cho xă hội "ảo" chứ không chỉ "duyệt và xem".

Web 2.0 là ǵ? Làm sao phân biệt đâu là Web 1.0 đâu là Web 2.0? Thuật ngữ "Web 2.0" đang trở nên thịnh hành. Thực chất, Web 2.0 có nghĩa là sử dụng web đúng với bản chất và khả năng của nó.

Mục tiêu đầu tiên của những người tiên phong xây dựng Internet là nhằm kết nối các nhà nghiên cứu và các máy tính của họ với nhau để có thể chia sẻ thông tin hiệu quả. Khi bổ sung World Wide Web (năm 1990), Tim Berners-Lee cũng nhằm mục tiêu tạo phương tiện cho phép người dùng tự do đưa thông tin lên Internet và dễ dàng chia sẻ với mọi người (tŕnh duyệt web đầu tiên do Berners-Lee viết bao gồm cả công cụ soạn thảo trang web). Tuy nhiên, sau đó web đă phát triển theo hướng hơi khác mục tiêu ban đầu.

Tuy có một số ngoại lệ nhưng thế giới Web 1.0 (thế hệ web trước Web 2.0) chủ yếu gồm các website "đóng" của các hăng thông tấn hay các công ty nhằm mục đích tiếp cận độc giả hay khách hàng hiệu quả hơn. Nó là phương tiện phát tin hơn là phương tiện chia sẻ thông tin. Chỉ đến gần đây, với sự xuất hiện của nhiều kỹ thuật mới như blog (hay weblog), wiki... web mới trở nên có tính cộng đồng (và cộng tác) hơn và trở nên gần hơn với sự kỳ vọng và khả năng thực sự của nó.

Khái niệm Web 2.0 đầu tiên được Dale Dougherty, phó chủ tịch của O’Reilly Media, đưa ra tại hội thảo Web 2.0 lần thứ nhất do O’Reilly Media và MediaLive International tổ chức vào tháng 10/2004. Dougherty không đưa ra định nghĩa mà chỉ dùng các ví dụ so sánh phân biệt Web 1.0 và Web 2.0: "DoubleClick là Web 1.0; Google AdSense là Web 2.0. Ofoto là Web 1.0; Flickr là Web 2.0. Britannica Online là Web 1.0; Wikipedia là Web 2.0. v.v...".

Sau đó Tim O’Reilly, chủ tịch kiêm giám đốc điều hành O’Reilly Media, đă đúc kết lại 7 đặc tính của Web 2.0:
Web có vai tṛ nền tảng, có thể chạy mọi ứng dụng
Tập hợp trí tuệ cộng đồng
Dữ liệu có vai tṛ then chốt
Phần mềm được cung cấp ở dạng dịch vụ web và được cập nhật không ngừng
Phát triển ứng dụng dễ dàng và nhanh chóng
Phần mềm có thể chạy trên nhiều thiết bị
Giao diện ứng dụng phong phú

Thoạt đầu, Web 2.0 được chú trọng tới yếu tố công nghệ, nhấn mạnh tới vai tṛ nền tảng ứng dụng. Nhưng đến hội thảo Web 2.0 lần 2 tổ chức vào tháng 10/2005, Web 2.0 được nhấn mạnh đến tính chất sâu xa hơn – yếu tố cộng đồng.
MarsNIIT is offline   Trả Lời Với Trích Dẫn
Đã có 3 thành viên gửi lời cám ơn đến MarsNIIT vì bạn đã đăng bài:
ComPassumspumYUH (23-07-2014), entilt (13-09-2022), WoormasnorestYU (02-07-2014)