Sequelize là một ORM dựa trên promise trưởng thành, được dùng rộng rãi cho Node.js. Nó ra đời trước kỷ nguyên TypeScript, nên đã được thử lửa và giàu tính năng, nhưng câu chuyện định kiểu và sự dài dòng là điểm yếu của nó.
sequelize-cli).const User = sequelize.define("User", {
email: { type: DataTypes.STRING, unique: true },
});
User.hasMany(Post);
const users = await User.findAll({
where: { email: "[email protected]" },
include: [Post], // eager-load association
});
sequelize-typescript hoặc generic thủ công) chứ không phải bản địa; model thường định kiểu lỏng lẻo và dễ lỗi.sync().include có thể sinh join lớn và chậm nếu không định hình cẩn thận.Dự án JavaScript (không TS), đội muốn một ORM đã được kiểm chứng, ổn định với hỗ trợ database rộng, và app mà độ trưởng thành của hệ sinh thái cùng tài liệu quan trọng hơn an toàn kiểu từ đầu tới cuối.
Sequelize thường là lựa chọn "an toàn, nhàm chán" — và đó là một thế mạnh hợp lệ cho đội coi trọng sự ổn định và hệ sinh thái sâu hơn là định kiểu tân tiến. Người phỏng vấn muốn thấy bạn cân được độ trưởng thành đó với các chi phí thật của nó: tiện dụng TypeScript yếu hơn, boilerplate, và một abstraction rò rỉ khi gặp SQL phức tạp. Gọi tên được những đánh đổi đó cho thấy bạn chọn công cụ theo ràng buộc của dự án, không chỉ theo danh tiếng.
Thư viện câu hỏi phỏng vấn IT với đáp án chi tiết — từ Junior đến Senior.
Ủng hộ