Giới Thiệu YUI - Công nghệ Thư Viện YUI (YUI library), do Yahoo khởi sướng từ năm 2005, là một web framework giúp phát triển ứng dụng Web khá hay và nhanh chóng. Công nghệ YUI, được xây dựng trên nền tảng JavaScripts, giúp thiết kế các trang web tĩnh và động. Điểm cốt yếu của công nghệ này giúp các trang web chạy tương thích trên bất kỳ trình duyệt nào, và chỉ dành cho những ai thích lập trình với JavaScripts.
Cài Đặt YUI
Để dùng công nghệ YUI, bạn cần phải cài thư viện YUI. Thư viện này chỉ có một tập tin đã bị nén mà bạn có thể tải xuống từ http://developer.yahoo.com/yui. Vào thời điểm viết bài này, thì phiên bản mới nhất là yui_2.7.0b.zip. Sau đó bạn bung tập tin nén này vào một mục thư bất kỳ trên máy bạn. Người viết giả sử bạn bung tập tin nén này vào thư mục có tên là: c:\ timhieuyui. Sau khi bung xong, bạn sẽ thấy thư mục yui. Trong thư mục này có nhiều thư mục khác như: as-docs, assets, build, docs, examples, releasenotes, và tests.
Hình 1 - Người dùng bấm vào nút icon nhỏ bên tay phải của ô vuông. |

- Bạn đọc thấy 4 hàng được đánh dấu mầu vàng, cho biết mỗi tập tin html luôn tham chiếu đến thư mục YUI. Chú ý tập tin lich.html này phải đặt nằm ngoài thư mục yui. Nếu tập tin lich.html mà nằm ở thư mục khác thì bạn cần phải thay đổi đường dẫn (yui/build/...).
- Các hàng mầu xanh nhạt là để tạo ra các trường trống. Không dùng trong bài này. Và sẽ thảo luận trong bài kế tiếp về cách hiển thị ngày/tháng/năm sau khi người dùng gõ trên cuốn lịch. Bạn cần phải có một tập tin dạng hình ảnh cal.png trên máy của bạn. (Bạn có thể lấy bất kỳ hình nhỏ nào cũng được).
- Các hàng còn lại là dùng để hiển thị Calendar. Cú pháp <div id="mycal"></div> là chỗ dùng để Calendar được hiển thị và được đặt tên là "mycal". Cú pháp YAHOO.namespace("yuibook.calendar"); với mục đích để tạo ra một namespace dùng để chứa đối tượng Calendar. Cú pháp var myCal = new YAHOO.widget.Calendar("mycal"); tạo một biến số có tên myCal để gán đối tượng "mycal" vào biến số này. Cú pháp myCal.cfg.setProperty("start_weekday", "1"); dùng để gán thuộc tính cho ngày trong tuần. Cú pháp myCal.render(); dùng để hiển thị Calendar trên trang lich.html. Nếu không có cú pháp này, thì lịch Calendar sẽ không hiển thị. Cú pháp myCal.hide(); dùng không hiển thị Calendar khi tập tin mới mở (vì khi người dùng vào trang web, thì đầu tiên là Calendar không hiển thị (theo giả thiết). Sau đó nếu người dùng bấm vào icon, thì lịch calendar mới hiển thị). Phương thức có tên showCal dùng để kích hoạt thuộc tính của biến số myCal qua phương thức show(). Cú pháp YAHOO.util.Event.addListener("calico", "click", showCal); dùng để bẫy mỗi khi người dùng kích hoạt hay bấm vào icon, thì Calendar bị kích hoạt và được hiển thị. Cú pháp này bắt buộc phải có vì nếu không có nó, người dùng có bấm nút icon hoài thì Calendar cũng không hiển thị. Cú pháp sau cùng YAHOO.util.Event.onDOMReady(YAHOO.yuibook.calendar.launchCal); dùng để hình thành đối tượng Calendar và đẩy nó lên trang html.
Phần giải thích chỉ là tương đối. Nó hơi khó cho bạn đọc nào chưa biết YUI nhưng làm thêm một số ví dụ khác bạn sẽ thấy việc viết chương trình trở nên dễ vì lúc đó bạn chỉ cần copy/paste là xong. Và đây chỉ là tầng làm trang Web mà chưa có tương tác đến kho dữ liệu (database). Bạn nên tìm đọc thêm một số ví dụ từ YUI cho các phần Treeview, tab, manager connection (tương tác với database), ... từ trang web http://developer.yahoo.com/yui.
Chạy Thử
Sau khi bạn copy/paste đoạn mã ở trên vào tập tin lich.html trên máy bạn, bạn thử chạy nó bằng cách nhấp đôi hoặc mở tập tin lich.html bằng trình duyệt Intenet Explorer hoặc Firefox hoặc trình tương thích khác. Kết quả sẽ được hiển thị như chỉ trong hình 1 và hình 2 mà người viết đã nói ở trên.
Kết Luận
Mặc dù YUI mới ra đời nhưng tính năng của nó có nhiều điểm ưu việt: YUI là một framework dựa trên nền tảng JavaScripts, do đó, nó rất tương thích cho mọi Trình Duyệt và rất dễ bảo quản nhất là phương diện gỡ rối (debug). YUI giúp tạo ra bất kỳ các trang web và hoà hợp với mọi ngôn ngữ như Java, PHP, Dot.net, vân vân. Người lập trình viên có thể dùng bất kỳ văn bản (editor) hay công cụ tích hợp ide nào để viết ứng dụng Web bằng YUI cũng được. Thường thì người ta hay dùng Eclipse, một công cụ tích hợp chuộng nhất hiện nay vì nó thuộc mã nguồn mở và có rất nhiều plugs-in ban phát miễn phí.
Phương Tân Biên
(Ngày 25 tháng 6 năm 2009)
- Anonymous's blog
- Login to post comments