Для останніх читачів, станом на січень 2013 року, я оцінив:
- Кінетична
- Тканина
- Папір
- Мольберт
"Оцінюючи", я не просто читав документи; Я створив прототип програми.
Я розпочав з Fabric, оскільки в ній, здається, найбільша спільнота, і думав, що це буде моє рішення. Але я відмовився від Fabric з наступних причин:
- дивні та недокументовані невідповідності API, які злили багато мого часу без потреби.
- суперечлива підтримка події вказівника. Зокрема, Fabric не вважає "Шлях" справжнім об'єктом фігури, який можна обирати та спостерігати. Це не відповідало моїм потребам, оскільки інтерактивні шляхи є основною вимогою мого додатка.
- закулісні доповнення перекладів на Полотно для розміщення об'єктів. Для мене Fabric намагається бути надто розумним у цьому плані, не розуміючи розробника, що він робить.
- занадто сильна думка про те, як працює переміщення, зміна розміру та обертання інтерактивності. Багато в чому чудово вбудувати цю функціональність у фреймворк, але, у моєму випадку, я не погодився із способом її реалізації, що означало, по суті, все одно її переобладнати.
- розріджена документація - партії тих випадків, коли документація методу має вигляд: "setX (Y) - встановіть X на Y" :-)
Я подивився на Папір і не зайшов занадто далеко. Мені це здалося надмірно тупим, а також потрапляє між занадто стуленими IMO - це занадто багато бібліотеки візуалізації, щоб бути простою об'єктною моделлю для Canvas, але недостатньо бібліотеки візуалізації, щоб конкурувати з D3. Плюс, документація знову не була особливо доступною.
Я думаю, що у мольберту, мабуть, багато сенсу, якщо у вас є передісторія Flash / ActionScript, але у мене немає. Плюс, це здавалося надмірно зосередженим на моїх потребах. Цвях у труні знову був документацією - недостатньо та представлений у нестандартному форматі.
Отже, я в кінцевому підсумку пішов із Kinetic, оскільки:
- справді багаті та зрозумілі підручники та приклади
- Функції API виконують те, що їх називають, і, в основному, можна здогадатися - швидша продуктивність, менша крива навчання
- достатньо чітко розуміє, що він робить, а що ні - він не такий багатий, як деякі інші, але це користь; він робить менше речей, але робить їх краще
- Шляхи - це першокласні фігури для громадян, як і будь-яка інша фігура, що було важливим для моїх вимог.
Kinetic не є досконалим будь-якими способами, і бувало кілька випадків, коли мені доводилось занурюватися глибоко у вихідний код, щоб з’ясувати, що насправді відбувається під ковдрами. Плюс, мені не вистачає розбору SVG та виведення Fabric.