Talk: iPhone SDK – II

ตอนแรกผมว่าจะเขียน iphone sdk ละ แต่คิดว่ามันยังไม่ถึงเวลาจะเขียน เพราะอีกตั้งหลายเดือนกว่าจะที่มันจะ update firmware และเราก็คงทำได้แค่ เขียนและลองใช้แต่เฉพาะ กับ emulator แต่ก็เท่าที่อ่านข่าวมาหลายอย่างก็พบว่า มันยังมีกฎต่างๆของ iphone ที่ห้ามไว้ เป็นต้นว่า ห้ามเขียนโปรแกรมที่เกี่ยวกับซิมการ์ด เป็นต้นและอื่นๆอีกมากมาย เท่าๆที่ผมอ่านๆมาเหมือนว่า Java ก็ไม่สามารถทำงานได้เพราะว่ามันเป็น interpreter ซึ่งก็เป็นข้อห้ามของ apple

และผมก็ได้อ่าน review จาก http://www.blognone.com/node/7210 ของคุณ MK ได้เขียนไว้แต่ผมไม่ค่อยเห็นด้วยน่ะ คือเท่าที่อ่านมา เค้าเข้าใจว่ามันเขียนได้เฉพาะ objc แต่จริงๆแล้วมันเขียนได้ด้วย c/c++ อีกภาษา และผมก็ไม่เห็นด้วยตรงที่เค้าบอกว่า

” ข้อดีคือเทคโนโลยีที่ใช้ใน iPhone เป็นเทคโนโลยีที่พิสูจน์แล้วว่าสมบูรณ์ มั่นคง แข็งแรง บั๊กน้อย (ภาษาอังกฤษเรียก mature) แถมประหยัดสตางค์ของแอปเปิลเอง เพราะจ้างนักพัฒนาเขียนไลบรารีครั้งเดียว ใช้ได้ทั้งบนคอมพิวเตอร์ และ iPhone (รวมถึง iPod touch ดังจะกล่าวต่อไป) นักพัฒนาที่คุ้นเคยกับแมคอยู่แล้วก็สบาย แทบไม่ต้องเรียนรู้อะไรใหม่ยกเว้น Cocoa Touch กับเทคโนโลยีเฉพาะของ iPhone อย่างอื่นอีกเล็กน้อยเท่านั้น

แต่ข้อเสียก็มาพร้อมกัน คือนักพัฒนาบนแมคที่ว่าเนี่ย มันมีอยู่สักกี่คนกันเชียว การเรียนรู้ชุดเครื่องมือเหล่านี้ต้องลงทุนสูงพอสมควร อย่างน้อยๆ ต้องซื้อเครื่องแมคมาใช้ ตามอัพเดตใช้ซอฟต์แวร์เวอร์ชันล่าสุดอยู่เสมอ (iPhone SDK รันได้เฉพาะบน Leopard 10.5.2 ขึ้นไป และฮาร์ดแวร์อินเทลเท่านั้น) แถมพัฒนาซอฟต์แวร์บนแพลตฟอร์มนี้แล้วก็รันได้แต่บนแมค ตลาดมีขนาดเล็กมากเมื่อเทียบกับพีซี ยิ่งในประเทศไทย จะหาคนที่พัฒนาซอฟต์แวร์บนแมคเพื่อเลี้ยงชีพนี่แทบนับนิ้วได้ “

จริงๆแล้วข้อดี คือเพราะมันแทบจะเหมือน Api ของ OSX นั่นไม่ใช่ว่ามันจะทำให้ apple ประหยัดเงินสำหรับจ้างนักพัฒนาของตัวเอง แต่มันหมายถึงการพอร์ทโปรแกรมจาก mac มายัง iphone นั้นจะง่ายมากและนักพัฒนาก็เรียนรู้ cocoa touch เพิ่มเติม

ข้อเสียผมก็ไม่ค่อยเห็นด้วยเท่าไหร่ ก็จริงอยู่ว่านักพัฒนาบน mac มันน้อย และตลาดมันแคบ เค้าอาจจะมองว่ามันต้องเขียนด้วย Objc อย่างเดียวมันจึงไม่น่าสนใจ จริงๆข้อเสียทีผมคิดว่ามันน่าจะเป็นที่ การหา resource สำหรับการพัฒนา หรือการเรียนรู้ Carbon/Cocoa นั้นน้อยมากๆ ( นี่เป็นสาเหตุหลักๆ ของผมที่เขียน blog นี้ขึ้นมา ) ผมก็คิดเหมือนกับเค้าน่ะว่า จะหานักพัฒนาซอฟแวร์บนแมคเพื่อเลี้ยงชีพ ในเมืองไทยจะมีสักกี่คน ผมก็ไม่รู้น่ะว่าเมืองไทยจะมีกี่คน แต่ให้เดา ไม่น่าจะถึง 20 คน ไม่ได้หมายถึงว่า เขียน web , php , perl , ruby บน mac น่ะ แต่หมายถึงคนที่ต้องเขียน Objc/Cocoa/Carbon แบบนี้

ความเป็นจริงผมก็ไม่คิดว่า จะได้มาเขียน  software บน mac แบบจริงๆจังๆน่ะ แต่ด้วยว่าอยากลองของใหม่ เลยต้องทำให้ผมต้องพัฒนาโปรแกรมบน mac เพื่อเลี้ยงชีพ จริงๆการเรียนรู้การเขียนโปรแกรมบน mac ไม่ได้ยากเลย แต่ที่สำคัญมากๆก็คือ แหล่งข้อมูลมันน้อยมากๆ ลำพังอ่าน doc ของ apple เองก็อาจจะงง ได้ง่ายๆ ผิดกับ Microsoft ที่เค้ามี MSDN เป็นแหล่งรวมทุกๆอย่างสำหรับการพัฒนา ถ้าจะให้เทียบ แล้วเหมือนกับ ร้านหนังสือ B2S คือ Apple ส่วน Amazon คือ Microsoft อะไรแบบนี้เลย  แหล่งข้อมูลมันต่างกันเยอะมากๆ ก็ไม่แปลกที่ทำไมว่า คนเขียนโปรแกรมบน mac มันน้อยนัก

One thought on “Talk: iPhone SDK – II”

  1. เริ่มอีกคนหนึ่งครับ กำลังผึกวิ่งบนพื้นอยู่ครับ ขนปีกยังไม่งอก รออีกนิด แต่เอาจริงครับ
    ช่วยผมด้วยนะครับ

Leave a Reply