ก่อนอื่นสิ่งที่สำคัญที่สุดของโครงการที่ฉันต้องการสร้างคือเครื่องมือวิกิที่ใช้เป็นเว็บแอปหน้าเดียว ฉันวางแผนที่จะมีชุดคุณสมบัติที่พร้อมใช้งานจากการเดินทางพร้อมกับคุณสมบัติมากมายที่เพิ่มเข้ามาตามท้องถนน
คุณสมบัติพื้นฐาน
- การสร้างเพจ (สร้างทั้งบทความวิกิและกระดานสนทนาสำหรับบทความนั้น)
- มาร์กอัปและ WYSIWYG ala markitup
- การแปลงแบบทันทีระหว่างมาร์กอัป / html / WYSIWYG
- แถบด้านข้างเพื่อนำทางอย่างรวดเร็ว
- แถบเครื่องมือด้านบนสำหรับเลือกแก้ไข / ดู
คุณสมบัติขั้นสูง
- แถบด้านข้างที่กำหนดค่าได้เพื่อนำทางด้วยวิธีการต่างๆ
- แถบเครื่องมือที่กำหนดค่าได้ (อาจเพิ่มภาษามาร์กอัปที่ต้องการ)
- แท็ก
- สิ่งที่ต้องทำที่แก้ไขได้
- ลากและวางการอัปโหลดไฟล์และไฟล์แนบรูปภาพ
แต่เดิมเอ็นจิ้นจะประกอบด้วยการสร้างเพจพื้นฐานที่สุดมาร์กอัปและการแก้ไขแบบ WYSIWYG และการบันทึก ในที่สุดฉันก็อยากจะขยายเอ็นจิ้นพื้นฐานนี้ด้วยการรองรับการลากและวางรูปภาพการอัปโหลดไฟล์กราฟข้อมูลสดและแถบด้านข้างสำหรับปรับแต่งมุมมอง
ฉันได้ทำการค้นหาอย่างละเอียดพอสมควรสำหรับโครงการที่เหมาะสมซึ่งจะใช้เป็นฐานโครงการของฉัน แต่นอกเหนือจาก TiddlyWiki ดูเหมือนจะไม่มีเครื่องมือวิกิจาวาสคริปต์ที่ดี ฉันยังพิจารณาใช้ Jquery กับเอ็นจินวิกิที่มีอยู่ แต่ฉันเชื่อว่าฉันจะต้องเขียนมันใหม่ในที่สุดอยู่ดี (บวกกับมันน่าตื่นเต้นกว่าที่จะเพิ่มคุณสมบัติที่ฉันต้องการเมื่อฉันไป) ไม่ว่าจะด้วยวิธีใดฉันก็มาถึงการนำสัตว์ร้ายนี้มาใช้กับ javascript library + framework
ฉันรู้ว่าไม่มีใครสามารถเปรียบเทียบกรอบงานเหล่านี้กับกันและกันได้เพราะพวกเขาไม่ใช่แอปเปิ้ลกับแอปเปิ้ล ฉันได้พยายามกำหนดกรอบความคิดเห็น / คำถามเปรียบเทียบกับส่วนที่เทียบเคียงกันของกรอบการทำงานที่เกี่ยวข้อง แต่ฉันก็ยินดีที่จะได้รับการแก้ไข
ไปเลย:
จากการวิจัยและความคิดเห็นของฉันเองฉันได้ จำกัด รายการให้แคบลงไปที่รายการด้านล่าง ฉันตั้งใจทิ้งสิ่งต่างๆเช่น SproutCore, corMVC, YUI และอื่น ๆ ในขณะที่ฉันมีความสามารถ จำกัด คิดว่ารายการด้านล่างน่าจะเหมาะสมกว่า
ตัวเลือกของฉัน
jquery / UI + กระดูกสันหลัง
โดยรวม
จากสิ่งที่ฉันได้อ่านชุดค่าผสมนี้ถูกใช้และเป็นที่ชื่นชอบของหลาย ๆ คนและมีความยืดหยุ่นและขยายได้มาก ข้อกังวลหลักของฉันคือชุดค่าผสมนี้ไม่ใช่จุดเริ่มต้นที่ดีที่สุดสำหรับการพัฒนาอินเทอร์เฟซ UI ที่เน้นเดสก์ท็อปมากขึ้น
UI
แม้ว่า jQueryUI หรือ jqueryTools อาจมีการแข่งขัน แต่ก็ดูเหมือนจะไม่ตรงกับความสามารถ UI ของเฟรมเวิร์กอื่น ๆ โดยเฉพาะอย่างยิ่งพวกเขาดูเหมือนจะหนักในเอฟเฟกต์ แต่ขาดการสนับสนุนการแบ่งเลย์เอาต์ที่เหมาะสม
javascriptMVC
โดยรวม
JavascriptMVC สำหรับฉันดูเหมือนว่ามันเป็นส่วนขยาย jquery + MVC (jqueryMX) เป็นหลักพร้อมกับแอปอื่น ๆ สำหรับการจัดทำเอกสาร (documentJS) การทดสอบการทำงาน (funcUnit) และการจัดการโค้ดและการพึ่งพา (ขโมย) นอกเหนือจากประโยชน์ของโมดูลเพิ่มเติมแล้วฉันคิดว่าการอภิปรายเกี่ยวกับฟังก์ชันนั้นเกี่ยวข้องกับกระดูกสันหลังกับ jqueryMX ฉันถูกต้องหรือไม่และมีใครทำงานด้วยหรือเปรียบเทียบทั้งสองอย่างหรือไม่
- คุณสมบัติ: ภาพรวมของ jupiter's (ผู้สร้าง jMVC) ของคุณสมบัติต่างๆ
- ลิงก์ไปยังjqueryMX
UI
JavascriptMVC เพิ่มรายการMXUIที่ด้านบนของสิ่งที่มีอยู่สำหรับ Jquery ดังนั้นฉันคิดว่าอย่างน้อยที่สุดมันก็ชนะเล็กน้อยในประเภทนั้น
สิ่งที่น่าพิศวง
โดยรวม
ความคิดและข้อกังวลของฉันเกี่ยวกับเรื่องนี้คล้ายกับความคิดเห็น jquery + backbone ทั้งคู่ดูเหมือนจะนำเสนอคุณสมบัติที่คล้ายกัน แต่เป็นเพียงมุมมองที่แตกต่างกัน ข้อเสียที่อ้างถึงบ่อยครั้งคือตรรกะทางธุรกิจที่น่าพิศวงและการนำเสนอที่แน่นเกินไปกับการผูกข้อมูลและวิธีการผูกนี้สามารถแบ่งย่อยสำหรับการโต้ตอบ UI ที่ซับซ้อน แต่ฉันชอบที่จะได้ยินว่าทำไมจึงไม่เป็นปัญหา
- การอภิปรายเกี่ยวกับแนวคิดกระดูกสันหลังและสิ่งที่น่าพิศวง
- คุณสมบัติของสิ่งที่น่าพิศวง
UI
ว่างเปล่าในขณะนี้
Dojo และ ExtJS
โดยรวม
ฉันจะรวมการสนทนา Dojo และ ExtJS เข้าด้วยกันเพราะฉันรู้น้อยที่สุดเกี่ยวกับพวกเขาและดูเหมือนว่าจะเล่นในพื้นที่เดียวกัน ข้อมูลส่วนใหญ่เกี่ยวกับ stackoverflow เกี่ยวกับทั้งสองนี้ดูเหมือนว่าจะล้าสมัย จากสิ่งที่ฉันได้เห็นคือมันเป็นทั้งเฟรมเวิร์กขนาดใหญ่ที่ดีสำหรับการใช้งานแอพที่มีความสามารถในเดสก์ท็อป Dojo ถูกแยกออกจากเอกสารที่ไม่ดี แต่ดูเหมือนว่าจะไม่เป็นเช่นนั้นอีกต่อไป แน่นอนว่า ExtJS มีใบอนุญาตการค้า แต่มันก็สมเหตุสมผลสำหรับสิ่งที่คุณได้รับและฉันจะไม่ถือมันมากเกินไป วิดเจ็ตใน ExtJS ดูเหมือนจะค่อนข้างทำอย่างมืออาชีพมากกว่า Dojo แต่ฉันสามารถแก้ไขได้ที่นั่นอย่างแน่นอน ฉันสนใจที่จะได้ยินจากทุกคนที่มีประสบการณ์ทั้งสองอย่าง
UI
Dojo มีไลบรารี dijit UI ExtJS มีคุณสมบัติ UI แต่ไม่ได้อยู่ใน Ext core นี่คือเอกสารและนี่คือการสาธิตของพวกเขา
คาปูชิโน่
โดยรวม
แล้วก็มีคาปูชิโน่ ไม่มี CSS ไม่มี html แต่อาจเป็นเรื่องยากที่จะใช้ไลบรารีจาวาสคริปต์ที่มีอยู่ Objective-J ดูเหมือนจะไม่น่ากลัวโดยเฉพาะอย่างยิ่งเมื่อพิจารณาว่าพวกเขาสามารถเขียนจาวาสคริปต์ธรรมดาได้เช่นกัน การสาธิตเป็นสิ่งที่น่าประทับใจและดูเหมือนจะเข้าใกล้ความต้องการของ UI สำหรับเครื่องมือวิกิ API ที่ใช้โกโก้นั้นมีประโยชน์มากมายสำหรับผู้ที่ไม่คุ้นเคยกับมัน แต่อาจจะคุ้มค่า ฉันเคยได้ยินมาว่าเครื่องมือจัดวางนั้นไม่ใช่เรื่องง่ายที่จะใช้งานได้ แต่เทคโนโลยีที่อายุน้อยและอาจก่อกวนเช่นนี้จะมีข้อบกพร่องบางอย่าง
UI
ว่างเปล่าในขณะนี้
ฉันขอโทษที่เขียนมาก แต่เดี๋ยวก่อนอย่างน้อยก็ไม่ใช่คำถาม ax vs y vs z ที่หวังว่าจะได้คำตอบราคาถูกมากมาย ดังนั้นสิ่งที่คุณคิดว่า? อะไรควรเป็นพื้นฐานสำหรับเดสก์ท็อปของฉันเช่น wiki engine ซึ่งหวังว่าจะกลายเป็นฟีเจอร์ที่สมบูรณ์มากขึ้น (อ่านซับซ้อน) เมื่อเวลาผ่านไป