ฉันแค่สงสัยว่ามีข้อดีหรือข้อเสียที่สำคัญในการใช้ XAML / C # หรือ HTML5 / JavaScript สำหรับ Metro Apps หรือไม่
ฉันแค่สงสัยว่ามีข้อดีหรือข้อเสียที่สำคัญในการใช้ XAML / C # หรือ HTML5 / JavaScript สำหรับ Metro Apps หรือไม่
คำตอบ:
พื้นหลังเล็กน้อยฉันสร้างแอพ American Airlines Windows 8 ใน HTML5 ฉันต้องบอกว่ามันวิเศษมาก
ก่อนอื่นปล่อยแนวคิดของ HTML5 ทั้งหมดที่เกี่ยวข้องกับแอพมือถือ ใน Windows 8 JavaScript เป็นภาษาพื้นเมืองชั้นหนึ่ง คุณสามารถเข้าถึงคุณลักษณะฮาร์ดแวร์ทั้งหมดที่แอป XAML ต้องการ นอกจากนี้ยังมีเทมเพลตที่ยอดเยี่ยมที่สร้างขึ้นใน Visual Studio 2012 สำหรับแอปพลิเคชัน WinJs
WinJs ไม่ได้เป็นเพียงแค่ความคิดครึ่งหนึ่งในการนำ webview มาใช้ Microsoft กำลังแสดง JS ในที่สุดความเคารพที่สมควรได้รับ
ฉันขอแนะนำให้เร่งความเร็วด้วย IE10 ที่ใหม่ล่าสุดและยิ่งใหญ่ที่สุด สุจริตนั่นคือกรอบการทำงานหลักสำหรับทุกสิ่งที่ WinJs มันทรงพลังและรวดเร็ว! นี่คือตัวอย่างของสิ่งที่คุณสามารถทำอะไรกับมัน: http://www.cuttherope.ie/
นอกจากนี้ที่นี่เป็นสถานที่ที่เหมาะสำหรับการเริ่มต้นกับ WinJs: http://msdn.microsoft.com/en-us/library/windows/apps/br211385.aspx
อนาคตดูสดใสสำหรับ JS เป็นภาษาท้องถิ่นสำหรับ Windows
ทั้งสอง เนื่องจากนักพัฒนาทั้งสองถูกนำไปใช้ (แม้ว่าจะไม่ใช่ในเวลาเดียวกันสิ่งที่ฉันหมายถึงคือในขณะที่นักพัฒนาซอฟต์แวร์บางคนใช้ XAML / C # บางคนกำลังใช้ HTML / JS) สำหรับผู้ที่มาจากพื้นหลัง dev ของแอปพลิเคชันเว็บการเปลี่ยนเป็น HTML / JS ง่ายขึ้น และสำหรับผู้ที่คุ้นเคยกับ XAML ผ่าน WPF และ Silverlight มันคงสมเหตุสมผลที่จะนำทักษะไปใช้กับ XAML + C # และเท่าที่ผลลัพธ์เกี่ยวข้องเทคโนโลยีทั้งสองแสดงผลลัพธ์ที่ดี ดังนั้นฉันเดาว่าทั้งสองจะดีเท่า ๆ กันในปีต่อ ๆ ไป
แอพ Metro ที่สร้างขึ้นโดยใช้ HTML5 / JS API อาจจะจัดอยู่ในประเภท "ง่ายกว่า" เมื่อเปรียบเทียบกับ C # / XAML ในขณะที่อดีตจะมีความสามารถในการสร้างแอพพลิเคชั่นที่ทำงานได้ดี แต่ก็มีข้อ จำกัด ถึงขีดความสามารถของแอพที่สร้างขึ้นใน HTML5 ในทางกลับกันในขณะที่ C # อาจมีความสามารถมากกว่า แต่ก็มีความซับซ้อนมากกว่า แอพ HTML5 จะง่ายต่อการออกแบบและบำรุงรักษา
อย่างน้อยนั่นคือการคาดเดาที่ดีที่สุดของฉัน ฉันยังไม่มีประสบการณ์ในการพัฒนาแอพ Win8 (ยัง)
ทั้งคู่กำลังจะทำงานบน WinRT (หรือที่รู้จักในเวอร์ชั่น Windows 8 ที่ใช้กับอุปกรณ์ MS Surface )
มันทั้งหมดจะขึ้นอยู่กับการตั้งค่าของนักพัฒนา ดังนั้นนักพัฒนาที่มีประสบการณ์ HTML5 / JS จะได้รับการสนับสนุนอย่างเท่าเทียมกันในการพัฒนาสำหรับ Window 8
ไม่ใช่โปรแกรมเมอร์ MS - จากมุมมองของโปรแกรมเมอร์มันจะคุ้มค่ากับการลงทุนเวลาและความพยายามของคุณในแพลตฟอร์มผู้ไม่เชื่อเรื่องพระเจ้ามาตรฐานแบบเปิดเช่น JS + HTML 5 ความรู้ที่คุณได้รับสามารถนำไปใช้ที่อื่นได้
Win 8 รองรับ JS โดยกำเนิดดังนั้นจึงมีไม่มากที่คุณไม่สามารถใช้งานได้
ใช่ในกรณีส่วนใหญ่ JavaScript เป็นภาษาท้องถิ่น คอมไพล์ (JIT Style) ขึ้นอยู่กับตำแหน่งที่มันทำงานอยู่
ตัวอย่างเช่นหากคุณใช้เบราว์เซอร์ Chrome เครื่องยนต์ V8 ทำสิ่งที่กล่าวถึงข้างต้น ฉันเข้าใจว่า IE 10 ทำเช่นเดียวกันกับเบราว์เซอร์อื่น ๆ ที่รองรับมาตรฐาน ECMAScript 262
ในกรณีส่วนใหญ่ JavaScript ไม่ใช่ภาษาที่ตีความอีกต่อไป มันเป็นภาษาโปรแกรมเต็มรูปแบบที่มุ่งเน้นเชิงวัตถุต้นแบบที่ใช้ไคลเอนต์ / ฝั่งเซิร์ฟเวอร์, แพร่หลาย