27 tháng 3, 2009

Con nhà nghèo

Con Nhà Nghèo

{Nguồn từ Tuổi Trẻ Media}

Cháu 3 tuổi hét cải lương

3 Tuổi hét cải lương! :)

Hay thiệt! – Quá hay. Triển vọng thành tài tử cải lương của Việt Nam. Khâm phục! :)

(Nguồn từ voh.com.vn)

Babylon – Quyển đại từ điển đa ngôn ngữ

 

Với Babylon bạn sẽ không còn phải copy hay paste quá nhiều, cũng không còn những cửa sổ lướt web không cần thiết nữa. Chỉ cần nhấn chuột vào bất cứ từ ngữ nào trong Word, Exel, PowerPoint, hay những lá thư điện tử, tin nhắn, trang web và những ứng dụng màn hình khác, bạn sẽ được biết ngay ý nghĩa của chúng.

Babylon cung cấp đầy đủ cho người sử dụng những công cụ trực quan nhất hỗ trợ tối đa cho công việc dịch thuật. Với Babylon, người sử dụng có thể nhanh chóng biên dịch những lá thư điện tử, những trang web, những tài liệu, những tin nhắn, và rất rất nhiều những thứ khác nữa. Tất cả công việc mà người sử dụng phải làm là nhấn chuột vào từ hay chữ mà họ muốn dịch; ngay lập tức, một cửa sổ nhỏ sẽ hiện ra với những kết quả thoả đáng nhất được lấy từ những cơ sở dữ liệu khổng lồ về từ điển ngôn ngữ, từ điển chuyên ngành và từ rất nhiều những công cụ chuyển đổi khác.

Babylon cung cấp tới người sử dụng một bộ từ điển đầy đủ với nghĩa của từ được dựa theo chuẩn của các nhà xuất bản hàng đầu thế giới hiện nay như Oxford University Press, Britannica, Merriam-Webster, Larousse, Vox, Langenscheidt, Pons, và Taishukan. Tất cả chỉ nằm sau một cái nhấn chuột, những kết quả được lấy từ những nguồn chính thống, bao gồm cả từ bộ từ điển bách khoa toàn thư nổi tiếng Wikipedia sẽ hiện ra với 9 ngôn ngữ khác nhau. Tính năng duyệt chính tả tự động mới sẵn có trong Babylon Pro 7 cũng cung cấp những giải pháp để khắc phục những lỗi chính tả phổ biến và thậm chí là cả lỗi diễn đạt.

Babylon Pro 7 - một phần mềm biên dịch và tra từ điển trực quan dễ dàng hỗ trợ tới 75 ngôn ngữ khác nhau trên thế giới. Với Babylon Pro 7, từ ngữ sẽ chưa bao giờ được biên dịch một cách dễ dàng như thế.

Giao diện chính 

Tải về:

http://dl.babylon.com/files/Babylon7_conduit/Babylon7_setup.exe

Hoặc vào trang chủ http://www.babylon.com

Một số từ điển bổ xung:

Hướng dẫn đăng ký và sử dụng :
I. Đăng ký :

  • Các bản Babylon trước thì dùng Key đăng ký nhưng mau chóng bị nhận dạng và không sử dụng được , về sau xuất hiện bản Patch nhưng hoạt động thiếu ổn định.
  • Với phiên bản này, việc đăng ký trở nên đơn giản , sau khi cài đặt bản Trial xong , các bạn sử dụng key sau để đăng ký cho chương trình :
    • Name : BetaMaster
    • Serial : P275WR5MGX6VBCQKBHCCME5GHQWDZ3U5

Để key không bị Block xem cuối bài.

II. Sử dụng chương trình :

  • Mở chương trình Babylon.
  • Bây giờ bạn chỉ cần nhấn và giữ phím "Ctrl" đồng thời dùng chuột phải nhấn vào bất kể từ, cụm từ nào bạn muốn dịch.
  • Trong phiên bản Babylon Pro 7 mặc định chưa được tích hợp sẵn bộ từ điển Anh - Việt, vì vậy các bạn có thể nhấn vào đây để tải tập tin từ điển Anh - Việt bổ sung , ngoài ra còn có các dữ liệu từ điển Hàn - Việt , Trung - Việt, Nhật - Việt ... tùy các bạn lựa chọn sử dung.
  • Sau khi tải file dữ liệu có đuôi là *.bgl về , bạn bấm đôi vào nó để nạp dữ liệu của từ điển đó và sẵn sàng cho bạn sử dụng.

Lưu ý :

  • Khi cài đặt và sử dụng nên ngắt Internet hoặc bạn có thể dùng Firewall để chặn chương trình kết nối tới Internet.
  • Nếu key bạn bị Block thì tải file này về, tìm và ghi đè lên :

http://www.mediafire.com/download.php?hjjbmmmzqym

 

[Sưu tầm và có sửa chữa bởi iChuot]

16 tháng 3, 2009

Sony Ericson J132

Một thành viên mobile nữa đc chính thức kết nạp vào bộ sưu tập. Hix nói cho quá! chỉ có 5 cái hà :)

“Em” nó chỉ là dân basic phone thôi. Có FM nghe đỡ buồn, có loa ngoài để dùng lúc nơi ồn ào. Loa nó củng được. Vẻ ngoài thì đen thui!. Tông mào đen vốn mình rất thích mà. Như quảng cáo thì thời gian chờ tới hơn 2 tuần, gọi đến 9 giờ. Để test thử xem sao.

Cái O2 đang xài là cái GSM duy nhất còn sót lại. Cái I-Mobile 308 cho con nhỏ cháu xài rồi. Mà cái O2 thì to, nặng, cồng kềnh quá. Bỏ vào túi chật cả túi, túi quần nó phòng lên thấy mà… thấy ghét. Vả lại nó củng đã già lắm rồi. O2 đời đầu mà! Đôi lúc treo máy, trục trặc thấy bực mình. Cho nó về hưu dưỡng già vậy.

Còn 2 cái kia thì 1 của EVN 1 của SFone. EVN sóng mạnh, máy của EVN nói chung là tốt… nhưng hết tiền ròi. Còn thàg Sfone thì mẹ ôi sóng yếu thấy kinh. Ngay tại Q.Tân bình mà còn có 3gạch sóng. Về wuê thì khỏi xài…

11 tháng 3, 2009

Sơ lược về AMD- Advanced Micro Devices

AMD - Advanced Micro Devices là một công ty chuyên về sản xuất các chất bán dẫn Hoa Kì. Công ty có đại bản doanh ở Sunnyvale - California này được thành lập năm 1969 do Jerry Sanders và nhóm nhân viên cũ của Fairchild Semiconductor sáng lập, bao gồm Jerry Sanders, Ed Turney, John Carey, Sven Simonsen, Jack Gifford và ba thành viên của Gifford's team là Frank Botte, Jim Giles, và Larry Stenger. Hiện nay chủ tịch hội đồng quản trị và là tổng giám đốc là Tiến sĩ Hector Ruiz, chủ tịch tập đoàn và là giám đốc điều hành là ngài Dirk Meyer.

Click the image to open in full size.

Sunnyvale - Đại bản doanh của AMD

AMD là nhà cung cấp lớn thứ hai thế giới về các bộ xử lý máy tính (CPU) trên nền x86. Đồng thời cũng là nhà cung cấp card đồ họa và bộ xử lý đồ họa (GPUs) lớn thứ ba thế giới kể từ khi nắm quyền sở hữu công ty ATI Technologies vào năm 2006. AMD cũng nắm giữ 21% cổ phần trong Spansion, một nhà cung cấp bộ nhớ flash không thay đổi (non-volatile). Năm 2007, AMD đứng thứ 11 trong các nhà SX chất bán dẫn hàng đầu thế giới.

Một số nét về lịch sử đối đầu giữa AMD – Intel

Click the image to open in full size.

  •  1968: Intel được thành lập bởi Bob Noyce và Gordon Moore.
  • 1969: AMD được Jerry Sanders và nhóm nhân viên cũ của Fairchild Semiconductor sáng lập.
  • Đầu những năm 80: IBM chọn sử dụng chip x86 của Intel và hệ điều hành phần mềm DOS của Microsoft. Để tránh quá phụ thuộc vào chip của Intel, IBM yêu cầu hãng này tìm cho mình một nhà cung cấp thứ hai.
  • 1982: Intel và AMD ký thỏa thuận trao đổi công nghệ, biến AMD thành nhà cung cấp thứ hai. Hợp đồng này tạo cơ hội cho AMD tiếp cận công nghệ chip thế hệ hai 286 của Intel.
  • 1984: Intel lập kế hoạch để phát triển độc lập chip 386 thế hệ ba, mà AMD khẳng định đó chính là một phần trong kế hoạch bí mật của Intel nhằm độc quyền chip máy tính.
  • 1987: AMD trình văn bản pháp lý tranh chấp chip 386.
  • 1991: AMD khởi tố Intel thực hiện những hành động trái pháp luật trong việc duy trì độc quyền.
  • 1992: Tòa án yêu cầu Intel bồi thường AMD 10 triệu USD cho mỗi mẫu sáng chế Intel sử dụng trong thiết bị xử lý 386.
  • 1995: AMD tiếp tục cuộc tranh chấp với Intel về thoả thuận chia sẻ một phần trong thiết kế chip x86 - cấu trúc chip cơ bản trong máy tính cá nhân ngày nay.
  • 1999: Giành được quyền tự phát triển chip x86, AMD tạo ra phiên bản mới của x86 - chip Athlon.
  • 2000: AMD kiện lên Ủy ban châu Âu rằng Intel xâm phạm nghiêm trọng luật chống cạnh tranh khi việc lạm dụng các chương trình tiếp thị. AMD tiến hành cuộc chiến này nhằm mục đích tiếp cận tài liệu trong vụ kiện chống độc quyền mà Intel phải trả cho Intergraph 225 triệu USD cho chip Itanium.
  • 2003: AMD tạo nên bước đột phá lớn khi giới thiệu phiên bản 64 bit của chip x86, chạy trên Windows, đánh bại Intel. Đây là lần đầu tiên hãng chip số một thế giới phải rượt đuổi sau AMD để phát triển công nghệ tương tự. AMD ra mắt dòng chip Operton cho hệ thống máy chủ siêu mạnh, dòng Athlon cho máy tính để bàn và xách tay.
  • 2004: JFTC thanh tra văn phòng đại diện của Intel tại Nhật. Intel tỏ ra hợp tác nhưng không tán thành kết luận JFTC rằng họ đã cạnh tranh thiếu lành mạnh qua việc hạ giá thành cho 5 nhà sản xuất máy tính Nhật là Fujitsu, Hitachi, NEC, Sony và Toshiba nếu những hãng này đồng ý không mua hoặc hạn chế mua chip của AMD và Transmeta.
  • 2005: AMD tiến hành cuộc chiến chống độc quyền với Intel tại tòa án bang Delaware.

 Click the image to open in full size.
Sáp nhập với ATI

AMD thông báo về việc sáp nhập với ATI vào ngày 24 tháng bảy, 2006. AMD đã trả 3,4 tỉ USD tiền mặt và 58 triệu cổ phiếu của họ để mua lại ATI, tổng giá trị của hợp đồng lên đến 5,4 tỉ USD. Việc sáp nhập hoàn tất vào ngày 25 tháng 11, 2006 và bây giờ ATI đã là một phần của AMD.

 Chế tạo và Sản xuất (Production and fabrication)

Tất cả các bộ xử lý của AMD đều được sản xuất ở các nhà máy chế tạo chất bán dẫn (semiconductor Fabrication Plants ) của riêng họ , được gọi là “FABs”. AMD quy ước đặt tên những nhà máy của họ là “FAB x”, trong đó “x” là số năm tính từ khi thành lập AMD đến khi FAB đi vào hoạt động (ví dụ FAB 36, nơi đang nghiên cứu chế tạo Deneb 45nm).

Trong các nhà máy của họ, AMD sử dụng một hệ thống gọi là Automated Precision Manufacturing – APM (tạm dịch là hệ thống chế tạo chính xác và tự động hóa). APM là tập hợp các công nghệ sản xuất mà AMD đã nghiên cứu trong suốt quá trình phát triển của mình (nhiều công nghệ trong số này đang được AMD giữ bằng sáng chế), chúng được thiết kế để tăng cường cho quá trình sản xuất bộ vi xử lý, chủ yếu về mặt hiệu suất.

AMD hiện đang có một thỏa thuận hợp tác sản xuất với Chartered Semiconductor Manufacturing có trụ sở ở Singapore, cho phép Chartered có thể tiếp cận với quy trình công nghệ APM của AMD, đổi lại Chartered sẽ giúp AMD tăng cường năng lực sản xuất nhờ vào các nhà máy của mình.

Thông qua việc sở hữu ATI, AMD cũng có những hợp đồng sản xuất với TSMC để sản xuất ra các loại chipset và BXL đồ họa ATI. Hiện tại không rõ sẽ có những yếu tố (manufacturing needs) nào của ATI sẽ được chuyển về sản xuất tại các FAB riêng của AMD và những yếu tố nào sẽ sẽ do các đối tác của họ đảm nhận việc chế tạo. Nhưng AMD đã thông báo kế hoạch trong tương lai những bộ xử lý của họ sẽ do TSMC phụ trách, và có một sự trùng hợp khi TSMC cũng thông báo về những đơn đặt hàng chế tạo các bộ xử lý x86 mà họ nhận được.


Những nhà máy hiện tại

Những nhà máy thiết kế và chế tạo bộ xử lý chính của AMD nằm ở vùng Dresden, phía đông Đức. Ngoài ra các bộ vi xử lý tích hợp cao (highly integrated microprocessors ) cũng đang được sản xuất bởi bên thứ ba (third-party manufacturers) dưới sự cấp phép (license) của AMD. Từ năm 2003 đến 2005, AMD cũng đã xây dựng nhà máy bán dẫn thứ hai (chế tạo wafer 300mm dùng công nghệ 90nm SOI) trong cùng khu liên hợp để tăng sản lượng chip và nhờ đó sẽ có sức cạnh tranh hơn với Intel. Nhà máy mới này được mang tên “FAB 36”, nhằm kỉ niệm 36 năm ngày AMD ra đời, và đi vào sản xuất vào giữa năm 2007. AMD cũng đã thông báo họ đã hoàn tất việc chuyển đổi đổi công nghệ từ 90nm sang 65nm ở FAB 36 và hiện nhà máy cũng đang tiến hành nghiên cứu thử nghiệm công nghệ 45nm.

AMD cũng đang lên kế hoạch mở rộng quy mô sản xuất của họ. Ngoài việc hoàn thành FAB 36, AMD cũng nâng câp FAB 30 (gần kề FAB 36) ở Dresden từ công nghệ 200mm 90nm SOI sang 300mm 65nm SOI và đổi tên nhà máy thành FAB 38. Ban đầu FAB 30 được cho là nơi bắt đầu chế tạo các sản phẩm công nghệ 65nm vào năm 2007, tuy nhiên AMD đã thông báo trì hoãn việc nâng cấp để giảm thiểu phí tổn.

Click the image to open in full size.
AMD Saxony ở Dresden, nơi sản xuất ra các tấm wafer chính của AMD

Các nhà máy lắp ráp và kiểm định chip bán dẫn của AMD được đặt ở Singapore, Malaysia và Trung Quốc.

Bên cạnh đấy, AMD cũng dự định mở một nhà máy 3,2 tỉ USD ở khu công nghệ Luther Park, Stillwater, New York. Nhà máy FAB “4x” này sẽ sản xuất nên các sản phẩm 300mm 32nm SOI, việc xây dựng sẽ tiến hành từ năm 2009 đến 2010. Một số thông tin cho thấy nhà máy sẽ sử dụng công nghệ cổng high-k metal mà AMD tiếp thu được từ IBM.

AMD cũng sẽ xây dựng FAB City đầu tiên của Ấn Độ, một nhà máy sản xuất chip bán dẫn với vốn đầu tư khoảng 3,2 tỉ USD.

Tháng Sáu 2006, Chartered Semiconductor trở thành nhà phân phối các bộ xử lý của AMD, nhiều trong số chúng được gửi từ Singapore sang Đài Loan và Trung Quốc dưới dạng OEM/ODM cho các công ty lắp ráp máy tính như Levono hay Dell.

AMD vẫn đang duy trì các nhà máy thiết kế chính của họ ở Fort Collins (Colorado), Sunnyvale (California), Austin (Texas), Boxborough (Massachusetts ), và Bangalore (Ấn Độ). Với việc sở hữu ATI Technologies, công ty có được thêm quyền sở hữu các nhà máy thiết kể ở Markham (bắc Toronto), và Santa Clara (California).

Các đối tác

AMD tận dụng các quan hệ đối tác chiến lược nhằm đẩy lùi thế thống trị độc tôn của Intel, Một trong các đối tác đó phải kể đến nVIDIA với dòng chipset nForce cho hệ thống AMD.

AMD cũng hợp tác với hãng Alpha Processor trong việc nghiên cứu Hyper Transport, một chuẩn cung cấp kết nối tốc độ cực nhanh theo kiểu điểm đến điểm để kết nối các thành phần trên mainboard, được ứng dụng trong những lĩnh vực đòi hỏi dữ liệu được truyền đi với cường độ cao, tốc độ lớn và độ trễ nhỏ. Hiện công nghệ này đang được dùng trong các mainboard tương thích với bộ xử lý AMD.

AMD cũng thiết lập quan hệ đối tác chiến lược với IBM, giúp AMD có thể tiếp cận được các công nghệ mới như công nghệ sản xuất SOI (silicon on insulator), công nghệ 90nm,...Thỏa thuận hợp tác này được AMD thông báo sẽ kéo dài đến năm 2011, qua đó IBM sẽ tiếp tục hỗ trợ AMD trong việc nghiên cứu phát triển công nghệ 32nm và 22nm.Bên cạnh đó AMD cũng có quan hệ hợp tác với các hãng lắp ráp máy tính như HP, Compaq, ASUS, Alienware, Acer, Evesham Technology, Dell,...

Vào ngày 18 tháng 5 năm 2006, Dell công bố việc phát hành các dòng máy chủ nền tảng chip Opteron của AMD, chấm dứt nhiều năm hợp tác độc quyền với Intel. Dell cũng tung ra thị trường các dòng desktop xử dụng BXL Athlon X2 vào tháng Chín, 2006.

AMD cũng là nhà tài trợ cho đội đua xe công thức 1 Scuderia Ferrari Marlboro từ năm 2002 và đội đua xe đạp Discovery Channel Pro từ năm 2004.

Các thế hệ bộ xử lý AMD x86

8086, Am286, Am386, Am486, Am5x86

Đây là các bộ xử lý nhái theo kiến trúc x86 của Intel, được SX theo những thỏa thuận về bản quyền kéo dài 17 năm giữa Intel và AMD. Thỏa thuận này cho phép AMD trở thành nhà cung cấp chip dự phòng của Intel trong trường hợp nhu cầu vượt quá khả năng cung cấp.

Điều tồi tệ đã xảy ra với AMD khi Intel chấm dứt thỏa thuận cấp phép trước thời hạn bởi Intel đã quá mạnh để không cần tới những nguồn dự phòng như AMD nữa. Cuối cùng, AMD buộc phải tự đứng lên.

K5, K6, Athlon (K7)

AMD phát hành bộ xử lý K5 – bộ xử lý x86 đầu tiên của riêng họ vào năm 1996. Chữ “K” là viết tắt của từ “Kryptonite”, một loại đá hư cấu được xem có thể gây hại cho Siêu Nhân trong truyện tranh Superman. Nó ám chỉ đến Intel, được xem là Superman của nền công nghiệp chip bán dẫn, vốn đang thống trị thị trường vào thuở ấy.

Click the image to open in full size. 

Năm 1996, AMD mua lại NexGen nhằm tiếp cận dòng chip xử lý nền x86 của hãng này. AMD đã giao cho đội ngũ thiết kế Nexgen nhà xưởng của mình, đồng thời cho họ thời gian và tiền bạc để xây dựng lại (rework) kiến trúc Nx686. Và kết quả là bộ xử lý AMD K6 được ra đời vào năm 1997.

Click the image to open in full size. 

K7 là thế hệ vi xử lý thứ bảy của AMD, xuất hiện lần đầu vào ngày 23 tháng Sáu, 1999, dưới tên gọi AMD Athlon. Ngày 9 tháng 11 năm 2001, Athlon XP được phát hành, tiếp sau đó Athlon XP với 512KB Cache L2 được tung ra vào ngày 10 tháng 2 năm 2003.

Athlon 64 (K8)

K8 là phiên bản cải tiến của kiến trúc K7, với những tính năng đáng kể nhất là hỗ trợ tập lệnh x86-64bit (với tên gọi chính thức là AMD64), tích hợp khối điều khiển bộ nhớ vào trong chip, kiến trúc kết nối trực tiếp với tốc độ cực nhanh theo kiểu điểm đến điểm HyperTransport. Những công nghệ này ban đầu được ứng dụng trong bộ xử lý dùng cho máy chủ Opteron. Một thời gian ngắn sau, chúng cũng được xuất hiện trong bộ xử lý Athlon 64 dùng cho desktop.

AMD X2

Click the image to open in full size. 

AMD phát hành bộ xử lý Opteron lõi kép đầu tiên ngày 21 tháng 4 năm 2005. Một tháng sau bộ xử lý lõi kép dùng cho desktop Athlon 64 X2 ra mắt.

Vào tháng 5 năm 2007, AMD quyết định sửa tên gọi của BXL 2 nhân desktop của mình. Theo đó chữ số 64 sẽ được bỏ qua và tên gọi chính thức chỉ còn là Athlon X2, đồng thời chuyển mục tiêu mà Athlon X2 nhắm đến trên thị trường từ mainstream sang value (từ trung cấp sang phổ thông giá rẻ).

AMD K10

AMD K10 hiện là kiến trúc vi xử lý mới nhất của AMD. AMD K10 là kiến trúc kế vị trực tiếp của K8. Vi xử lý đầu tiên dựa trên nền K10 được phát hành vào ngày 10 tháng 9 năm 2007, bao gồm 9 bộ xử lý lõi tứ Opeton Thế hệ III. Các bộ xử lý K10 sẽ ra mắt ở các phiên bản Dual Core, Triple Core và Quad Core, tất cả các lõi đều được triển khai trên một đế.

Click the image to open in full size.

(Nguồn từ vozforums.com)

JCREATOR 4.5.0.010 WITH SERIAL

Download:

http://www.mediafire.com/?djmdwncw1fx

JCreator vốn là chương trình rất nhỏ gọn, nhanh,… phù hợp cho viết thuần viết code với Java.

JCreator hổ trợ Java App, Servlet, JSP, JFC, Applet…

Màn hình tạo Project mới

hinh3

Giao diện chính:

hinh_2

HƯỚNG DẪN CÀI JDK 1.6 VÀ ECLIPSE 3.4

Download:

http://www.mediafire.com/?x5mizimwzgm

Down về, giải nén và chạy DownloadAndInstallJDKEclipse.htm để xem!

hinh_1

10 tháng 3, 2009

Window builder 6.8.0 - keygen

Download bằng link dưới

http://www.mediafire.com/?dmg5dqzmqyk

Cái bảng keygen này tương thích với Eclipse 3.4.x Đã test. Ok trên Windows XP, 2003. Vista và Win7 thì không chắc lắm. :). Hok bít chính xác vì sao nữa. Nhưng có lúc thành công!

Key do file keygen tạo ra chỉ có tác dụng trên 1 pc mà thôi.

Bạn phải dùng đúng Version 6.8.0 của WindowBuilder mới thành công. Ở trang chủ http://www.instantiations.com có lưu trữ tất cả những version cũ. Có thể tìm thấy ở đấy http://www.instantiations.com/windowbuilder/pro/download-prior.html?id=1

 

hinh_1

 

hinh_2

Ảnh 1




Yêu

Nhận diện bàn phím

Chú tâm

3 tháng 3, 2009

Java - 10 năm nhìn lại

Cũng tháng 5 này, cách đây 10 năm (1995), ngôn ngữ lập trình Java ra đời với rất nhiều kỳ vọng của giới công nghệ. Được quảng cáo như thứ ngôn ngữ viết một lần - chạy mọi nơi, cùng với sự phát triển của Internet, Java được xem như là một "cứu tinh", một ngôn ngữ sẽ dần thay thế tất cả các ngôn ngữ lập trình khác. Thành thật mà nói, quả thật Java đã đạt được rất nhiều những thành công trong suốt một thập kỷ vừa rồi. Thế nhưng, Java đã thất bại về nhiều mặt nếu ta xét trên khía cạnh những gì người ta trông đợi về nó. Tạp chí Infoworld vừa mới có một bài viết nhìn lại 10 năm phát triển của Java. Bài viết sau đây như là một tổng hợp của tớ về những điểm mạnh và yếu của Java, cũng như giới thiệu một số bài viết phê bình về Java.

Tại sao Java?

Một trong những hạn chế của phần lớn các ngôn ngữ lập trình là khả năng tương thích. Lấy ví dụ bạn viết một phần mềm trong C và biên dịch nó trong môi trường Windows, cho ra một file chạy .exe. Chương trình mà bạn mới tạo ra sẽ chỉ chạy trên Windows. Để chạy chương trình này trên một hệ điều hành khác, như Linux chẳng hạn, bạn sẽ cần phải biên dịch lại trên Linux. Bạn có thể tự hỏi liệu đó có phải là vấn đề hay không, nhưng cần nhớ rằng không phải ai cũng có chương trình biên dịch và không phải ai cũng biết cách biên dịch một chương trình, chưa kể vấn đề không tương thích giữa 2 môi trường. Điều này tạo rất nhiều khó khăn trong việc phát triển, phân phát, hướng dẫn sử dụng phần mềm.

Thêm vào đó là sự ra đời của mạng Internet, nơi mà sự đa dạng về cấu hình máy của người truy cập là rất lớn. Nhu cầu cần có một ngôn ngữ lập trình có thể chạy trên mọi cấu hình máy tính càng trở nên cấp thiết. Và đó chính là lí do ra đời của ngôn ngữ lập trình Java.

Tháng 5 năm 1995, hãng Sun cho ra đời ngôn ngữ lập trình Java - quảng cáo nó như là một ngôn ngữ lập trình "viết một lần - chạy mọi nơi" (write once - run anywhere). Java giải quyết vấn đề tương thích bằng cách thay vì biên dịch trực tiếp từ mà nguồn (con người hiểu được) sang mã máy (mã nhị phân 1-0 chỉ có máy hiểu được), các chương trình sẽ được biên dịch sang một mã trung gian. Các thiết bị máy tính sẽ được trang bị một phần mềm gọi là máy ảo Java (Java Virtual Machine), giúp biên dịch mã trung gian này tương ứng với cấu hình của mỗi máy và chạy chương trình.

Mặc dù như vậy thì chưa hoàn toàn giải quyết một cách triệt để vấn đề, giải pháp này có một lợi điểm đặc biệt quan trọng là người dùng không cần phải làm gì cả - chỉ cần thiết bị của họ hỗ trợ công nghệ Java, một điều mà hầu như tất cả các hãng thiết kế đều làm. Java đạt được một thành công quan trọng khi thuyết phục Netscape hỗ trợ Java Virtual Machine trong trình duyệt Netscape Communicator (tại thời điểm đó, Netscape Communicator phổ biến nhất), khiến Java hứa hẹn trở thành một ngôn ngữ của Internet. Thế nhưng, Java đã không được như vậy…

Thực tế của Java

Nếu so sánh những gì đã đạt được, Java thậm chí còn đánh mất nhiều thứ hơn. Thực tế giờ đây của Java: Ứng dụng viết bằng Java chỉ đếm trên đầu ngón tay. Java cũng không đóng vai trò gì đáng kể trong sự phát triển của các ứng dụng Web. Mặc dù đạt được một số thành công trong lĩnh vực di động, Java cũng không hoàn toàn có một lợi thế rõ ràng nào so với các ngôn ngữ khác (đặc biệt là công nghệ .NET của Microsoft gần đây). Đâu là lí do của những thất bại này?

Thực tế mà nói, Java có đầy đủ các yếu tố để thành công. Java, được xây dựng trên ý tưởng từ C và C++, là một ngôn ngữ lập trình hướng đối tượng rất mạnh. Cái ý tưởng dùng một trình máy ảo để đảm bảo các phần mềm viết bằng Java có thể chạy bất kỳ đâu không phải là một ý tưởng tồi, nếu không muốn nói là rất thành công (bằng chứng là công nghệ .NET của Microsoft gần đây cũng dựa trên ý tưởng này). Java cũng là một ngôn ngữ mã nguồn mở (mặc dù Sun giữ quyền kiểm soát những thay đổi).

Có rất nhiều lý do giải thích nguyên nhân dẫn đến thực tế hiện tại của Java, bao gồm cả yếu tố kỹ thuật cũng như chiến lược phát triển. Chưa thật sự nắm rõ Java, tớ xin không bàn về các yếu tố kỹ thuật ở đây. Một số liên kết đến các bài viết bàn về những điểm yếu kỹ thuật của ngôn ngữ Java có thể tìm thấy ở cuối bài.

Một trong những nguyên nhân được đề cập đến nhiều nhất là chiến lược phát triển. Mặc dù bạn có thể dùng bất kỳ phần mềm biên tập nào để viết Java, và trình biên dịch Java được cho miễn phí, nhưng với một ngôn ngữ với nhiều thư viện như Java thì để phát triển sẽ đòi hỏi cần phải có một môi trường hỗ trợ mạnh. Và các phần mềm phát triển này không rẽ chút nào. Gần đây có Eclipse là một môi trường mở, miễn phí và cũng rất mạnh phần nào giải quyết vấn đề này.

Ứng dụng viết bằng Java chạy rất chậm so với các phần mềm được viết riêng biệt cho từng loại máy. Như đã nói ở trên, Sun giải quyết vấn đề tương thích bằng cách chuyển mã nguồn sang mã trung gian và sử dụng phần mềm máy ảo để biên dịch mã trung gian này. Vì chạy trên một môi trường "gần như là giả lập", một phần mềm viết bằng Java không thể nào chạy nhanh như các phần mềm chạy trực tiếp. Mặc khác, một giới hạn rất rõ ràng của Java là về mặt giao diện. Sẽ là rất khó để có thể viết một phần mềm bằng Java với giao diện tùy biến với nhiều hiệu ứng. Giao diện Swing được đưa ra để giải quyết phần nào vấn đề này nhưng quả thật không ai muốn ứng dụng của mình nhìn chính xác giống như những ứng dụng khác, đặc biệt là khi sự phát triển của phần cứng cho phép có thể có các ứng dụng với giao diện đồ họa mạnh. Những yếu tố này dẫn đến thực tế là hầu như không có ứng dụng dành cho máy tính cục bộ nào viết bằng Java.

Cần nhớ rằng Java sẽ chí bộc lộ rõ lợi thế của mình trong môi trường Internet (các ứng dụng được đặt trên máy chủ) và di động. Viết các ứng dụng Java không phải là vấn đề quá khó khăn, nhưng tìm nơi để đưa nó vào hoạt động là cả một vấn đề. Sự phức tạp của cơ chế hoạt động bên trong Java đẩy chi phí máy chủ Java lên quá cao. Giá các phần mềm Java vì vậy cũng bị đẩy lên cao. Đây chính là nguyên nhân dẫn đến việc ngay cả trên môi trường Internet cũng không có mấy ứng dụng viết bằng Java (nói cho chính xác là so với các ngôn ngữ khác như PHP, ASP,…)

Ở trên là 2 yếu tố chủ quan. Cần kể thêm một yếu tố khách quan là xu hướng phát triển của ứng dụng Internet không hoàn toàn như những gì mà người ta trông đợi trong giai đoạn đầu của nó. Trong những ngày đầu của Internet, mọi người đều nghĩ đến một tương lai mà các phần mềm như Word, Excel được chứa trên máy chủ. Người dùng chỉ việc vào một trang web và mở ứng dụng đó ra làm việc. Các ưng dụng Internet không phát triển theo hướng đó, ít nhất là cho đến bây giờ. Câu hỏi bây giờ không phải là liệu những ứng dụng như vậy có khả thi hay không, mà là liệu chúng có cần thiết hay không. Các ứng dụng Web ngày nay vẫn có thể đạt đến mức tiện lợi gần như các ứng dụng bình thường mà không cần phải dùng đến Java (điển hình như Gmail). Thêm vào đó là sự ra đời của các công nghệ khác như Flash, cũng có khả năng tương thích cao như Java, khiến cho nhu cầu cần dùng Java càng ít hơn.

Phải chăng Java đang trở thành một Pascal thứ 2?

Hầu như tất cả những ai theo học máy tính đều phải học Pascal. Pascal là một thứ ngôn ngữ hoàn toàn không có khả năng áp dụng vào thực tế, nhưng nó được chọn như là một thứ ngôn ngữ nền tảng, kinh điển được dạy cho mọi sinh viên công nghệ thông tin. Java giờ đây cũng gần như vậy.

Tất nhiên, không giống như Pascal, Java vẫn là một ngôn ngữ có khả năng áp dụng vào thực tế rất mạnh. Nhưng nếu xét về vai trò thì sẽ thấy là vai trò của Java ngày nay trong việc dạy lập trình quan trọng hơn nhiều so với vai trò của nó trong việc ứng dụng. Java là một ngôn ngữ lập trình hướng dối tượng rất, rất mạnh. C++ cũng là một ngôn ngữ lập trình hướng đối tượng nhưng nó không được rõ ràng như Java. Có thể nói cách nhanh nhất để nắm khái niệm về lập trình hướng đối tượng là thông qua Java. Đó chính là lí do tại sao ngày nay Java được xem như là một ngôn ngữ bắt buộc phải học cho mọi sinh viên công nghệ thông tin.

Hỏi các sinh viên học công nghệ thông tin xem liệu họ có thích Java không thì 9/10 trả lời là có và rất thích. Nhưng nếu hỏi bạn có định sử dụng Java như là một ngôn ngữ chính để viết phần mềm sau này không thì số người trả lời có chỉ đếm trên đầu ngón tay. Tại sao vậy? Ngoài các yếu tố đã kể ở trên, còn một yếu tố khách quan khác nữa. Hãy thử tự đặt mình là người tuyển nhân viên. Bạn có thật sự cần một người biết Java? Liệu một người biết Java có thêm được lợi thế nào không? Có lẽ là không bởi hầu như tất cả các sinh viên ra trường đều được xem như là đã biết Java. Một sinh viên nếu nói là biết .NET chắc chắn sẽ có ân tượng cao hơn nhiều. Điều này cũng giống như không ai hỏi một sinh viên có biết ngôn ngữ Pascal hay không vậy.

Tất nhiên, cũng có những công ty chỉ tuyển những người rất giỏi về Java, và lương có thể sẽ rất cao, nhưng số công ty như vậy không nhiều. Java giờ đây giống như một môi trường để khám phá nhiều hơn là ứng dụng. Java có thể sẽ không trở thành một Pascal thứ 2 do vẫn có rất nhiều lĩnh vực đòi hỏi những tính năng của Java, nhưng cá nhân tớ cho rằng vai trò của nó có lẽ sẽ ngày càng giống với Pascal hơn.

Một số bài viết phê bình khác về Java

Như đã nói ở trên, bản thân cách thức Sun viết ra ngôn ngữ Java cũng còn rất nhiều những lổ hổng, giới hạn trong thiết kế. Tớ không có đủ khả năng êể viết về chủ đề này nên xin giới thiệu một số bài viết của các chuyên gia khác về mặt này:

A java Critique: bàn chi tiết về một số điểm yếu trong cách thức thiết kế của Java.

(Slightly Skeptical) Java Page: Bạn sẽ tìm thấy rất nhiều những bài viết khen/chê cũng như so sánh Java với các ngôn ngữ khác ở trang này.

A Critique of Java bởi Harold Thimbleby (tài liệu pdf)

A Quick Critique of Java bởi Brian Wilson

From http://nguoitapviet.info

WEB STANDARDS – ƯỚC mơ chuẩn hóa web

webstandards Trong những năm gần đây, trong giới phát triển Web, cụm từ “Web standards” được nhắc đến như một xu hướng thiết kế Web cho hiện tại và tương lai. Vậy Web standards thực chất là gì? Tại sao chúng ta phải quan tâm tới nó? Và liệu đó có phải là câu trả lời cuối cùng cho những vấn đề trong quá trình phát triển Web không? Với loạt 3 bài viết về Web Standards, tôi hy vọng có thể phần nào giúp bạn tìm ra câu trả lời thích đáng.

1. Vấn đề của World Wide Web

Khi Tim Berners-Lee tạo ra World Wide Web, có lẽ ông cũng không tưởng tượng ra đến một ngày phát minh của ông lại có thể thay đổi cách nhân loại giao tiếp, kinh doanh, chia sẻ thông tin đến như vậy. Một thế giới (ảo) mới được tạo thành. Trong thế giới đó, mỗi một website, một trang web tùy theo mức độ lớn nhỏ có thể được xem như một thành phố, một khu vực hay một ngôi nhà trong thế giới thực. Các ngôi nhà mà chúng ta đang sống có thể rất khác nhau về phong cách, thiết kế, nhưng cơ bản đều được xây dựng dựa trên những nguyên tắc chung về kiến trúc. Ngay cả những bản vẽ cũng được thiết kế theo một chuẩn nhất định nhằm bảo đảm ý tưởng của kiến trúc sư được hiểu và thực thi chính xác bởi nhân viên thi công.

Thế giới Web cũng tương tự. Đã trong một thời gian khá dài, sự thiếu vắng một chuẩn thiết kế được chấp nhận rộng rãi trong cộng đồng phát triển Web đã dẫn đến nhiều vấn đề đau đầu cho các nhà thiết kế cũng như thiệt hại cho người dùng. Một số vấn đề “nổi cộm” bao gồm:

  1. Sự thiếu tương thích giữa các trình duyệt: Internet Explorer là một ví dụ tai tiếng về sự thiếu tôn trọng những chuẩn chung. Hậu quả là các trang web được thiết kế cho “đa số người dùng” sử dụng IE đã hiển thị sai lệch trong các trình duyệt khác. Một điểm đáng chú ý khác là thị phần của IE đã bị thu hẹp đáng kể trong năm nay (2006), còn khoảng hơn 80%.
  2. Lãng phí thời gian và tiền bạc cho việc thiết kế Web: để giải quyết vấn đề không tương thích, một số website lớn đã phải thiết kế nhiều phiên bản khác nhau cho nhiều trình duyệt. Thay vì tập trung sáng tạo cho trang web, việc kiểm tra, sửa lỗi không tương thích chiếm một phần lớn thời gian của designer. Tệ hơn, trong một số trường hợp để bảo đảm cho website của mình hiển thị đúng cho mọi trường hợp, designer đã phải sử dụng các thủ thuật (gọi là “hack”) trong thiết kế của mình, khiến việc duy trì website trong tương lai rất khó khăn. Nếu trình duyệt nâng cấp lên phiên bản mới, các “hack” đó rất có thể sẽ không còn hoạt động.
  3. Không tương thích với các thiết bị truy cập Web khác ngoài trình duyệt: Hiện tại người dùng không chỉ sử dụng trình duyệt để lướt web, họ còn dùng điện thoại di động, PDA, TV. Trong tương lai sẽ còn rất nhiều thiết bị khác được trang bị khả năng truy cập Web (Tủ lạnh, Đồng hồ, v.v…) Nếu mỗi thiết bị đó đều hiển thị website một cách khác nhau, thì sẽ gây phiền toái cho người dùng, cho chủ nhân của website và cho designer.
  4. Khó truy cập, khó sử dụng đối với người dùng: mỗi người đều có cách thức khác nhau để truy cập Web. Nếu website của bạn thiết kế không theo chuẩn, người dùng sẽ rất khó tùy biến chúng theo nhu cầu của mình. Ví dụ, những người cao tuổi hoặc cận thị rất cần sự hỗ trợ của trình duyệt hoặc trang web để có thể đọc được những văn bản với khổ chữ lớn hơn. Mặc dù đa số các trình duyệt đều hỗ trợ tính năng này, nhưng cách thức hỗ trợ không nhất quán (IE không hỗ trợ tính năng tăng cỡ chữ nếu website đặt font theo kiểu pixel). Vì vậy, website không thiết kế theo chuẩn sẽ loại bỏ tính năng này (và nhiều tính năng hữu ích khác) của IE và trình duyệt nói chung. Đó là chưa kể đến trường hợp những người khiếm thị sử dụng máy đọc để lướt Web (tôi không biết ở Việt Nam có ai sử dụng chưa).
2. Mục tiêu của Web Standards

Trước tình hình đó, năm 1998, W3C (World Wide Web Consortium), đã thành lập Dự án chuẩn hóa Web (The Web Standards Project - hay WaSP) nhằm thiết lập một số chuẩn chung nhất cho các công nghệ, ngôn ngữ sử dụng trong việc thiết kế Web. “Web Standards”, tên gọi chung của các chuẩn, được kỳ vọng sẽ giúp giảm thiểu tối đa chi phí và sự phức tạp trong phát triển Web đồng thời cũng mang lại lợi ích cho người dùng qua việc cải thiện khả năng truy cập (accessibility) của Website.

3. Thành phần làm nên Web Standards

Vẫn có một số hiểu lầm rằng WaSP đã tạo ra các ngôn ngữ, công nghệ được khuyên dùng trong Web Standards. Trên thực tế, WaSP chỉ khuyến khích việc sử dụng các ngôn ngữ này (vốn được phát triển bởi W3C và các tổ chức khác) và làm thế nào sử dụng chúng một cách tối ưu nhất. Những chuẩn nền tảng nhất mà một Web developer cần phải biết bao gồm:

  • HTML - HyperText Markup Language
    Đây là ngôn ngữ lâu đời và (do đó) được sử dụng phổ biến nhất trên Web. Mục đích chính của HTML là thiết lập cấu trúc cho các tài liệu Web. Điểm yếu của ngôn ngữ lâu đời này thiếu đi tính nhất quán trong cú pháp (ví dụ: có thẻ mở mà không cần thẻ đóng), và trộn lẫn cả những yếu tố định dạng văn bản (màu sắc, kiểu chữ). Vì vậy, nó có xu hướng được thay thế dần bằng XHTML và CSS.
  • XML - Extensible Markup Language
    Cũng là một ngôn ngữ đánh dấu như HTML, nhưng thay vì chỉ có một số lượng thẻ nhất định, XML cho phép bạn tạo ra và định nghĩa thẻ của mình, hoặc dùng lại các thẻ của người khác. Đặc tính đó giúp XML uyển chuyển hơn HTML trong việc lưu trữ và tìm kiếm thông tin với khối lượng lớn. Tuy nhiên, vì sự hỗ trợ XML của các trình duyệt vẫn còn khá kém, nên hiện tại XML chủ yếu được dùng trong database và search engine. Để hiển thị thông tin cho người đọc, xHTML và CSS là lựa chọn tốt nhất ở thời điểm này.
  • XHTML - Extensible HyperText Markup Language
    XHTML là một sự kết hợp giữa sự chặt chẽ trong cấu trúc của XML và sự phổ biến của HTML. Tất cả các trình duyệt hiện tại đều hỗ trợ XHTML khá tốt, kể cả các trình duyệt của di động và PDA. Việc chuyển đổi thông tin từ XHTML sang các dạng khác (XML) cũng dễ dàng hơn so với HTML do cấu trúc logic của nó.
  • CSS - Cascading Style Sheets
    Một xu hướng quan trọng trong phát triển web hiện nay là sự tách biệt giữa cấu trúc, định dạng và hành vi. XHTML xây dựng nên cấu trúc, CSS giúp thay đổi “bề mặt” của website theo đúng ý tưởng thẩm mỹ của designer. Đây chính là “mảnh đất dụng võ” của designer. Trong trường hợp lý tưởng (designer hiểu và đánh giá cao lợi ích của Web Standards)tất cả những yếu tố liên quan đến design như màu sắc, font chữ, hình ảnh background đều được định dạng bằng CSS. Sử dụng CSS cũng giúp tiết kiệm thời gian và công sức của designer rất nhiều khi có thể kiểm soát được thiết kế của toàn bộ site. Ví dụ: nếu cần thay đổi một chi tiết nào đó, hoặc thậm chí thiết kế lại toàn bộ giao diện của site, designer chỉ đơn giản thay đổi các thuộc tính CSS mà không cần đụng chạm vào cấu trúc (X)HTML. Nếu file CSS được tách riêng thì designer chỉ cần sửa chữa trong file đó mà không phải sửa từng file (X)HTML một.
  • DOM - Document Object Model
    Có thể coi DOM như một công cụ giúp developer điều khiển đến tất cả đối tượng trên trang web, từ các thành phần cấu trúc đến định dạng và cả nội dung được tạo ra bởi (X)HTML và CSS. Nói một các chính xác, DOfM mô hình hóa tất cả các đối tượng (Object) của văn bản (Document) dưới dạng một mô hình cây phân nhánh (tưởng tượng như một sơ đồ tổ chức nhân sự của các cơ quan). Tóm lại, DOM cung cấp một cách thức đơn giản giúp developer “chộp” bất cứ thành phần nào trên trang web. Sau khi đã “chộp” được, designer có thể sử dụng và thao tác chúng bằng các ngôn ngữ khác, chẳng hạn như JavaScript, PHP hoặc XML.
  • ECMA Standards
    Có lẽ đây là một trong số những chuẩn mà bạn chưa từng nghe. Nhưng về bản chất, đó là một trong số những ngôn ngữ quen thuộc nhất của web developer: JavaScript. Sở dĩ có tên là ECMA vì European Computer Manufacturers Association đã kết hợp ngôn ngữ kịch bản JavaScript của Netscape và JScript của Microsoft lại thành một chuẩn thống nhất, gọi là ECMAScript. Tuy vậy, các developer trên thế giới vẫn gọi đó là JavaScript, vì cái tên đó đã trở nên quá quen thuộc với họ.Do vậy, kể từ nay trên SonnyMotives, chúng ta sẽ vẫn gọi JavaScript là… JavaScript.
    JavaScript được tạo ra nhằm làm cho trang Web “sống động” hơn. Vì JavaScript chạy trên máy khách, nó có thể tương tác tức thì với các hành vi của người dùng (click chuột, kéo và thả). Để làm được điều này, designer sử dụng JavaScript để điều khiển các đối tượng trên trang Web đã được xác định bởi DOM. Những đối tượng đó có thể bị dời đi, xóa, sửa và tạo mới tùy thích. Những ứng dụng phổ biến nhất của JavaScript là các hiệu ứng như chữ chạy lăng quăng trên trang web, thay đổi hình khi trỏ chuột vào (rollover), và nổi nhất gần đây là AJAX.

Trên đây chỉ là khái niệm sơ đẳng nhất về các thành phần quan trọng của Web Standards. Có thể nói mỗi thành phần lại là cả một thế giới riêng với vô số kỹ thuật, ứng dụng khác nhau. Nhưng tôi tin rằng, để trở thành một web designer thực sự, 4 thành phần quan trọng thiết yếu mà chúng ta cần phải biết, theo thứ tự ưu tiên là:

  • XHTML: tạo cấu trúc văn bản.
  • CSS: định dạng văn bản.
  • DOM: mô hình của các đối tượng, tạo bởi XHTML và CSS. Sở dĩ tôi đặt DOM trước JavaScript là vì bạn có thể sử dụng DOM với các ngôn ngữ lập trình khác, PHP hay ASP đều được. Mặc khác, nếu bạn học JavaScript trước, rất có “nguy cơ” là bạn sẽ viết JavaScript một cách tùy tiện, gây khó khăn trong việc kiểm tra, sửa lỗi và phát triển sau này. Nếu các bạn chú ý, bất kỳ một cuốn sách về JavaScript “tử tế” nào đều dành một phần đáng kể để giới thiệu về DOM trước. Nhắc đến sách, cuốn sách hay nhất theo tôi về DOM và JavaScript là Dom Scripting của Jeremy Keith, người đã làm sống lại việc sử dụng DOM cũng như đưa ra ý tưởng tách biệt hành vi và cấu trúc trên trang Web.
  • JavaScript: định nghĩa hành vi của các đối tượng trên trang web, giúp chúng tương tác với người dùng.
4. Lợi ích

Sau đây là một số lợi ích đáng kể của Web Standards, bạn cần thuộc lòng chúng phòng khi cãi nhau với các designer theo trường phái “truyền thống” và khi thuyết phục boss hoặc khách hàng về tính ưu việt của website do bạn thiết kế, dĩ nhiên trong trường hợp bạn thật sự thiết kế theo Web Standards:

  1. Hỗ trợ tốt cho search engine: chính cấu trúc chặt chẽ, không chen lẫn các thẻ định dạng đã giúp các search engine dễ dàng đọc, “hiểu” và đánh giá được nội dung trong những trang web theo chuẩn. Vì vậy, website theo chuẩn dễ được search engine xếp hạng cao hơn. Search engine trong chính website đó cũng được lợi tương tự, dẫn đến kết quả tìm kiếm chính xác hơn.
  2. Dung lượng các trang Web được thu nhỏ đáng kể, khiến thời gian tải xuống ngắn hơn (tránh cho người dùng dial-up ngồi … ngáp khi truy cập website của bạn) và tiết kiệm băng thông (tiền!)
  3. Tương thích với các trình duyệt tương lai: khi design của bạn sử dụng Web Standards, bạn có thể yên tâm rằng Website của bạn sẽ chạy tối với các bản nâng cấp trình duyệt, hoặc thậm chí một trình duyệt mới toanh nào đó trong tương lai.
  4. Tính tương thích ngược: Một điều mà chúng ta phải chấp nhận là các trình duyệt cũ không thể hiểu được những kỹ thuật của ngày nay. Tuy vậy, Web standards giúp các trình duyệt “cổ” đó hiển thị được đầy đủ những thông tin của website theo một cấu trúc cơ bản nhất mà người dùng có thể hiểu được. Hơn thế nữa, việc thiết kế theo chuẩn bảo đảm website của bạn sẽ tiếp tục hoạt động tốt trong tương lai bất chấp các công nghệ mới ra đời. Vì các chuẩn Web này sẽ luôn được cân nhắc kỹ lưỡng khi nâng cấp sao cho bản nâng cấp hay công nghệ mới phải tương thích với các thế hệ cũ hơn.
  5. Dễ dàng chuyển văn bản Web sang các dạng khác, chẳng hạn như database hay Word.
  6. Quá trình phát triển Web được rút ngắn và đơn giản hóa. Code trở nên logic hơn, dễ đọc và dễ hiểu.
  7. Dễ duy trì và sửa chữa: Một website có thể được thiết kế bởi nhiều designer khác nhau trong từng giai đoạn. Web standards thiết lập những luật chung mà bất cứ Web designer cũng có thể hiểu và áp dụng. Nên khi website được giao cho một designer mới, anh ta cũng có thể nhanh chóng tiếp tục những gì còn gì đang dang dở của người tiền nhiệm.
  8. Dễ truy cập (Accessibility): mang trang web của bạn tới mọi người, từ những người khuyết tật, phải sử dụng các thiết bị đọc Web đặc biệt tới người dùng sử dụng các thiết bị cầm tay.
5. Bất lợi

Một số bất lợi đó là:

  1. Bất lợi lớn nhất của việc thiết kế theo Web Standards là bạn phải làm quen với một cách thiết kế hoàn toàn mới so với cách thiết kế dựa vào table (table-based) trước đây.
  2. Bên cạnh đó, một số trình duyệt xưa có thể không hiển thị đúng tuyệt đối layout mà bạn thiết kế.
  3. Cho đến thời điểm này, sự hỗ trợ thiếu đồng bộ giữa các trình duyệt về Web Standards cũng khiến việc test browser compatibility còn tương đối khó khăn. Nhưng trong vài năm tới, với việc ra đời của IE7 và lượng người sử dụng các trình duyệt cũ ngày càng giảm, mọi chuyện sẽ dễ dàng hơn.
6. Kết luận

Là một web developer/designer, chúng ta thường xuyên phải đối diện với vấn đề về sự không nhất quán trong việc hiển thị website ở các trình duyệt khác nhau. Web standards giúp giải quyết vấn đề đó đồng thời mang lại nhiều lợi ích khác cho cả nhà phát triển và người dùng. Kết quả là thời gian phát triển website được rút ngắn, duy trì dễ dàng. Việc tìm và sửa lỗi đơn giản hơn vì các dòng lệnh được viết theo chuẩn.

Do vậy, vấn đề của chúng ta, ở vị trí là một Web professional, không phải là việc quyết định có nên theo Web Standards hay không. Chưa kể đến nhiều ưu điểm kể trên, Web Standards đã là xu hướng tương lai của Web, bạn không có lựa chọn nào khác. Vấn đề của bạn là tận dụng những ưu điểm của Web Standards để tạo ra những website không những đẹp “trên cả tuyệt vời” mà còn dễ sử dụng, thân thiện với người dùng.

Cuối cùng, nếu bạn đã sử dụng hoặc đang tập sử dụng Web Standards, hãy tận dụng mọi cơ hội để nói về Web Standards cùng ưu điểm của nó với bạn bè, đồng nghiệp và mọi người. Vì suy cho cùng, bất cứ chuẩn nào cũng chỉ trở thành chuẩn thật sự khi mọi người đều sử dụng nó.

7. Tài liệu

Sau đây là một số tài liệu mà tôi cho là hữu ích đối với Web designer/developer ở bất kỳ trình độ nào. Thật ra điều này theo tôi là không cần thiết lắm, vì nếu bạn thật sự muốn tìm tòi, mọi thứ bạn cần đều đã ở trên Internet, google là ra ngay. Nhưng để giúp bạn dễ dàng hơn, sau đây là 3 nguồn tài liệu mà tôi cho là tốt nhất. Tại sao chỉ có 3? Đầu tiên, cái gì có sẵn sẽ không quí. Thứ hai, tôi không muốn “reinvent the wheel”, các tài liệu và “tập hợp các tài liệu” đã đầy dẫy trên mạng rồi. Yêu cầu: Anh văn và đam mê.

  • A List Apart: tạp chí uy tín nhất về Web Standards. Nhiều ý tưởng, kỹ thuật trong thiết kế Web sử dụng ngày nay xuất phát từ các bài viết “chất lượng cao” ở đây.
  • Web developer’s Handbook: Quyển sổ ghi chú đầy đủ nhất về các Website hữu ích cho một Web professional.
  • Veerle’s interesting links: Cũng tương tự như Web developer’s Handbook, nhưng tập hợp các link của Veerle tập trung vào khía cạnh design (cụ thể là CSS design) hơn. Veerle là một designer tài năng, và cũng là CEO của một công ty phát triển Web nhỏ nhưng thành công. Blog này cũng là nơi cô chia sẻ kinh nghiệm của mình với cộng đồng phát triển Web.

Từ http://sonnymotives.com/

2 tháng 3, 2009

Buzz bài 2009

Một kỳ tích cho sự lười biếng. Củng có thể! Sau 3 năm mới mon men lại cái blog này. Có thể vì có quá nhiều blog chăn!

Cái gì tốt nhất là cái ta đang có... chỉ có vậy mà không hiểu!