iPad Review ( Developer version )

สวัสดีครับเมื่ออาทิตย์ที่ผ่านมาผมได้รับความอนุเคราะห์จากคุณ Chachris  – http://twitter.com/ChachrisTH ได้มอบเจ้า iPad มาให้ได้ลองเล่นเป็นเวลา 1 อาทิตย์เต็มๆ ต้องขอขอบคุณไว้ ณ ที่นี้ด้วยนะครับ

เอาละครับหลังจากที่ผมได้ iPad มาลองแล้ว ก็อยากจะแชร์ประสบการณ์และมุมมองในแบบของ developer ดูบ้าง เพราะผมคิดว่า ตอนนี้หลายๆเวปก็ได้ review ในด้านการใช้งาน รูปลักษณ์ภายนอก และอะไรไปมากแล้ว ฉะนั้นแล้วผมคงจะเขียน review ในมุมมองอื่นๆดูบ้างนะครับ

ตลาด Application

ณ ขณะที่ผมเขียน review ตอนนี้ก็เป็นเวลาที่ iPad ออกมาได้ 1 เดือนแล้ว และยอดขายกว่าล้านเครื่อง http://www.apple.com/pr/library/2010/05/03ipad.html ถือเป็นเรื่องที่ดีมากๆสำหรับ iPhone , iPad developer เพราะว่ามันหมายถึงว่าจำนวนตลาดของ application โตขึ้นไปด้วย ส่วนตัวผมค่อนข้างเชื่อว่า iPad จะขายได้เกิน 30 ล้านเครื่องภายใน 1 ปีนับจากที่ iPad ได้ออกจำหน่าย และถ้าหากยอดรวมกับ iPhone ที่มีในปัจจุบันแล้ว ก็นับว่าตลาดของคนที่จะ download application ของเรานั้นมากมายมหาศาล

ข้อดีของการเขียนโปรแกรมสำหรับ iPad

การเขียนโปรแกรม iPad นั้น มีข้อดีหลายอย่างครับคือ

  1. อันดับแรกก็ต้องบอกว่า เครื่องไม้เครื่องมือหลักๆก็เป็นตัวเดียวกันกับ iPhone นั่นก็คือ XCode และ Interface Builder ฉะนั้นแล้วถ้าหากว่าเราเคยเขียนโปรแกรมด้วย iPhone อยู่แล้ว ก็ไม่จำเป็นต้องเรียนรู้เครื่องมือในการพัฒนาเพิ่มเลย
  2. อย่างที่สองคือภาษาที่ใช้เขียนโปรแกรมใน iPad นั้นใช้ภาษา Objective-C ครับ เราไม่ต้องไปเรียนรู้ภาษาใหม่ให้ยุ่งยาก
  3. SDK  ที่ใช้ในการเขียน iPad คือ iPhone SDK 3.2 for iPad ครับ ถ้าหากว่าติดตั้งลงไปแล้ว ก็จะมี iPad Simulator มาให้ด้วย เหมือนกับที่มี iPhone Simulator นั่นเหละครับ แต่สิ่งที่เราต้องเรียนรู้เพิ่มก็คือการใช้ Control ต่างๆที่มีอยู่ใน iPad เช่น Split View
  4. ตัวเครื่องมีแบบเดียว ไม่ต้องกลัวว่าเขียนแล้วจะใช้ไม่ได้ ไม่เหมือน Netbook หรือมือถือ ที่มีขนาดหน้าจอ และเครื่องที่แตกต่างกันมากมาย
  5. มีแหล่งความรู้เพิ่มเติมมากมาย และมี community ที่ใหญ่
  6. ได้เป็นสาวก โดยส่วนตัวผมชอบคำว่า สาวก Apple นะครับ แม้ว่าความหมายจะเป็นคำที่เอาไว้ใช้แขวะ กัดจิก ของคนที่คลั่งใคล้ apple มากๆ แบบไม่ลืมหูลืมตา ( เค้าว่าอย่างนั้น ) แต่ผมเชื่อมั่นในศาสดาครับ ฮ่าๆ

สรุปว่าแทบจะไม่มีอะไรที่เราต้องเปลี่ยนเลย มีเพียงแค่เพิ่มในส่วนของ UI Control ของ iPad เข้ามาเท่านั้นเองครับ ถ้าหากว่าเขียนโปรแกรม iPhone มาแล้วรับรองว่าการเปลี่ยนไปเขียน iPad นั้นคงใช้เวลานิดเดียว

Device

ถ้าพูดถึงตัวเครื่อง iPad แล้ว จากประสบการณ์ของผมนั้น ถ้ามองในมุมที่ว่า ต้องพัฒนาโปรแกรมใน iPad ต้องคำนึงอะไรเพิ่มเติม และอะไรที่แตกต่าง iPhone ก็พอจะแยกได้ดังนี้ครับ

  1. ความเร็ว ต้องบอกเลยครับว่ามันเร็วกว่า iPhone 3GS มากๆ อาจจะเกือบสองเท่าด้วยซ้ำไป เพราะด้วยที่ว่ามันมี CPU ที่แรงกว่านั่นเอง ถ้าหากว่าเขียนเกมส์ 3D ก็น่าจะใส่ Texture ที่มีความละเอียดได้มากกว่า iPhone แน่นอน และไม่ต้อง Optimize ลดจำนวน Polygon มากเท่า iPhone หรือจะเขียนโปรแกรมที่มีความซับซ้อน ต้องการกำลังการประมวลผลสูงๆ เช่นพวกโปรแกรมแก้ไขรูปภาพก็คงจะใช้งานได้มากกว่า iPhone แน่นอน
  2. ขนาดหน้าจอ แตกต่างจาก iPhone ค่อนข้างเยอะมาก มันใหญ่มากครับ เรามีพื้นที่ใช้สอยเยอะมาก อย่างโปรแกรม iPhone ค่อนข้างมีหน้าจอที่จำกัด โปรแกรมเกือบจะทุกโปรแกรมจะใช้ Navigation , Tabbar  เป็นตัวเพิ่มพื้นที่หน้าจอ ทำการสลับไปมาระหว่างส่วนต่างๆ แต่ iPad มีขนาดหน้าจอที่ใหญ่กว่ามากครับ เราอาจจะเอาทุกๆอย่างมารวมในหน้าจอเดียวก็ได้
  3. น้ำหนัก – iPad มีนำ้หนักมากกว่า iPhone ครับ ใช้ไปนานๆเมื่อยมือแน่นอน ถ้าคิดว่าจะทำอะไรเกี่ยวกับ accelerometer เช่นเกมส์กลิ้งลูกบอล เกมส์แข่งรถที่บังคับด้วยการเอียง , doodle อะไรทำนองนี้ต้องคิดให้ดีครับ ใช้ไปสัก 5 นาทีก็เริ่มเมื่อยแล้วครับ ไม่เหมือน iPhone ครับถือเป็นชั่วโมงก็ไม่เมื่อย

ทดลองใช้ iPhone App

หนึ่งสิ่งที่ iPad สามารถทำได้ก็คือการเปิด iPhone App ได้ หลังจากที่ผมได้ทดลองเอา App ที่มีอยู่แล้วเช่นเกมส์มาทดสอบ ก็ผลปรากฎว่าได้ผลที่ยอมรับได้นะ คือมันเล่นได้จริงๆนั่นเหละ ผมสรุปให้ได้ว่า

  1. ใช้งานได้จริง แม้กระทั่งเกมส์
  2. มีให้เลือกปรับขนาดหน้าจอ 2 แบบคือแบบเกือบเต็มจอ และแบบขนาดใกล้เคียงกับ iPhone ( เค้าบอกว่าขนาดมันเท่าหน้าจอ iPhone ) แต่จากที่ได้ลองจริงๆแล้วมันไม่เท่าครับ
  3. ความรู้สึกส่วนตัวผมว่า สีมันเข้ม และไม่สว่างเท่า iPhone นะ

ลองดูรูปตัวอย่างจากหน้าจอที่ผม Capture มาให้ดูดีกว่าครับ

จากรูปแรกนี้ผมได้เปิดโปรแกรมที่ผมเขียนเอง ลองทดสอบใช้งานในแบบ ขนาดเท่า iPhone ดูก็ได้ผลปรากฎเหมือนในภาพ สรุปง่ายคือ

  • ตัวหนังสือ รูปภาพก็ไม่ได้แตก ยังคมใช้ได้
  • ยังมีความเพี้ยนของโปรแกรมปรากฎให้เห็นเล็กน้อยครับ ลองสังเกตุตรง Search Bar ครับ จะเห็นว่ามันเป็นสีน้ำเงิน ทั้งๆที่จริงๆแล้ว ใน iPhone มันจะเป็นสีน้ำตาลอ่อนเหมือนกับ Titile Bar ข้างบน
  • ความรู้สึกผมตอนใช้งานไม่เป็นไปดังที่คิด เพราะมันไม่ได้ให้ความรู้สึกเหมือนการใช้งาน iPhone เลย ผมกลับรู้สึกว่าเหมือนเราเปิดโปรแกรม iPhone ใน iPhone Simulator ( โปรแกรมในชุดพัฒนา iPhone ) ซะมากกกว่า

ทีนี้มาทดสอบการใช้งานแบบเปิด 2x ดูบ้างว่าผลเป็นอย่างไร

จากการใช้งาน สรุปได้ว่า

  • รูปภาพและตัวหนังสือเบลอครับ เห็นแตกเป็น pixel เลยทีเดียว
  • ความรู้สึกดีขึ้นกว่า การใช้งานแบบเปิดขนาดเท่า iPhone แต่มันก็ยังแปลกอยู่ดี
  • โปรแกรมก็ยังเพี้ยนเหมือนเดิม

ทีนี้มาดูรูปเปรียบเทียบกับ iPhone ดูดีกว่า

สิ่งที่ Devleoper ควรจะคำนึงในการเขียนโปรแกรมสำหรับ iPad

  1. ถ้าหากคุณเป็นนักพัฒนาโปรแกรมบน iPhone มาก่อนนั้น โปรแกรมของคุณ ต้องแทบจะออกแบบใหม่หมดเลยครับ เพราะอย่างที่ผมบอกไปว่าหน้าจอ iPad มีขนาดใหญ่มากๆ เราสามารถที่จะรวมเอา View หลายๆ View มารวมกันได้ ด้วยหน้าจอเดียว เราควรจะใช้ประโยชน์จากหน้าจอที่ใหญ่ขึ้นให้เป็นประโยชน์
  2. iPad ไม่ใช่ iPhone ขนาดยักอย่างที่หลายคนบอกมา แม้ว่ามันจะคล้ายกับ Netbook แต่การใช้งานโดยปกติมันก็ไม่เหมือน  Netbook เลย ลักษณะการใช้งาน iPhone นั้นใช้มือข้างเดียวถือแล้วเอาอีกนิ้วจิ้ม ส่วน Netbook นั้นหน้าจอภาพอยู่ตรงหน้าเราและมีแป้นเป็นตัวควบคุม แต่ iPad โดยปกติการใช้งานคือต้องเอาวางที่หน้าตักใน แล้วจออยู่ในแนวแบบราบเป็นสิ่งที่เหมาะสมที่สุด
  3. โปรแกรมไม่ควรจะใช้พวก Accelerometer เป็นจุดเด่น เช่นพวกเกมส์ที่ใช้การบังคับด้วยการเอียงเครื่องอย่างเกมส์ doodle นี่เลิกคิดได้เลย ไม่เหมาะเลย มันเหมือนกับเรายกโน๊ตบุคตัวหนึ่งเอียงซ้ายขวาเล่นเกมส์ มันจะเล่นได้สักเท่าไหร่กัน ?
  4. ควรจะใช้ Control พวก Split View แทน Tabbar , Navigation Bar เพราะมันสะดวกกว่า เหมาะสมกว่า

จากทั้งหมดที่ผมกล่าวมา น่าจะพอมองเห็นภาพโดยรวมนะครับ ว่าโปรแกรมของเราควรจะออกแบบลักษณะแบบไหน สิ่งที่ผมอยากจะฝากไว้คือ ก่อนจะทำอะไรสักอย่างเราควรจะพิจาณาตัวเครื่องก่อนครับ ว่าเราจะเขียนมันเพื่อ iPad หรือ iPhone เพราะมันไม่เหมือนกันเลย ต้องคำนึงประสบการณ์การใช้งานของผู้ใช้เป็นหลักครับ แล้วโปรแกรมของเราก็จะออกมาดี

3 thoughts on “iPad Review ( Developer version )”

  1. ยังไม่เริ่มเขียนซักอันเลย คงจะเริ่มจาก iPad เลยดีมั๊ยครับ

Leave a Reply