Go 1.19 đã được phát hành và đây là những tin tức về nó

Gần đây việc phát hành phiên bản mới của ngôn ngữ lập trình «Go 1.19» đã được công bố, một phiên bản cải tiến trên bản phát hành trước bằng cách bổ sung nhiều cải tiến khác nhau và trên hết là sửa lỗi. Trong số những điểm mới mà chúng tôi có thể nêu bật là cải tiến về quản lý bộ nhớ, cải tiến bảo mật, cùng những thứ khác.

Đối với những người mới làm quen với cờ vây, bạn nên biết rằng đây là một ngôn ngữ lập trình được phát triển với sự tham gia của cộng đồng như một giải pháp lai kết hợp hiệu suất cao của các ngôn ngữ biên dịch với các ưu điểm như ngôn ngữ kịch bản chẳng hạn sự dễ dàng của việc viết mã. phát triển và bảo vệ lỗi.

Cú pháp của Go dựa trên các yếu tố thông thường của ngôn ngữ C. với một số mượn từ ngôn ngữ Python. Ngôn ngữ khá ngắn gọn, nhưng mã rất dễ đọc và hiểu.

Mã Go được biên dịch thành các tệp thực thi nhị phân riêng biệt chạy nguyên bản, không sử dụng máy ảo (lập hồ sơ, gỡ lỗi và các hệ thống con khắc phục sự cố thời gian chạy khác được tích hợp sẵn dưới dạng các thành phần thời gian chạy).

Các tính năng mới chính của Go 1.19

Trong phiên bản Go 1.19 mới này được giới thiệu, nó được nhấn mạnh rằng công việc đã được thực hiện để tinh chỉnh hỗ trợ cho các chức năng và các loại chung được thêm vào trong phiên bản mới nhất, với sự trợ giúp của nhà phát triển có thể xác định và sử dụng các chức năng được thiết kế để hoạt động với nhiều loại cùng một lúc, cộng với việc tối ưu hóa hiệu suất của một số chương trình sử dụng generic đã được tăng lên 20%.

Một thay đổi khác nổi bật so với phiên bản mới là hỗ trợ thêm cho các liên kết, danh sách và cú pháp đơn giản hơn để xác định tiêu đề trong nhận xét tài liệu. Tiện ích gofmt cung cấp định dạng với các tính năng nâng cao của nhận xét trong tài liệu API.

bên cạnh đó đã sửa đổi mô hình bộ nhớ Go để phù hợp với C, C ++, Java, JavaScript, Rust và Swift mà không thừa nhận các giá trị nguyên tử nhất quán tuần tự. Các loại mới như nguyên tử.Int64 và nguyên tử.Pointer [T] đã được giới thiệu trong gói đồng bộ / nguyên tử để giúp sử dụng các giá trị nguyên tử dễ dàng hơn.

Mặt khác, nó cũng được đề cập rằng bộ thu gom rác hiện có khả năng xác định các giới hạn mềm, được thực thi bằng cách giới hạn kích thước của heap và trả lại bộ nhớ cho hệ thống mạnh mẽ hơn, tức là mức tiêu thụ không được đảm bảo nằm trong giới hạn đã chỉ định trong mọi điều kiện. Giới hạn mềm có thể hữu ích cho việc tối ưu hóa các chương trình chạy trong vùng chứa bộ nhớ cố định.

Nó cũng được nhấn mạnh rằng trên hệ thống Unix, các trình mô tả tệp bổ sung được tự động bật (tăng giới hạn RLIMIT_NOFILE), để tăng tốc các biểu thức thay đổi lớn trên hệ thống x86-64 và ARM64, bảng nhảy được sử dụng, cho phép xử lý các biểu thức thay đổi lớn nhanh hơn tới 20%.

Trên các hệ thống riscv64, việc truyền các đối số hàm thông qua các thanh ghi CPU đã được thực hiện, điều này cho phép tăng hiệu suất lên khoảng 10%.

Những thay đổi khác nổi bật so với phiên bản mới này:

  • Nhiều tối ưu hóa hiệu suất đã được thực hiện.
  • Đã thêm hỗ trợ để thiết lập động kích thước ngăn xếp thông thường để giảm kích thước của dữ liệu được sao chép
  • Đã thêm hỗ trợ thử nghiệm cho môi trường Linux trên các hệ thống có bộ xử lý Loongson dựa trên kiến ​​trúc LoongArch 64-bit (GOARCH = loong64).
  • Thay đổi mô hình bộ nhớ không ảnh hưởng đến khả năng tương thích với mã đã viết trước đó.
  • Đã thêm hạn chế xây dựng "unix" mới có thể được sử dụng trong các dòng "go: build" để lọc ra các hệ thống giống Unix (aix, android, darwin, dragonfly, freebsd, rào cản, ánh sáng, ios, linux, netbsd, openbsd, solaris ).
  • Để cải thiện bảo mật, mô-đun os / execute hiện bỏ qua các đường dẫn tương đối khi mở rộng biến môi trường PATH (ví dụ: khi xác định đường dẫn của tệp thực thi, thư mục hiện tại không còn được kiểm tra).

Cuối cùng, nếu bạn muốn tìm hiểu thêm về bản phát hành mới này, bạn có thể kiểm tra thông tin chi tiết tại liên kết sau.


Hãy là người đầu tiên nhận xét

Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.