คนที่เขียนเว็บมานาน แล้วต้องเขียนเว็บบนมือถือ ต่างต้องปวดหัวไม่น้อย เพราะว่า jquery หรือ javascript ที่ใช้หลายๆอย่าง ไม่สามารถทำงานได้ในมือถือ จริงๆก็เป็นเรื่องไม่แปลก เพราะว่าด้วยข้อจำกัดของ software เอง ที่รันหน้าเว็บ (web browser) เนื่องจากมีการทำงานสำหรับแสดงผลที่แตกต่างกับ PC จึงแสดงผล และทำงานแบบผิดปกติจนเป็นเรื่องปกติ?? ซึ่งจริงๆเป็นเพราะว่าข้อจำกัดของ hardware ที่มีทรัพยากรน้อยนิด เลยส่งผลให้ software ความสามารถต้องด้อยลงไปด้วย เพราะว่าปัจจุบันอย่างมากมือถือก็มี ram 500-600 MB แค่ว่ากับคอมพิวเตอร์ บางเครื่องก็มีถึง 8 GB (8192 MB) เลยจะเห็นว่าต่างกันค่อนข้างมาก
แล้วตามคำเรียกร้อง(ของหลายคน) javascript jquery mobile หรือ jquery version สำหรับมือถือก็ได้ออกมาให้ได้ทดสอบกันแล้ว ที่เรียกว่าให้ทดสอบก็เป็นเพราะว่า พึ่งจะเป็น version Alpha 1 เท่านั้นเอง ไหนจะต้องมี beta อีก จนกระทั่ง full
แต่อย่างไรก็ดี เท่าที่ได้ดูและอ่านๆเบื้องต้น ก็พบว่ามันน่าใช้งานมาก เพราะว่ารองรับ os ค่อนข้างเยอะเลย โดยตอนนี้เค้าระบุว่า รองรับทั้ง IOS 2.2 – 4, symbian s60 v5, symbian 3, blackberry 5-6,webOS 1.4.1, bada 1, Maemo 5 ,Meego 1.1, android 1.5-2.2 เท่านี่ก็เกือบทั้งหมดเท่าที่นึกได้แล้วนะ หรือว่าเชื่อว่าไม่น้อยกว่า 70% ของอุปกรณ์ mobile ทั้งหมดล่ะ
browser grade แสดงว่า os,browser ตัวไหน รองรับมากน้อยเพียงใด
นี่เป็นเพียงแค่ alpha ก็รองรับเยอะมากขนาดนี้แล้ว แล้วถ้าออกจริง จะรองรับเพิ่มอีกขนาดไหน รับรองว่าต้องไมธรรมดาแน่ๆ ที่ว่าไม่ธรรมดาอีกประการหนึ่งก็เป็นเพราะว่า team ผู้พัฒนานั้น ได้รับการสนับสนุนอย่างเป็นทางการจาก filament group (บริษัทผู้พัฒนา web), Palm (เจ้าของ webOSในเครื่อง palm), blackberry (ไม่ต้องบอกมั้งว่าเป็นเจ้าของมือถือยี่ห้ออะไร),Adobe (เรารู้จักเค้าในฐานะเจ้าของ flash, pdf และอื่นๆ),Device Atlas (บริษัทพัฒนา application บนมือถือ), Mozilla Corp (เจ้าของ firefox และอื่นๆอีกหลายผลิตภัณฑ์), Nokia (เจ้าของมือถืออีกเช่นกัน)
สำหรับ function เค้าบอกว่ามันมีประมาณนี้
- Built on jQuery core for familiar and consistent jQuery syntax and minimal learning curve – ทำให้สามารถเรียกใช้งาน syntax ของ jquery ตัวใหญ่ได้ ทำให้เสียเวลาการเรียนรู้น้อยลง
- Compatible with all major mobile platforms – iOS, Android, Blackberry, Palm WebOS, Nokia/Symbian, Windows Mobile, bada, MeeGo with baseline support for all devices that understand HTML – รองรับในหลาย platform โดยอิงว่า platform เหล่านั้นจะต้องสามารถใช้งาน html ได้
- Lightweight size (9k compressed for all mobile functionality) and minimal image dependencies for speed. – ขนาดเล็กเพื่อการ download และทำงานที่เร็วขึ้น
- Markup-driven configuration of pages and behavior for fast development and minimal scripting – มีกระบวนการตั้งค่าที่ง่าย เพราะว่าฝังไในตัวโค้ค markup เลย
- Progressive enhancement approach brings core content and functionality to all mobile, tablet and deskstop platforms and a rich, installed application-like experience on newer mobile platforms – พัฒนาบนพื้นฐานการเข้าถึงให้ได้มากที่สุด ในทุกๆอุปกรณ์ที่มีในตอนนี้ และในอนาคต
- Automatic initialization by using HTML5
data-role
attributes in the HTML markup to act as the trigger for themobilize()
function to automatically initialize all jQuery Mobile widgets found on a page. – เริ่มทำงานโดยอัตโนมัติ เราไม่ต้องไปคอย trigger เพื่อสั่งให้อะไรทำงานเลย - Accessibility features such as WAI-ARIA are also included to ensure that the pages work for screen readers (e.g. VoiceOver in iOS) and other assistive technologies. – เป็นแบบที่เข้าถึงได้ ไม่ว่าจะเป็นคนปกติหรือคนที่ใช้ screen reader ช่วยก็ตาม
- Normalized events streamline the process of supporting touch, mouse, and cursor focus-based user input methods with a simple API. – สามารถรองรับการ input จาก user ได้หลากหลายรูปแบบ ไม่ว่าจะเป็นแบบ touch, mouse , cursor โดยอิงจาก user เป็นหลัก
- Powerful theming framework and ThemeRoller application make highly-branded experiences easy to build. – มีระบบ css theme โดยอิงจาก themeroller ที่มีใช้ใน jquery ตัวใหญ่ เพื่อให้สามารถเอามาปรับแต่งได้ง่ายขึ้น
ดังนั้นแล้วน่าเชื่อว่า อนาคตน่าจะสดใส ไม่ธรรมดา เพราะว่าเป็น open source ที่ถูกขับเคลื่อนโดย corporation อีกที จึงดูมีอนาคตที่สดใสมากกว่า
อีกทั้งในปัจจุบันผู้ที่ใช้อุปกรณ์ mobile เพิ่มขึ้นมาก เค้าวิจัยกว่า มากกว่าเครื่อง computer ตั้งโต๊ะ ประมาณเท่าตัว แล้วการเข้าถึง internet ก็จะเพิ่มมากขึ้นในขนาดที่ว่า หลายคนเริ่มเล่น internet ครั้งแรกผ่านอุปกรณ์ mobile เหล่านี้ด้วยซ้ำไป
ตอนนี้เราก็ทำความรู้จักกันแล้ว บทความต่อไป เรามาลองใช้กันดีกว่า ตอนนี้ยังไม่ได้ลอง แต่เดาเอาเองว่า ก็ไม่น่าจะยากเหมือนเวลาที่เราใช้ jQuery นั่นเอง
แต่อย่างไรผมก็ไม่ได้คาดหวังอะไรเยอะ เพียงแค่มันเข้ามาสร้าง standard ความ compatible และ แก้ปัญหาพื้นฐาน (common problem) ผมว่ามันก็success สุดๆแล้ว