Đối với những độc giả gần đây, kể từ tháng 1 năm 2013, tôi đã đánh giá:
- Kinetic
- Sợi vải
- Giấy
- Giá vẽ
Bằng cách "đánh giá", tôi đã làm nhiều hơn là chỉ đọc tài liệu; Tôi đã tạo một ứng dụng nguyên mẫu.
Tôi bắt đầu với Fabric vì nó dường như có cộng đồng lớn nhất và nghĩ rằng đó sẽ là giải pháp của tôi. Nhưng, tôi đã từ bỏ Fabric vì những lý do sau:
- sự mâu thuẫn API kỳ lạ và không có tài liệu đã đốt cháy nhiều thời gian của tôi một cách không cần thiết.
- hỗ trợ sự kiện con trỏ không nhất quán. Cụ thể, Fabric không coi "Đường dẫn" là một đối tượng có hình dạng thực có thể lựa chọn và quan sát được. Điều này không đáp ứng nhu cầu của tôi vì Đường dẫn tương tác là yêu cầu chính của ứng dụng của tôi.
- hậu trường bổ sung các bản dịch vào Canvas để định vị các đối tượng. Đối với tôi, Fabric cố gắng tỏ ra quá thông minh trong vấn đề này mà không nói rõ cho nhà phát triển biết họ đang làm gì.
- quan điểm quá mạnh mẽ về cách hoạt động của tính tương tác di chuyển, thay đổi kích thước và xoay. Theo nhiều cách, thật tuyệt khi có chức năng này được tích hợp vào khuôn khổ, nhưng trong trường hợp của tôi, tôi không đồng ý với cách nó được triển khai, điều đó có nghĩa là về cơ bản vẫn phải tự mình thực hiện lại nó.
- tài liệu thưa thớt - rất nhiều trường hợp trong đó tài liệu về phương pháp có dạng: "setX (Y) - set là X thành Y" :-)
Tôi đã xem qua Paper và không đi quá xa. Nó có vẻ quá khó hiểu đối với tôi và cũng nằm giữa IMO quá phân biệt - quá nhiều thư viện hình ảnh hóa để trở thành một mô hình đối tượng đơn giản cho Canvas nhưng nó không đủ thư viện hình ảnh hóa để cạnh tranh với D3. Thêm vào đó, tài liệu một lần nữa không thể truy cập đặc biệt.
Tôi nghĩ rằng Easel có lẽ có ý nghĩa rất nhiều nếu bạn có nền tảng Flash / ActionScript nhưng tôi thì không. Thêm vào đó, nó có vẻ quá tập trung vào trò chơi cho các yêu cầu của tôi. Chiếc đinh trong quan tài lại là tài liệu - không đủ và được trình bày ở định dạng không chuẩn.
Vì vậy, tôi đã kết thúc với Kinetic vì:
- các hướng dẫn và ví dụ thực sự phong phú và rõ ràng
- Các hàm API thực hiện những gì chúng được gọi và phần lớn có thể đoán được - năng suất nhanh hơn, đường cong học tập nông hơn
- rõ ràng một cách hợp lý về những gì nó làm và những gì nó không - nó không giàu như một số công ty khác nhưng đó là một lợi ích; nó làm ít việc hơn nhưng chúng tốt hơn
- Đường dẫn là Hình dạng công dân hạng nhất, giống như bất kỳ Hình dạng nào khác, rất cần thiết cho các yêu cầu của tôi.
Kinetic không hoàn hảo theo bất kỳ phương tiện nào và đã có một vài lần tôi phải đi sâu vào mã nguồn để tìm ra những gì thực sự đang diễn ra. Thêm vào đó, tôi nhớ phân tích cú pháp SVG và đầu ra của Fabric.