Bài công khai1 phút đọc

Để viết web app serverside, tại sao phải đẻ ra Hono với tính năng và cách dùng y hệt Express?

Bài viết giải thích lý do Hono ra đời và tại sao nó là một lựa chọn tốt hơn Express cho việc phát triển web app serverside. Hono vượt trội hơn nhờ hiệu năng cao, khả năng chạy trên nhiều môi trường runtime, và trải nghiệm phát triển (DX) tốt hơn, đặc biệt với TypeScript.

Tín hiệu1đánh giá có chiều sâu
Thảo luận0bình luận dưới bài
Chủ đề3nhánh tri thức liên quan

Tóm tắt nhanh

Bài viết giải thích lý do Hono ra đời và tại sao nó là một lựa chọn tốt hơn Express cho việc phát triển web app serverside. Hono vượt trội hơn nhờ hiệu năng cao, khả năng chạy trên nhiều môi trường runtime, và trải nghiệm phát triển (DX) tốt hơn, đặc biệt với TypeScript.

Điểm chính

  • Hono nhanh và nhẹ hơn Express, sử dụng RegExp Router tối ưu và ít phụ thuộc vào thư viện ngoài.
  • Hono hỗ trợ nhiều JavaScript runtime hiện đại (Edge Computing) như Cloudflare Workers, Bun, Deno, AWS Lambda, Fastly.
  • Hono thân thiện với TypeScript, tích hợp sẵn middleware và hỗ trợ Zod để validation, type-check request bodies.

Vì Hono nó nhanh, nhẹ, chạy dc ở nhiều chỗ hơn Express.

1. Hiệu năng và độ nặng nề

  • Hono: nhanh hơn, nhẹ hơn (1KB tới 14KB). Nó xài RegExp Router rất tối ưu và nhanh. Nó còn chả thèm phụ thuộc nhiều vào lib ngoài.

  • Express: to xác và nặng nề (đặc điểm chung của các framework lâu đời, trải qua nhiều tầng lớp cải tiến và thêm thắt). Phu thuộc chặt vào lib Node.js http cũ kỹ.

2. Runtime, chỗ để chạy app

Chủ yếu là do dịch chuyển qua Edge Computing, chúng ta cần app chạy với các JavaScript runtimes hiện đại.

  • Hono chạy được (gần như là) ở mọi nơi.

    • Edge: Hono chạy dc trên các runtime "tinh gọn, rẻ" như Cloudflare Workers, Bun, Deno, AWS Lambda, Fastly.

    • Standard Web APIs: Hono dùng các web API tiêu chuẩn, sẽ tồn tại nhiều năm với tương lai.

  • Express mặc dù là "tiêu chuẩn công nghiệp" trong nhiều năm, nhưng nó dính quá chặt với Node.js (dùng quá nhiều internal APIs), do vậy nếu xài Express trên các runtimes ko phải Node.js, nó sẽ dễ ngoẹo.

3. Thân thiện với dev (DX tốt)

  • TypeScript: Hono viết bằng TypeScript, và cung cấp khả năng tương thích, gợi ý tiện lợi tối đa khi bạn code dự án của mình bằng TypeScript.

  • Built-in Middleware: Hono có sẵn một số middleware thường dùng nhất (JWT authentication, CORS, Logger), trong khi Express sẽ yêu cầu phải cài thêm.

  • Zod Integration: có sẵn hỗ trợ Validation, type-check request bodies.

productivitytechnologywriting

Discussion

Góc nhìn từ cộng đồng

0 bình luận
Chưa có bình luận nào.

Hãy là người đầu tiên thêm một góc nhìn hữu ích để mạch đọc này trở nên sâu hơn.