สำหรับผู้อ่านล่าสุด ณ เดือนมกราคม 2013 ฉันได้ประเมิน:
- Kinetic
- ผ้า
- กระดาษ
- ขาตั้ง
ด้วยการ "ประเมิน" ฉันทำมากกว่าอ่านเอกสาร ฉันสร้างแอปต้นแบบ
ฉันเริ่มต้นด้วย Fabric เพราะดูเหมือนว่าจะมีชุมชนที่ใหญ่ที่สุดและคิดว่านั่นจะเป็นทางออกของฉัน แต่ฉันยอมแพ้กับ Fabric ด้วยเหตุผลต่อไปนี้:
- ความไม่สอดคล้องกันของ API ที่แปลกและไม่มีเอกสารซึ่งทำให้เสียเวลาไปมากโดยไม่จำเป็น
- การสนับสนุนเหตุการณ์ตัวชี้ที่ไม่สอดคล้องกัน โดยเฉพาะอย่างยิ่ง Fabric ไม่ถือว่า "Path" เป็นวัตถุรูปทรงที่แท้จริงซึ่งสามารถเลือกและสังเกตได้ สิ่งนี้ไม่ตรงตามความต้องการของฉันเนื่องจากเส้นทางแบบโต้ตอบเป็นข้อกำหนดหลักของแอปของฉัน
- เบื้องหลังการแปลเพิ่มเติมใน Canvas เพื่อวางตำแหน่งวัตถุ สำหรับฉัน Fabric พยายามที่จะฉลาดเกินไปในเรื่องนี้โดยไม่ต้องแจ้งให้ผู้พัฒนาทราบว่ากำลังทำอะไรอยู่
- ความคิดเห็นที่รุนแรงเกินไปเกี่ยวกับวิธีการเคลื่อนไหวปรับขนาดและหมุนการโต้ตอบ ในหลาย ๆ วิธีเป็นเรื่องดีที่มีการสร้างฟังก์ชันนี้ไว้ในเฟรมเวิร์ก แต่ในกรณีของฉันฉันไม่เห็นด้วยกับวิธีการใช้งานซึ่งหมายความว่าโดยพื้นฐานแล้วต้องนำมาใช้ใหม่ด้วยตัวเองอยู่ดี
- เอกสารกระจัดกระจาย - หลายกรณีที่เอกสารของวิธีการเป็นรูปแบบ: "setX (Y) - ตั้งค่า X เป็น Y" :-)
ฉันมองไปที่ Paper และไม่ได้ไกลเกินไป ดูเหมือนว่าฉันจะปวกเปียกมากเกินไปและอยู่ระหว่าง IMO ที่มีอุจจาระมากเกินไป - ห้องสมุดการแสดงภาพมีมากเกินไปที่จะเป็นแบบจำลองวัตถุอย่างง่ายสำหรับ Canvas แต่ไลบรารีการแสดงภาพไม่เพียงพอที่จะแข่งขันกับ D3 นอกจากนี้เอกสารอีกครั้งก็ไม่สามารถเข้าถึงได้โดยเฉพาะ
ฉันคิดว่า Easel น่าจะสมเหตุสมผลมากถ้าคุณมีพื้นหลัง Flash / ActionScript แต่ฉันไม่ทำ นอกจากนี้ดูเหมือนว่าจะเน้นเกมมากเกินไปสำหรับความต้องการของฉัน เล็บในโลงศพเป็นเอกสารอีกครั้ง - ไม่เพียงพอและนำเสนอในรูปแบบที่ไม่ได้มาตรฐาน
ดังนั้นฉันจึงไปกับ Kinetic เพราะ:
- บทแนะนำและตัวอย่างที่สมบูรณ์และชัดเจนจริงๆ
- ฟังก์ชั่น API ทำในสิ่งที่เรียกและคาดเดาได้ส่วนใหญ่ - ผลผลิตเร็วขึ้นเส้นโค้งการเรียนรู้ที่ตื้นขึ้น
- มีความชัดเจนพอสมควรเกี่ยวกับสิ่งที่ทำและสิ่งที่ไม่ทำ - มันไม่ได้ร่ำรวยเหมือนคนอื่น ๆ แต่นั่นเป็นประโยชน์ ทำได้น้อยลง แต่ทำได้ดีกว่า
- เส้นทางเป็นรูปร่างพลเมืองชั้นหนึ่งเช่นเดียวกับรูปร่างอื่น ๆ ซึ่งจำเป็นสำหรับความต้องการของฉัน
Kinetic ไม่สมบูรณ์แบบด้วยวิธีการใด ๆ และมีอยู่สองสามครั้งที่ฉันต้องดำลึกลงไปในซอร์สโค้ดเพื่อหาสิ่งที่เกิดขึ้นจริงภายใต้ฝาครอบ นอกจากนี้ฉันพลาดการแยกวิเคราะห์ SVG และผลลัพธ์ของ Fabric