blog.hoatle.info

just a value creator.

JavaScript – Xương Sống Của ứng Dụng Web Hiện đại

Javascript ư? Đây mà được gọi là ngôn ngữ lập trình à? Ngôn ngữ lập trình thực sự phải là C, Java.v.v… cơ. Quan điểm lạc hậu này không thể tồn tại khi bạn thực sự làm việc và nghiên cứu JavaScript một cách nghiêm túc. Trong những ngày đầu JavaScript hầu như chỉ được dùng làm một số hiệu ứng và phần lớn là hiện cửa sổ pop-up quảng cáo. Càng dần về sau, JavaScript được một số nhà phát triển phát hiện và đưa ra những khái niệm, những cách thức để sử dụng JavaScript theo hướng hiện đại – hướng đối tượng với JavaScript. Vậy JavaScript là gì? Nó không phải là Java :). Nó có hướng đối tượng như các ngôn ngữ lập trình lớn – hoàn toàn hướng đối tượng nhưng cách tiếp cận khác hơn, động hơn. JavaScript có vai trò rất lớn trong các trình duyệt web hiện đại cũng như công nghệ web 2.0. Và rồi JavaScript sẽ đi đến đâu? Trong bài viết này tôi xin giải đáp ngắn gọn một số câu hỏi trên.

Thứ nhất, JavaScript không phải là Java :) và chẳng có mối liên hệ nào với Java cả, có chăng là cả 2 cái tên đều có “Java”. JavaScript chỉ được dùng trong các trình duyệt, đầu tiên có tên là LiveScript do Netscape phát triển để tạo tính động và tương tác hơn cho các nhà phát triển xử lý tài liệu. Sau đó Jscript được Microsoft phát triển cho trình duyệt IE của mình. Cái tên JavaScript cũng có liên quan một chút đến Java ;). Hồi đó Java rất được ưa chuộng và JavaScript được đặt tên như vậy cũng là để thu hút được nhiều sự chú ý hơn. Nhưng tôi xin nhấn mạnh JavaScript và Java là hoàn toàn khác nhau cả về phạm vi sử dụng cũng như cách thức sử dụng. Trong một số bài viết tiếp theo tôi sẽ nói cụ thể hơn về phạm vi cũng như cách thức sử dụng ngôn ngữ của thế giới web 2.0 này.

JavaScript hướng đối tượng hoàn toàn? Đúng thế, ngay từ đầu JavaScript là ngôn ngữ động và hoàn toàn hướng đối tượng. Chỉ có cách triển khai theo hướng đối tượng là khác các ngôn ngữ hướng đối tượng thông thường khác như C++ hay Java. Chỉ do cách viết JavaScript của một số những người mới học ngôn ngữ này viết theo kiểu “procedure” thực hiện một số công việc đơn giản – sau đó tạo ra làn sóng sử dụng JavaScript tràn lan vì JavaScript rất dễ sử dụng nhưng sử dụng tốt hay không lại là vấn đề khác :|

JavaScript là xương sống của trình duyệt web hiện đại và công nghệ web 2.0: Đối với các ứng dụng web hiện đại, mỗi một trang web gồm 3 thành phần không thể tách rời: Structure-Presentation-Behavior. (X)HTML cho phần structure (semantic structure). Ở phần này bạn chỉ tạo ra cấu trúc HTML có nghĩa, không dùng đến bất kì thẻ nào để định dạng hay trình bày tài liệu trên trình duyệt. Công việc này là dành cho CSS – Cascading Style Sheet – định dạng và trình bày trang web dựa trên các lựa chọn (CSS selector) để định dạng các thẻ (tag), class và id có trong cấu trúc tài liệu. Và phần quan trọng cuối cùng chính là JavaScript – tạo tương tác cho trang web. Ở đây tôi nói tương tác không còn là các hiệu ứng hoạt hình thông thường hay những cửa sổ Popup quảng cáo, mà chính là những tương tác để tạo những trải nghiệm mới cho người dùng theo các sự kiện tương tác (click chuột, di chuột, ấn nút…), đấy mới là tương tác thực sự.

JavaScript sẽ đi đến đâu? Trong vài năm trở lại đây, những thư viện và framework JavaScript phát triển không ngừng. Không thể không kể đến extjs (phát triển từ thư viện YUI của Yahoo!), Dojo, prototypejs, jQuery và còn nhiều framework khác nữa. Hiện tại và trong tương lai JavaScript sẽ đóng vai trò xương sống trong các trình duyệt web và JavaScript đã thực sự khẳng định được chỗ đứng của mình. Trước đây Java Applet đã từng làm mưa làm gió, giờ là thời đại của JavaScript.

JavaScript rất mạnh mà vẻ đẹp của JavaScript không thể nói hết được nếu bạn không thực sự tận hưởng vẻ đẹp của JavaScript. Hãy lập trình tốt, bỏ những thói quen xấu và tận hưởng vẻ đẹp đó :).

Một số cuốn sách nên đọc: Pro JavaScript Techniques (John Resig – project leader của jQuery), Pro JavaScript Design Patterns (Ross Harmes và Dustin Diaz), và JavaScript: The Good Parts (Douglas Crockford – Kiến trúc sư trưởng bên Yahoo!).

Một số liên kết cần ghé qua:

http://javascript.crockford.com/

https://developer.mozilla.org/en/JavaScript

Và đừng quên google nhá ;)

Comments