Go là một mã nguồn mở, nền tảng, diễn cảm, phân phối miễn phí, thu gom rác, và đồng thời ngôn ngữ lập trình được phát triển bởi một đội ngũ kỹ sư tại Google. Với Go, bất kỳ nhà phát triển sẽ có thể xây dựng các ứng dụng ổn định, đáng tin cậy, và hiệu quả. Một vài ví dụ tương tác có sẵn trên trang chủ của dự án.
Có thể dễ dàng sửa lỗi bằng cách sử dụng GDB
Các mã được sản xuất bởi các ngôn ngữ lập trình Go có thể được dễ dàng sửa lỗi bằng cách sử dụng GDB (Dự án GNU Debugger) phần mềm mã nguồn mở. Để bắt đầu với Go trên hệ điều hành GNU / Linux của bạn, chỉ cần tải về các gói phần mềm tương ứng với máy tính & rsquo của bạn;. S kiến trúc, lưu trữ trên thư mục Home của bạn, và giải nén nó
Mở một ứng dụng Terminal, đi đến vị trí của & lsquo; bin & rsquo; thư mục (ví dụ: cd / home / softoware / đi / bin /) và chạy & lsquo; ./ đi --help & rsquo; lệnh để xem các tùy chọn dòng lệnh có sẵn và thông điệp sử dụng. Mở rộng thêm tài liệu về làm thế nào để bắt đầu với ngôn ngữ lập trình Go cũng được cung cấp trên trang web chính của dự án.
Tùy chọn dòng lệnh
lệnh được tích hợp trong của nó sẽ cho phép bạn biên dịch các gói và phụ thuộc, để liệt kê các gói, in thông tin về một môi trường Go, để loại bỏ các tập tin đối tượng, để sửa chữa gói, để tạo ra Go file bằng cách xử lý mã nguồn, để biên dịch và chạy một chương trình Go, và để kiểm tra gói.
Ngoài ra, bạn có thể chạy một công cụ cụ thể đi, chạy đi công cụ thú y trên bao bì, chạy gofmt về nguồn gói, biên dịch và cài đặt các gói và phụ thuộc, cũng như để tải về và cài đặt các gói và phụ thuộc.
Chạy trên GNU / Linux, BSD, Mac và Windows
Như đã đề cập ở phần đầu của bài tổng quan, Go là một ngôn ngữ lập trình đa nền tảng, có nghĩa là bạn có thể sử dụng nó trên bất kỳ phân phối GNU / Linux, cũng như trên BSD, Mac OS X, và điều hành Microsoft Windows hệ thống. Cả hai nền tảng máy tính 32 và 64-bit được hỗ trợ tại thời điểm này
là gì mới trong phiên bản này:.
- < li> Trình biên dịch và thời gian chạy đang viết hoàn toàn bằng Go (với một chút lắp ráp). C không còn tham gia trong việc thực hiện, và do đó, các trình biên dịch C mà đã từng là cần thiết cho việc xây dựng phân phối đã biến mất.
- Các bộ thu rác hiện đồng thời và cung cấp thời gian tạm dừng thấp hơn đáng kể bằng cách chạy, khi có thể, song song với goroutines khác.
- Theo mặc định, chương trình Go chạy với GOMAXPROCS thiết lập để số lượng các lõi có sẵn; trong phiên bản trước nó mặc định để 1.
- Hỗ trợ gói nội hiện đang được cung cấp cho tất cả các kho, không chỉ là lõi Go.
- Các lệnh di chuyển hiện nay cung cấp thử nghiệm hỗ trợ cho & quot; vendoring & quot; phụ thuộc bên ngoài.
- Một lệnh di chuyển công cụ hỗ trợ truy tìm dấu vết mới hạt mịn của chương trình thực hiện.
- A mới lệnh di doc (phân biệt với godoc) được tùy biến để sử dụng dòng lệnh.
là gì mới trong phiên bản 1.4.2:
- phát hành mới này có được gần bảy tháng sau khi phát hành của Go 1.1 tháng năm, một khoảng thời gian ngắn hơn nhiều so với 14 tháng giữa 1.1 và 1.0. Chúng tôi dự đoán một khoảng thời gian có thể so sánh giữa các phiên bản lớn trong tương lai.
- Go 1.2 bao gồm một vài thay đổi ngôn ngữ nhỏ, một số cải tiến để việc thực hiện ngôn ngữ và công cụ, một số cải tiến hiệu suất, và nhiều bổ sung và (tương thích ngược) thay đổi cho các thư viện chuẩn.
- Xin vui lòng đọc các ghi chú phát hành cho tất cả các chi tiết, như một số thay đổi có thể ảnh hưởng đến hành vi của (buggy) các chương trình hiện có. Những điểm nổi bật của việc phát hành những gì sau là.
- A ba chỉ số cú pháp lát mới bổ sung thêm khả năng xác định năng lực cũng như thời gian. Điều này cho phép các lập trình viên để vượt qua một giá trị miếng mà chỉ có thể truy cập một phần giới hạn của mảng cơ bản, một kỹ thuật mà trước đây đòi hỏi việc sử dụng các gói không an toàn.
- Một tính năng mới quan trọng của chuỗi công cụ là cơ sở để tính toán và kết quả kiểm tra bảo hiểm hiển thị. Xem các bài kiểm tra đi và tài liệu hướng dẫn cụ bìa để biết chi tiết. Cuối tuần này, chúng tôi sẽ công bố một bài viết mà thảo luận về tính năng mới này một cách chi tiết.
- Goroutines đang pre-emptively dự kiến, trong đó các scheduler được gọi thỉnh thoảng khi nhập cảnh đến một chức năng. Điều này có thể ngăn chặn goroutines bận rộn từ đói goroutines khác trên cùng một sợi.
- Sự gia tăng để mặc định goroutine ngăn xếp kích thước nên cải thiện hiệu suất của một số chương trình. (Các kích thước cũ đã có một xu hướng để giới thiệu đắt tiền chuyển đổi stack-segment trong các phần biểu diễn quan trọng.) Ở đầu bên kia, hạn chế mới về kích thước ngăn xếp và số lượng các đề hệ điều hành nên ngăn chặn các chương trình misbehaving từ tiêu thụ tất cả các nguồn tài nguyên của một máy . (Các giới hạn này có thể được điều chỉnh bằng cách sử dụng chức năng mới trong thời gian chạy / gói debug).
- Cuối cùng, trong số rất nhiều thay đổi trong thư viện chuẩn, thay đổi đáng kể bao gồm các gói mã hóa mới, các đối số được lập chỉ mục trong Printf chuỗi định dạng, và một số bổ sung thuận tiện với các gói mẫu.
là gì mới trong phiên bản 1.4.1:
- phát hành mới này có được gần bảy tháng sau khi phát hành của Go 1.1 tháng năm, một khoảng thời gian ngắn hơn nhiều so với 14 tháng giữa 1.1 và 1.0. Chúng tôi dự đoán một khoảng thời gian có thể so sánh giữa các phiên bản lớn trong tương lai.
- Go 1.2 bao gồm một vài thay đổi ngôn ngữ nhỏ, một số cải tiến để việc thực hiện ngôn ngữ và công cụ, một số cải tiến hiệu suất, và nhiều bổ sung và (tương thích ngược) thay đổi cho các thư viện chuẩn.
- Xin vui lòng đọc các ghi chú phát hành cho tất cả các chi tiết, như một số thay đổi có thể ảnh hưởng đến hành vi của (buggy) các chương trình hiện có. Những điểm nổi bật của việc phát hành những gì sau là.
- A ba chỉ số cú pháp lát mới bổ sung thêm khả năng xác định năng lực cũng như thời gian. Điều này cho phép các lập trình viên để vượt qua một giá trị miếng mà chỉ có thể truy cập một phần giới hạn của mảng cơ bản, một kỹ thuật mà trước đây đòi hỏi việc sử dụng các gói không an toàn.
- Một tính năng mới quan trọng của chuỗi công cụ là cơ sở để tính toán và kết quả kiểm tra bảo hiểm hiển thị. Xem các bài kiểm tra đi và tài liệu hướng dẫn cụ bìa để biết chi tiết. Cuối tuần này, chúng tôi sẽ công bố một bài viết mà thảo luận về tính năng mới này một cách chi tiết.
- Goroutines đang pre-emptively dự kiến, trong đó các scheduler được gọi thỉnh thoảng khi nhập cảnh đến một chức năng. Điều này có thể ngăn chặn goroutines bận rộn từ đói goroutines khác trên cùng một sợi.
- Sự gia tăng để mặc định goroutine ngăn xếp kích thước nên cải thiện hiệu suất của một số chương trình. (Các kích thước cũ đã có một xu hướng để giới thiệu đắt tiền chuyển đổi stack-segment trong các phần biểu diễn quan trọng.) Ở đầu bên kia, hạn chế mới về kích thước ngăn xếp và số lượng các đề hệ điều hành nên ngăn chặn các chương trình misbehaving từ tiêu thụ tất cả các nguồn tài nguyên của một máy . (Các giới hạn này có thể được điều chỉnh bằng cách sử dụng chức năng mới trong thời gian chạy / gói debug).
- Cuối cùng, trong số rất nhiều thay đổi trong thư viện chuẩn, thay đổi đáng kể bao gồm các gói mã hóa mới, các đối số được lập chỉ mục trong Printf chuỗi định dạng, và một số bổ sung thuận tiện với các gói mẫu.
là gì mới trong phiên bản 1.1.1:
- Trong năm 2011, chúng tôi đã công bố trong thời gian chạy Go cho App Engine . Kể từ đó, chúng tôi đã tiếp tục nâng cao kinh nghiệm Go App Engine, và nói chung là cải thiện Go hỗ trợ cho nền tảng đám mây của Google. Ví dụ, google-api-đi-client cung cấp một giao diện Tới một loạt các API công cộng của Google, bao gồm cả Compute Engine, Cloud Storage, BigQuery, Drive, và nhiều hơn nữa .
Bình luận không