Ngôn ngữ lập trình Go có gì hay?

Khai thác sức mạnh đa lõi

Vấn đề khai thác sức mạnh của những bộ vi xử lý đa lõi và thế hệ phần cứng mới là nhiệm vụ gần như “bất khả thi” của các ngôn ngữ lập trình hướng đối tượng hiện có của thế giới. Google đã đặt ra mục tiêu giải quyết sự bất cập này ngay từ khi có ý định hiện thực hóa dự án Google Go. Không chỉ khai thác tối đa các nền tảng đa lõi, Go còn được trang bị thêm khả năng giúp cho các nhà lập trình xử lý vấn đề “quản lý bộ nhớ trong quá trình hoạt động của phần mềm”. Thêm vào đó, Go phải có tốc độ vượt trội và đã gần đạt tới tốc độ của C và C++.

"Việc cho ra đời một phần mềm ngày càng trở nên khó khăn hơn”, Pike nói, "Tuy những chiếc máy tính đã nhanh hơn rất nhiều nhưng quá trình xử lý thông tin của các phần mềm tỏ ra không cải thiện là bao nhiêu. Nhiệm vụ của Go là phải đưa lĩnh vực phần mềm theo kịp tốc độ của sự phát triển phần cứng”.

Google đã thử nghiệm thành công Go bằng việc sử dụng chính nó để xây dựng website cho nó nhưng tham vọng của họ lớn hơn đó rất nhiều: Đưa Go vào xây dựng các phần mềm chạy trên máy chủ và bước thử nghiệm tiếp theo là dùng Go cho dịch vụ Gmail của mình và tiến tới thay thế hoàn toàn nhiệm vụ của JavaScript.

"Ít nhất thì nó (Go) cũng phải tốt hơn JavaScript", Pike tuyên bố mặc dù vẫn thừa nhận rằng một số dịch vụ, sản phẩm của họ đang phải nhờ đến JavaScript.

Một đặc tính mới rất thú vị của Go là các tác vụ sẽ được chia sẻ bởi chính server và máy trạm (thậm chí là điện thoại di động) trong quá trình sử dụng dịch vụ.

Có một thông tin về Go khiến không ít chuyên gia ngạc nhiên: Ngôn ngữ lập trình này đang sử dụng cả một công nghệ đã ra đời từ những năm 1960 có tên gọi CSP (communicating sequential processes) để xử lý các tương tác trong một gói chương trình hợp tác.

"Chúng tôi không dám chắc mình sẽ xử lý được những vấn đề của lập trình đa lõi nhưng chúng tôi sẽ xây dựng được một môi trường mà ở đó một phần của nền tảng kiến trúc đa lõi sẽ được khai thác hiệu quả hơn”, ông Pike nói.

Ngoài ra, Go còn có thể ứng dụng thêm một số thành phần mở rộng cho phép các tác vụ hoạt động trên các máy chủ đa lõi thông qua một mạng lưới kết nối khác.

Tìm kiếm sự giúp đỡ

Nhóm phát triển Go đang lên tiếng kêu gọih những chuyên gia bên ngoài Google giúp đỡ họ trong dự án này đặc biệt là những sự giúp đỡ trong hệ thống thư viện cho phép tăng tốc lập trình bằng việc cung cấp các công cụ và thành phần để lập trình viên không phải mất công xây dựng từ đầu.

Go cũng cần được cải thiện thêm về khả năng đóng gói phần mềm. Chuyên gia Thompson đã viết một số chương trình hỗ trợ cho các nền tảng máy chủ x86 32 và 64 bit cũng như các bộ vi xử lý ARM.

ARM là bộ vi xử lý đang thống trị thế giới thiết bị di động và đây cũng chính là lĩnh vực mà Google đang rất muốn bành trướng cùng với hệ điều hành Android của mình. Nếu Go hỗ trợ tốt với nền tảng của ARM, các phần mềm viết bằng Go sẽ có thêm nhiều cơ hội phát triển hơn.

"Chúng tôi làm việc này trước tiên là vì Google nhưng chúng tôi đã quyết định sẽ phải mở nó ra với cộng đồng và mong muốn nhận được sự giúp đỡ của cộng đồng", Pike nói.

Và với những gì Google đang hy vọng vào Go cho thấy gã khổng lồ tìm kiếm này không có ý định biến Go thành một “kẻ thay thế” các ngôn ngữ lập trình hiện nay.

Theo CNET, ICTnews