TOML (Tom's Obvious Minimal Language)
TOML là định dạng tệp cấu hình được thiết kế để dễ đọc nhờ ngữ nghĩa rõ ràng. Nó ánh xạ trực tiếp sang bảng băm và được sử dụng trong Cargo (Rust), pyproject.toml (Python) và Hugo.
Loại MIME
application/x-protobuf
Loại
Nhị phân
Nén
Không mất dữ liệu
Ưu điểm
- + 10-100x smaller and faster than JSON/XML
- + Schema-driven with generated type-safe code
- + Backward-compatible schema evolution via field numbers
- + Standard wire format for gRPC
Nhược điểm
- − Not human-readable — binary format requires tooling
- − Requires .proto schema definition and code generation step
- − Not suitable for human-edited configuration files
Khi nào nên dùng .PROTOBUF
Sử dụng TOML cho cấu hình ứng dụng (Cargo.toml, pyproject.toml), cấu hình trang web tĩnh và bất kỳ nơi nào cần cấu hình rõ ràng, dễ đọc.
Chi tiết kỹ thuật
TOML sử dụng cặp khóa-giá trị, tiêu đề phần [bảng], [[mảng bảng]] và kiểu dữ liệu gốc (chuỗi, số nguyên, số thực, boolean, ngày giờ, mảng). Không có tham chiếu hay tính kế thừa — mỗi giá trị đều rõ ràng.
Lịch sử
Tom Preston-Werner (đồng sáng lập GitHub) tạo TOML vào năm 2013 vì thất vọng với sự mơ hồ của YAML. TOML 1.0 được phát hành năm 2021.