Cocoa & iPhone Development : Introduction to iPhone Development

มกราคม 22, 2009 at 7:19 pm 4 ของความคิดเห็น

ตอนนี้ผมมีหัวเรื่องเกี่ยวกับการเขียน App บน iPhone เพียบเลย เพราะเพิ่งจะเขียนแอพไอโฟนเสร็จไปตัวนึง เป็น Twitter Client ครับ ยังไม่มีอะไรมากเพราะเป็นแค่แอพที่ทดลองเขียนตาม Assignment ของ CS193P iPhone App Dev ของ Stanford ที่เคยโพสไว้ Entry ก่อนนี้

เมื่อก่อน Entry เกี่ยวกับ Cocoa ของผมดูเหมือนจะไม่ค่อยได้รับความสนใจเท่าไหร่ อันนี้ผมก็ไม่แปลกใจ เพราะบ้านเราใช้ .net framework แทบจะเป็นหลักในการพัฒนาแอพ(เพื่อโปรเจคจบหรือขาย) บวกกับบ้านเราคนใช้เครื่องแมคก็ไม่ได้มากมายอะไร แถม Developer บนแมคยิ่งน้อยใหญ่เลย

แต่ตอนนี้ อะไรๆมันเริ่มเปลี่ยนไป หลายๆคนสนใจการพัฒนาแอพด้วย Cocoa Framework ไม่ใช่เพื่อเครื่องแมค แต่เพื่อ “iPhone” นั่นเอง ใน Entry ก่อนหน้านี้ที่ผมเขียนเรื่อง “การสร้างปุ่มแบบ Run-Time บน iPhone” ปรากฎว่ามีผู้สนใจสอบถามเรื่องเกี่ยวกับการพัฒนาแอพบน iPhone เพราะจะทำเป็นโปรเจคจบ ผมก็เลยคิดว่า งั้นผมจะเขียน Entry เกี่ยวกับการพัฒนาแอพบน iPhone เป็นบทๆไปด้วย นอกจากที่เขียนเป็นทิปๆไป คิดว่าน่าจะมีประโยชน์กับผู้สนใจและเอาไว้แลกเปลี่ยนความรู้กันไปอีกทางนึง

เกริ่นมาเนิ่นนานแล้ว เริ่มเลยแล้วกันนะครับ !!

Chapter 0 : Before we’re start | ก่อนจะเริ่ม

ก่อนที่เราจะเริ่มการพัฒนาแอพบน iPhone นั้น ก็ต้องเตรียมตัวกันก่อนครับ เช็คตัวเองกันนะครับว่ามีสิ่่งเหล่านี้หรือยัง

1. Mac Computer : นี่ไม่ได้มาโฆษณานะครับ แต่มันจำเป็นต้องมี สิ่งแรกที่ขาดไม่ได้คือ เครื่องแมค (intel คงไม่มีปัญหา แต่ PPC ผมว่ามันคงจะอืดน่าดู) ต้องแสดงความเสียใจให้กับสาวก Windows นะครับ เพราะ Apple ไม่ได้ออก SDK For Windows มาให้ 

แต่ก็ไม่ได้ผูกขาดซะทีเดียวนะครับ Opensource iPhone’s Library ก็มีอยู่เหมือนกัน ติดแต่ตรงที่ทำงานบน Linux, ไม่มี Simulator, ไม่มี IDE ดีๆ ฯลฯ ซึ่งกว่าจะเสร็จงานก็คงตกยุคไปซะก่อน แต่ถ้าอยากลองก็ไม่ได้ว่ากันนะครับ เข้าไปดูรายละเอียดจากหนังสือ “iPhone Open Application Development: Write Native Objective-C Applications for the iPhone by Jonathan Zdziarski” กันได้

2. ความรู้เรื่องภาษา Objective-C : Objective-C เป็นภาษาหลักในการพัฒนาแอพบน iPhone ครับ เท่าที่รู้ตอนนี้ ยังไม่มีภาษาอื่นๆ ถ้าอยากรู้ว่ายากหรือแตกต่างกับ C หรือ C# มั้ย ถ้าเป็นเมื่อก่อนคงบอกว่าไม่มาก แต่หลังจากปีที่ผ่านมาที่ Apple ปล่อย Objective-C 2.0 ออกมา ก็คงต้องบอกว่า ต่างกันอยู่เหมือนกัน แต่ก็ไม่ได้มากมาย เรื่อง Objective-C จะพูดอีกตอนหลังนะครับ

3. ความรู้เรื่อง Object-Oriented Programming : จะว่าไปก็ไม่ใช่จำเป็นแค่เฉพาะกับการ Programming แค่บน  iPhone หรอกนะครับ แต่จำเป็นกับการ Programming ในปัจจุบันเลยทีเดียว ถ้ายังไม่แม่นไม่แข็งก็ต้องฝึกกันไปนะครับ เขียนบ่อยๆต่อไปก็จะเก่งขึ้นเรื่อยๆเอง โดยเฉพาะหัดเขียนบน Cocoa หรือ Cocoa Touch Framework อันนี้ช่วยให้เรียนรู้มากครับ เพราะบังคับให้เราเขียนแบบ OOP ทั้งหมด

4. ความรู้เรื่อง MVC Design Pattern : อันนี้ก็สำคัญครับ ปัจจุบัน MVC เป็น Design Pattern ที่ได้รับความแพร่หลายมากในการพัฒนา Application เพราะสามารถแก้ไข จัดการ หรือขยายสเกลของงานได้ง่าย ซ่ึงปัจจุบัน Application ทั้งหลายก็ออกแบบด้วย Design Pattern นีเป็นส่วนมากนะครับ

หลักๆเลยก็จะมีส่ีอย่างนี้นะครับ ที่จะต้องมีเพื่อการพัฒนา iPhone Application สำหรับหัวข้อที่ 2-4 สามารถหาศึกษาได้ทั่วไปนะครับ หรือถ้าอยากอ่านจากหนังสือ ก็แนะนำ Cocoa(R) Programming for Mac(R) OS X (3rd Edition) by Aaron Hillegass ครับ เล่มนี้ถือว่าเป็นไบเบิลของ Cocoa Programming เลยก็ว่าได้ หรือถ้าบนเวบก็เข้าไปที่ Developer Connection ของ Apple ได้ครับ 

ในบททนี้ก็จบไว้เท่านี้ก่อนแล้วกันนะครับ สำรวจตัวเองกันพร้อมแล้ว ก็เจอกันบทถัดไปครับ ;)


Now, I have a many topic about iPhone application programming. Because I’m just finished written the first iPhone application. It’s twitter’s client application. It not have a many features because I try to do from Stanford’s course, CS193P : iPhone app dev. And I ever says about this course in entry before. 

 

From the past, Entry about Cocoa programming look like not have a person who interested in. But I’m not surprise, Because .net framework is more popular  for application development (for grad’s project or commerce). And a mac user group in Thailand is not much and don’t say about mac developer, It’s really small. 

But now. Many things is change. Many developer interesting an application development on Cocoa Framework. Not for Mac but for iPhone. From before this entry, I write about “How to create a button on Run-Time on iPhone” and have a comment from person who interest in iPhone development (He’ll do for grad’s project). So, I think I should write an Entry about “iPhone Development” as chapter over and above  only “Programming Tip”. I hope it useful for who interest and for exchange knowledge.

Says for a long time. Lets start!!

Chapter 0 : Before we’re start 

Before we start to iPhone Application Development. Check yourself. Do you have these thing ?

1. Mac Computer : I’m not an apple’s reseller but it essential. A first thing which you must had is Mac Computer (Intel is no prob but PPC I’m not sure, It’ll very slow). Say sorry to Windows users because Apple not release iPhone SDK for Windows.

But not fully monopolize. It’s have opensource iPhone Library too. But It’s work on Linux, Not have simulator, Not have a good IDE and etc. I think it’ll waste of time. But if you interest, Can look on this book  “iPhone Open Application Development: Write Native Objective-C Applications for the iPhone by Jonathan Zdziarski” 

2. Knowledge about Objective-C : Objective-C is a main programming-language for iPhone Application Development. For other, I’m not sure. Obj-C will not same as C# after Apple release Obj-C 2.0. About Obj-C I’ll say later.

3. Knowledge about Object-Oriented Programming : Not only for iPhone App Dev but for current programming. If you not understand, you must try. Hard practice is better for you especially  practice on Cocoa or Cocoa Touch Framework. It’s help you more understand about OOP because it force you to done everything as object.

4. Knowledge about MVC Design Pattern : It’s essential too. Now MVC is a popular design pattern for application because it easy to manage and enlarge a work scale in later version. Now all of application design on MVC Design Pattern.

For a main is these 4 things which you must have before application development for iPhone for 2-3 choice you can read from general in internet. Or if you want to read from book, I recommend Cocoa(R) Programming for Mac(R) OS X (3rd Edition) by Aaron Hillegass. This book is like as a Bible for Cocoa Programming. Or read from developer Connection of Apple.

Entry filed under: Cocoa Programming, Computer, iPhone Programming, News & Article. Tags: , , , , , .

แค่เธอสงสัย – K-OTIC ฺBook Review : วิชาสุดท้ายที่มหาวิทยาลัยไม่ได้สอน

4 ความเห็น Add your own

  • 1. เป้  |  มกราคม 23, 2009 ที่ 2:01 pm

    แจ่มเลยครับ

    อยากบอกว่าตามอ่านมานานแล้ว

    แล้วก็ไปโหลด text book ที่คุณเคยโพสมาเก็บไว้แล้ว

    ตอนนี้ก็กะลังเริ่มอ่านไปเรื่อยๆ แต่ก็ข้ามไปข้ามมา เปิดหาเฉพาะส่วนที่อยากรู้ อารมณ์เลยไม่ประติดประต่อเท่าไหร่ :)

    ขอบคุณสำหรับการจุดประกายครับ

    ตอบกลับ
  • 2. sup98  |  กุมภาพันธ์ 20, 2009 ที่ 5:52 pm

    ขอบคุณมากครับ
    กำลังหาเรื่อง iphone พอดี
    เพิ่มเติมเรื่อง tool บน window นะครับ

    http://www.ibm.com/developerworks/opensource/library/os-eclipse-iphone/

    ตอบกลับ
  • 3. note  |  กุมภาพันธ์ 26, 2009 ที่ 7:15 am

    มีงานด้าน iPhone App.
    รบกวนติดต่อด้วยครับ
    pornchai@tig-gis.com

    ตอบกลับ
  • 4. แมลงสาบ  |  พฤษภาคม 10, 2010 ที่ 3:52 am

    ขอบคุณสำหรับข้อมูลดีๆนะครับ

    ตอบกลับ

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  เปลี่ยนแปลง )

Google photo

You are commenting using your Google account. Log Out /  เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out /  เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out /  เปลี่ยนแปลง )

Connecting to %s

Trackback this post  |  Subscribe to the comments via RSS Feed


del.icio.us For iPhone dev

Post Calendar

มกราคม 2009
พฤ อา
« ธ.ค.   ก.พ. »
 1234
567891011
12131415161718
19202122232425
262728293031  

%d bloggers like this: