Thứ Bảy, 6 tháng 9, 2008

James Gosling – Cha đẻ của ngôn ngữ lập trình Java


Ngày nay khi bạn nghĩ về Internet, có lẽ bạn nghĩ về những điều như các trình duyệt Web và những cỗ máy tìm kiếm. Khi bạn nghĩ về việc lập trình cho Internet, có thể bạn nghĩ về các ngôn ngữ, như HTML và Java. Và Java được phát minh bởi một nhà khoa học về máy tính người Canada tên James Gosling.

James Gosling sinh ngày 19 tháng 5 năm 1956 tại Canada. Ông thích máy tính từ rất sớm. Khi đến tuổi vào đại học, ông chọn học về khoa học máy tính tại trường Đại Học Alberta, và hoàn tất bằng Cử Nhân Khoa Học vào năm 1977.
Ông tiếp tục học tại Đại Học Carnegie-Mellon ở Pittsburgh, bang Pennsylvania, Mỹ. Tại trường Carnegie-Mellon, ông lấy bằng Tiến Sĩ cũng về khoa học máy tính. Tên đề tài luận án tiến sĩ của ông là The Manipulation of Algebraic Constraints (Thao tác những ràng buộc Đại số). Sau khi tốt nghiệp năm 1983 ông tham gia tập đoàn Sun Microsystems vào năm 1984. Hiện giờ ông là một kỹ sư phần mềm tại tập đoàn này. Ông là giám đốc kỹ thuật của nhóm sản phẩm dành cho nhà phát triển (Developer Products Group) của Sun. Ông được mọi người ghi nhớ như là người phát minh ra ngôn ngữ lập trình Java. Ông xây dựng bản thiết kế đầu tiên của Java và thực hiện trình biên dịch và máy ảo đầu tiên. Đối với thành công này ông được đề cử vào viện Hàn Lâm Kỹ Thuật Quốc Gia Hoa Kỳ (the United States National Academy of Engineering.)

Trước khi gia nhập Sun, ông đã xây dựng phiên bản hệ điều hành Unix đa bộ vi xử lý, hệ thống cửa sổ chương trình gốc Andrew, bộ công cụ, một số trình biên dịch và hệ thống mail. Ông cũng xây dựng Unix ‘Emacs’ đầu tiên, và giúp xây dựng một hệ thống thu nhận dữ liệu vệ tinh. Lúc đó ông là nhà nghiên cứu ở phòng thí nghiệm của Sun, nơi niềm đam mê chính của ông là những công cụ phát triển phần mềm. Khi ở tập đoàn Sun, Gosling đã tạo ra nhiều chương trình cùng với sự tiến bộ của công nghệ máy tính. Ông tạo ra một trình soạn thảo văn bản cho Unix gọi là ‘Emacs’, hiện nay là một trình soạn thảo rất phổ biến. Ông cũng tạo ra một phiên bản Unix đa bộ vi xử lý, cùng với một số trình biên dịch mã khác nhau. Ông lãnh đạo trong việc tạo ra Network Extensible Windowing System, hay NeWS, có thể phân tán khả năng xử lý của một mạng máy tính.

Tuy nhiên, thành tựu nổi bật nhất của ông là việc phát triển Java. Ban đầu nền tảng và ngôn ngữ Java là một dự án nội bộ của Sun Microsystems trong khoảng thời gian tháng 12/1990. Patrick Naughton, một kỹ sư tại Sun trở nên ngày càng thất vọng với hiện trạng của hệ giao diện lập trình ứng dụng C++ và C và những công cụ của Sun. Trong khi đang xem xét việc chuyển sang làm cho công ty NeXT (một công ty phần mềm sau đó được hợp nhất với Apple), Patrick được tạo cơ hội làm việc trên công nghệ mới và do dó dự án The Stealth Project được bắt đầu.

The Stealth Project sớm được đổi tên lại là Green Project với James Gosling và Mike Sheridan tham gia cùng với Patrick Naughton. Họ, cùng với một số kỹ sư khác bắt đầu làm việc tại một văn phòng nhỏ trên phố Sand Hill ở Menlo Park, bang California, để phát triển một công nghệ mới. Đầu tiên nhóm này xem xét việc sử dụng ngôn ngữ C++, nhưng nhiều người trong số họ, cũng như Bill Joy, nhận thấy C++ và hệ giao diện lập trình ứng dụng (API) hiện có gặp vấn đề vì một số lý do.

Nền tảng để chạy là một hệ thống nhúng và có tài nguyên giới hạn. Nhiều thành viên nhận thấy C++ quá phức tạp và những người phát triển phần mềm thường sử dụng sai nó. Họ nhận thấy việc C++ thiếu thu gom rác (garbage collection) cũng là một vấn đề. Bảo mật, lập trình phân tán, và sự hỗ trợ luồng cũng được cần đến. Cuối cùng, họ muốn một nền tảng mà có thể dễ dàng được chuyển đổi cho tất cả các loại thiết bị.

Theo những tài liệu ghi lại sẵn có, Bill Joy đã có ý tưởng về một ngôn ngữ mới kết hợp với những cái tốt nhất của ngôn ngữ Mesa và C. Trong một tài liệu tên Further, ông đã đề nghị với Sun rằng các kỹ sư của hãng nên tạo ra một môi trường hướng đối tượng dựa trên C++. Sự thất vọng với C++ của James Gosling bắt đầu trong khi làm việc trong Imagination, một trình soạn thảo ngôn ngữ đánh dấu tổng quát (SGML). Ban đầu, James cố gắng sửa đổi và mở rộng C++, cái tên mà ông nhắc đến là C++ ++ -- (là sự chơi chữ của tên C++ có nghĩa là C++ cộng thêm một số cái hay, và trừ đi một số cái dở), nhưng sớm bị loại bỏ để thuận lợi cho việc tạo ra một ngôn ngữ hoàn toàn mới, gọi là Oak, được đặt theo tên cây sồi đứng ngay ngoài văn phòng ông.

Giống như nhiều dự án bí mật nghiên cứu công nghệ mới, nhóm này làm việc nhiều giờ và vào mùa hè năm 1992, họ có thể biểu hiện những phần của hệ thống mới này bao gồm hệ điều hành Green, ngôn ngữ Oak, thư viện và phần cứng. Nỗ lực đầu tiên của họ tập trung và việc xây dựng thiết bị giống như máy trợ lý cá nhân dùng kỹ thuật số (PDA) có giao diện đồ họa cao và một nhân vật thông minh gọi là Duke để hỗ trợ người sử dụng.

Thiết bị này được đặt tên là Star7 theo tên một tính năng của máy điện thoại được kích hoạt bằng *7 trên phím điện thoại. Tính năng này khiến cho người sử dụng có thể trả lời điện thoại bất cứ ở đâu. Chính thiết bị PDA được chạy thử ngày 3 tháng 9 năm 1992.

Tháng 11 năm đó, Green Project được hỗ trợ để trở thành chi nhánh được sở hữu toàn bộ của Sun Microsystems: công ty FirstPerson. Nhóm này chuyển đến Palo Alto. Nhóm FirstPerson này quan tâm đến việc xây dựng những thiết bị có độ tương tác cao và khi Time Warner đưa ra yêu cầu đề nghị (RFP) đối với máy xem truyền hình kỹ thuật số, FirstPerson thay đổi mục tiêu của họ và phản hồi bằng việc đưa ra một hệ thống xem truyền hình. Tuy nhiên ngành công nghiệp truyền hình cáp này cảm thấy rằng nền tảng họ đưa ra quá nhiều kiểm soát đối với người dùng và FirstPerson thua cuộc dự thầu đối với SGI. Một cuộc làm ăn với công ty 3DO về loại máy này cũng không thành công. FirstPerson không thể gây được nhiều chú ý trong ngành công nghiệp truyền hình cáp đối với hệ thống của họ. Theo sau những thất bại, FirstPerson quay trở lại Sun.

Vào tháng 6 và 7 năm 1994, sau 3 ngày suy nghĩ, cùng với John Gage, James Gosling, Bill Joy, Patrick Naughton, Wayne Rosing, and Eric Schmidt, nhóm này đã thay đổi lại mục tiêu của họ, lần này là sử dụng công nghệ cho Internet. Họ cảm thấy rằng với sự xuất hiện của trình duyệt web Mosaic, Internet đang trên đường phát triển để cung cấp cho người dùng những hình ảnh có độ tương tác cao giống như họ đã cảm nhận đối với mạng truyền hình cáp. Patrick Naughton đã viết một trình duyệt web nhỏ, WebRunner, như là một mẫu ban đầu. WebRunner sau này được đặt tên lại là HotJava.

Cũng chính vào năm 1994 ngôn ngữ Oak được đổi tên lại là Java. Một lần tìm kiếm cho thấy là Oak đã được đăng ký tên thương mại bởi một nhà sản xuất bộ điều hợp video, vì vậy nhóm này đã tìm một tên mới. Tên Java được đặt ra tại một tiệm cà phê ở địa phương mà một số thành viên trong nhóm hay lui tới. Chúng ta cũng không rõ là tên Java có phải là tên viết tắt hay không. Có lẽ nó cũng không phải là tên viết tắt Tuy nhiên, theo một số tài liệu ghi lại Java là chữ viết tắt tên của James Gosling, Arthur Van Hoff, và Andy Bechtolsheim. Theo những người khác Java được tạo nên bởi chữ đầu của những từ Just Another Vague Acronym ghép lại. ( ND: có nghĩa là ‘lại thêm một từ viết tắt mơ hồ nữa’.)

Tháng 10 năm 1994, HotJava và nền tảng Java được chạy thử nghiệm cho các nhà quản trị của Sun xem. Năm 1994, mọi người có thể tải về dùng Java 1.0a, nhưng phải đến ngày 23 tháng 5 năm 1995 tại cuộc hội thảo SunWorld, John Gage, Giám Đốc Khoa Học của Sun Microsystems công bố rằng Java và trình duyệt web HotJava mới được tung ra công chúng lần đầu tiên. Theo sau lời công bố của ông, Marc Andreessen, Phó Chủ Tịch Điều Hành của Netscape cũng đưa ra lời công bố rất đáng ngạc nhiên rằng Netscape sẽ hỗ trợ Java trong trình duyệt của nó.

Tháng 1 năm 1996, nhóm kinh doanh JavaSoft được thành lập bởi Sun Microsystems để phát triển công nghệ này. Ngày nay Java là một trong những ngôn ngữ lập trình có nhiều ứng dụng quan trọng. Từ đó đến nay James Gosling vẫn tiếp tục làm việc tại Sun và có những đóng góp lớn trong việc phát triển chiến lược về công nghệ tại tập đoàn này.

Điều làm James Gosling nổi bật so với những người khác là ông là người tiên phong trong việc xây dựng bản thiết kế đầu tiên của ngôn ngữ lập trình Java. Ông đã có những đóng góp to lớn trong việc khởi xướng và phát triển nền công nghệ thông tin thế giới.

Thanh Hà Nguồn:tincntt

Không có nhận xét nào: