3 điểm bởi GN⁺ 2023-10-26 | 1 bình luận | Chia sẻ qua WhatsApp
  • Tác giả Jarrod Overson chia sẻ kinh nghiệm sử dụng Rust trong 3 năm, chủ yếu cho WebAssembly.
  • Anh đã dùng Rust để xây dựng Wick, một framework ứng dụng và runtime sử dụng WebAssembly làm hệ thống mô-đun cốt lõi.
  • Cách tiếp cận phát triển hướng kiểm thử của Rust giúp việc bảo trì nhiều hơn với ít công sức hơn, đồng thời giảm nhu cầu về kiểm thử trên diện rộng.
  • Tác giả nhận thấy việc lập trình bằng Rust giúp cải thiện kỹ năng viết mã ở các ngôn ngữ khác.
  • Clippy, trình lint của Rust, áp dụng một bộ quy tắc phong phú nhằm cải thiện hiệu năng, tính dễ đọc và giảm bớt sự gián tiếp không cần thiết.
  • Tuy nhiên, tác giả chỉ ra rằng thư viện và công cụ của Rust thường không bao quát một số trường hợp sử dụng cụ thể.
  • Anh phê bình những khó khăn khi xuất bản gói lên crates.io, kho đăng ký gói của Rust, do một số hạn chế nhất định.
  • Tác giả cũng phê bình tính chất async của Rust, mô tả nó như một phần được bổ sung về sau, thường dẫn đến các lỗi khó giải quyết.
  • Hệ thống kiểu dữ liệu phong phú của Rust có thể khiến việc refactor trở nên khó khăn.
  • Dù có những nhược điểm, tác giả vẫn khen ngợi tính đa dụng và độ vững chắc của Rust.
  • Tác giả kết luận rằng Rust có thể không phù hợp với các dự án cần lặp nhanh, nhưng đáng để cân nhắc với các dự án có phạm vi đã biết hoặc có thể chấp nhận chi phí đầu tư ban đầu cao hơn.

1 bình luận

 
GN⁺ 2023-10-26
Ý kiến Hacker News
  • Một số người dùng cảm thấy Rust kém hiệu quả và bị hạn chế, nên họ thích các ngôn ngữ khác như Zig để có thể tập trung vào việc viết mã hơn.
  • Việc thiếu namespace trên crates.io là đối tượng bị chỉ trích; điều này có thể dẫn đến vấn đề khi bất kỳ ai cũng có thể chiếm một tên gói toàn cục.
  • Một số người dùng đánh giá cao hệ sinh thái thư viện phong phú và hệ thống tài liệu rất tốt của Rust.
  • Có lo ngại về việc thiếu thiết lập lint toàn cục cho dự án, nhưng một giải pháp dùng tệp .cargo/config.toml đã được đề xuất.
  • Một số người dùng bày tỏ sự bất mãn về tình trạng các crate mức thấp quan trọng vẫn bị kẹt ở phiên bản 0.x.
  • Vấn đề back reference ở cấp độ ngôn ngữ được nhấn mạnh, và có nhu cầu về các giải pháp phân tích tĩnh.
  • Một số người dùng thấy trình biên dịch Rust rất hữu ích và khen ngợi các thông báo lỗi của nó.
  • Có tranh luận về sự cần thiết của việc kiểm thử trong Rust: một số cho rằng nếu biên dịch được thì có lẽ đã đúng, trong khi số khác khẳng định logic nghiệp vụ vẫn cần được kiểm thử.
  • Một số người dùng cảm thấy việc dùng Rust không thoải mái, nhưng vẫn đang học Rust vì lý do nghề nghiệp.
  • Một số người dùng đánh giá cao Rust vì nó phá vỡ quan niệm rằng lập trình viên phải hoàn toàn kiểm soát và nhận thức đầy đủ mọi thứ mà trình biên dịch làm.
  • Có tranh luận về việc sử dụng async trong Rust; một số người xem đây là nguồn gốc của sự khó chịu, trong khi số khác tin rằng nó nên được dùng cho mọi thứ.