Nền tảng JavaScript Deno 1.16 đã được phát hành

Nền tảng JavaScript Deno 1.16 đã được phát hành, được thiết kế để thực thi độc lập (không cần sử dụng trình duyệt) các ứng dụng được viết bằng JavaScript và TypeScript. Dự án được phát triển bởi tác giả Ryan Dahl của Node.js. Mã nền tảng được viết bằng ngôn ngữ lập trình Rust và được phân phối theo giấy phép MIT. Các bản dựng sẵn được chuẩn bị cho Linux, Windows và macOS.

Dự án này tương tự như nền tảng Node.js và giống như nó, sử dụng công cụ JavaScript V8, tuy nhiên, theo tác giả của Node.js, nó sửa một số lỗi kiến ​​​​trúc của phiên bản tiền nhiệm và khác với nó ở các sắc thái sau :

  • Theo các nhà phát triển, sử dụng Rust làm ngôn ngữ chính giúp giảm nguy cơ lỗ hổng liên quan đến quản lý bộ nhớ cấp thấp (tràn bộ đệm, use-after-free, v.v.);
  • Deno không sử dụng trình quản lý gói npm và pack.json, nhắc người dùng cài đặt mô-đun bằng cách chỉ định URL hoặc đường dẫn đến mô-đun sẽ được cài đặt. Tuy nhiên, dự án cung cấp một số tiện ích để đơn giản hóa công việc với các mô-đun của bên thứ ba;
  • Các ứng dụng chạy riêng biệt trong hộp cát và không có quyền truy cập vào mạng, biến môi trường và hệ thống tệp mà không có quyền được cấp rõ ràng;
  • Kiến trúc cung cấp khả năng tạo các ứng dụng web phổ quát có thể hoạt động cả trong hệ thống Deno và trình duyệt thông thường;
  • Sử dụng "Mô-đun ES" và thiếu hỗ trợ require();
  • Bất kỳ lỗi nào trong ứng dụng web không được lập trình viên xử lý đều dẫn đến việc ứng dụng đó buộc phải chấm dứt;
  • Hỗ trợ TypeScript ngoài JavaScript;
  • Kích thước đầy đủ của nền tảng sẵn sàng sử dụng là 84 MB (trong kho lưu trữ zip - 31 MB) ở dạng một tệp thực thi duy nhất;
  • Bộ công cụ này cung cấp một hệ thống để giải quyết các phần phụ thuộc và định dạng mã;
  • Tập trung vào các ứng dụng hiệu suất cao.

Dino xử lý các yêu cầu theo cách không bị chặn bằng nền tảng Tokio, được thiết kế để xây dựng các ứng dụng hiệu suất cao dựa trên kiến ​​trúc hướng sự kiện. Điều thú vị là máy chủ HTTP tích hợp của Deno được triển khai trong TypeScript trên các ổ cắm TCP gốc, điều này có tác động tích cực đến hiệu suất hoạt động của mạng.

Phiên bản mới ghi chú:

  • Tối ưu hóa hiệu suất (4 bản vá);
  • Đã sửa hơn 15 lỗi, đặc biệt, máy khách TLS hiện hỗ trợ HTTP/2, hệ thống con mã hóa hỗ trợ thêm dấu mã hóa, v.v.;
  • Hơn hai chục cải tiến, trong đó chúng ta có thể lưu ý đến sự ổn định của các hệ thống con thử nghiệm trước đó Deno.startTls và Deno.TestDefDef.permissions, cập nhật công cụ V8 JS lên phiên bản 9.7 và hỗ trợ các chuyển đổi React 17 JSX.

Nguồn: opennet.ru

Thêm một lời nhận xét