jQueryTips by Tee++;

  • Home
  • Videos
  • jQueryTips's Fans

Coding like playing a piano.

Subscribe RSS

Search

Search

Sponsored

jQueryTips on Social

Followers

hide
Chainnnn Pang25441 Dexteri@n Ton KanexKane Supachai JustDoIt Rut petchy Tophit anndrew Webmaster

Categories

hide
  • Programing
  • Database
  • Framework
  • Mobile Development
    • Titanium Mobile
    • PhoneGap
  • Life

Tag Cloud

hide
PHP JavaScript MySQL XML Mobile jQuery CodeIgniter Hash php xml Debug Library Zend API Events Plugins Facebook Basic Registration Tool Twitter Search Swath Performance ffmpeg YouTube Web Service Yahoo! NoSQL MongoDB PhoneGap

Recent Posts

hide
  • ใครๆ ก็มี Utils เอางี้เราเพิ่ม Utils ให้กับ CodeIgniter กันบ้าง
  • แนะนำ JS.Class (A JavaScript class library)
  • PHP กับ OOP มาปูพื้นฐานกันเสียใหม่ก่อน
  • ประกาศข่าวสารจาก Admin
  • JSFIDDLE สุดยอด Tools สำหรับการ Debug การเขียนตัวอย่างโคด
  • Titanium Mobile + HTML + Native Scrolling
  • HTML to PDF ตัวไหนดี วันนี้ผมมีคำตอบ ...
  • ทำความรู้จักกับ JavaScript Pattern ในเชิงลึก
  • ผมบอกคุณแล้ว .... คนโง่ก็ Code ได้
  • วันนี้ มาออกแบบ Web Service ด้วย PHP กันเถอะ (CodeIgniter Version)

Recent Comments

hide
  • เยดดดด
  • มีตัวอย่าง CI แบบ เพียว ๆ ไหมครับ
  • ขอบคุณมากครับ เห็นแนวทางได้ชัดขึ้นจากตอนแรก ที่งงไปหมด ไม่รู้อะไรเป็นอะไร
  • ขอบคุณมากเลยครับท่าน....แหม่เพิ่มกำลังใจให้ผมได้เยอะเลย ตอนนี้กำลังฝึกงานอยู่ที่แห่งนึงในหาดใหญ่ พร้อมเด็กจากอีกสถาบันนึง 3 คน เราคิดว่าเรา…
  • Very good blog, I really like ~

Links

hide
  • OSCOOL
  • Architeture & Performance
  • Video and TV
  • Appcelerator
  • PhoneGap
  • Home
  •  » Blogs

[Part 1] ทำความรู้จักกับ Titanium Platform

Jul 11, 2011 12:50:40 AM | 19 Comments | in Titanium Mobile | Titanium, Mobile, iOS, iPhone

เอาล่ะครับ มาเข้าสู่โลกของ Mobile กันอีกครั้ง 555

วันนี้ผมจะมาเข้าเรื่องของ Titanium Mobile แล้วนะครับ โดยก่อนที่จะลงมือเขียนกันนั้น มาทำความรุ้จักคร่าวๆ กันก่อนว่า ไอ้เจ้า "Titanium Platform" เนี่ยมันคืออะไรกัน ?

Titanium เนี่ยเป็นเครื่องหมายการค้าของ Appcelerator, Inc. โดยมี Tool ที่เป็นจุดขายเลย คือเครื่องมือพัฒนา Software แบบ Cross-Platform และที่สำคัญคือเป็น Native App ด้วย

คำว่า Native App ก็หมายความ App ที่ออกมา จะมีลักษณะ เหมือนกับ App ที่พัฒนาด้วยภาษาต้นแบบเลย ประมาณนั้น โดยภาษาที่เขียนไม่จำเป็นต้องเป็นภาษา ที่ทาง Hardware แต่ละตัวกำหนด โดยที่ ตัว SDK ของ Titanium จะทำหน้าที่เป็นตัวกลางระหว่าง ภาษาที่เราเขียน กับ ภาษาที่ใช้งานจริงๆ ให้เราเอง พูดง่ายๆ ก็ลองนึกภาพ  API ละกัน แนวๆ นั้นแหละ

อ้าวแล้วทำไมเราต้องมาใช้  Titanium ล่ะ ?

จริงๆ ส่วนตัวผมเองตอนแรก มีคำตอบเดียว ก็คือ "มันง่าย" ไม่เสียเวลาดี แต่พอมาจับลึกๆ แล้วมันมีคำตอบที่ผมสรุปมาเองประมาณนี้ครับ

1. ภาษาที่ใช้ส่วนมากเป็น Web Skill ซึ่งผมคิดว่า เราๆท่านๆ ก็คงมีติดตัวกันมาพอสมควร จึงไม่เสียเวลามากนัก ในการเรียนรู้

2. ทำที่เดียวมันออกมาได้หลาย Platform อาทิเช่น เขียน Software บน  Windows ได้ของ Mac, Linux แถมมาด้วย หรือว่า เขียน iPhone ได้ Android ติดมือมาอีก (อาจจะมีแก้คำสั่งส่วน UI บ้าง)

3. มี Developer ใช้อยู่เยอะ พอสมควร App ใหญ่ๆ บางตัวก็ใช้ อาทิเช่น Ebay ทำให้มีความมั่นใจได้พอสมควรว่า จะไม่ถูกลอยแพ หรือว่า ตัดออกจาก สาระบบ ง่ายๆ

4. ฟรี ไม่ต้องเสียตังค์เพิ่มเติม แต่ถ้าอยากจ่ายคุณ ก็อาจจะได้  IDE ดีขึ้น Module API มากขึ้น ได้เข้าไปดูในส่วน Knowlegde Center มากขึ้น ราวๆ นี้

5. API ทำมาได้ล้อกับ Native Apps อย่าง  ได้ใกล้เคียงกันมาก แทบจะครบตามที่ต้องการ


เอาล่ะ 5 ข้อนี้ก็ พอสำหรับการตัดสินใจที่จะใช้งานแล้ว สำหรับผม ที่จะขาดไปบ้างก็มี 

1. Performance ไม่ได้ดีระดับ Native แต่ก็ถือว่าไม่น่าเกลียดไปนัก

2. ไม่มี Interface Builder แต่ข้อนี้ก็แก้ได้ ด้วยมีคนเขียนตัว Convert มาให้แล้วครับ สำหรับ Titanium Mobile นะ เดี๋ยวไว้จะเอามาแนะนำกัน

3. หาข้อมูลยากเหลือเกินครับ ถ้าไม่ยอมจ่ายตังค์ จะส่ง Ticket ไปถามก็ไม่ได้ แต่เรามันพวก คิวบู๊ อยู่แล้ว เรื่องแค่นี้ ไม่ง้อก็ได้วะ !


เอาล่ะๆ มาดูข้อมูลในส่วนอื่นๆ บ้าง

สินค้าในตระกูลของ Titanium นั้นก็มีหลายตัวด้วยกันครับ ตามนี้

http://www.appcelerator.com/products/

ซึ่งถ้าสนใจจะจ่ายตังค์ก็เข้าไปดู แล้วตัดสินใจเลือกกันได้ตามด้านล่างนี้

http://www.appcelerator.com/products/plans-pricing/

แต่สำหรับผมใช้ Free ไปมันก็ใช้ได้เยอะแล้วน้าาา ไว้วันหลังอาจจะอุดหนุน แต่ไม่ใช้ตอนนี้ 555

 

ส่วนตัวที่ผมลองเล่นมีแค่

Titanium Desktop กับ Titanium Mobile

โดยที่ 2 ตัวนี้มีความแตกต่างกันในส่วนของ ปลายทางที่จะ Port ไปลงก็ชื่อมันก็บอกอยู่แล้วนะ โดยไอ้ตัวแรกมุ่งไปทาง Desktop อาทิเช่น Windows, Mac, Linux จริงๆ ไม่อาทิเช่นก็ได้ มันมีแค่นั้นแหละ 555

ส่วนอีกตัวมุ่งไปทาง Mobile คือ iPhone กับ Android ส่วน RIM กับตัวอื่นๆ กำลังพัฒนา อยู่ครับ

 

ต่อไปนี้ผมจะพูดถึง Titanium Mobile เท่านั้นนะครับ เพราะ Desktop ผมยังไม่ได้ลองเล่นอะไรมาก ถึงขนาดเอามาบอกเล่าได้

โดยขั้นตอนติดตั้งจะมีคู่มือ ทั้งในส่วนของ Mac และ PC (Windows 7)

Download Link:
http://www.appcelerator.com/products/download


Installation Guide:

- Windows 7 (Android)

- Mac OS

ส่วนของ MAC นั้นผมลองเขียน เป็น iPhone App วิธีลงง่ายมาก ให้ลง Xcode 4 ก่อน จากนั้นให้ลง Titanium Studio ตาม ก็เป็นอันเสร็จ

(PS. ในส่วนต่อไปผมขอพูดถึงวิธีการเขียนหรือ ข้อมูลด้านอื่นๆ เป็น iPhone App นะครับ เพราะว่าผมยังไม่ได้ลองลง ตัว Android SDK เลยด้วยซ้ำ)

 

หลังจากที่เราลง Titanium Studio เรียบร้อยแล้ว เราก็จะได้ IDE ไว้ใช้งานพร้อมที่จะสร้าง Project แล้วครับ โดย IDE ที่ได้มาจากของ Free จะเป็น Aptana ที่มี Titanium SDK ฝังอยู่ในตัวให้เรียบร้อย (หน้าตาค่อนข้างมืดมน หน่อย แต่ตอนนี้ผมชินแล้ว)

หลังจากที่เราลงเสร็จ สิ่งแรกที่เราควรจะทำเลยคือ Download ตัวอย่าง Kitchen Sink มา แล้วค่อยๆ ไล่ดูทีละอัน

Get Start With Kitchen Sink

ซึ่งตัวอย่างที่เค้าให้มาดูง่ายมากๆ เลยครับ ที่นี้เราลองมาดูพร้อมๆกัน ว่าเราจะทำงานกับ Kitchen Sink ยังไง ?

1. ให้เรา New Mobile Project มาก่อนโดยที่ ทำการคลิกขวา ตรงพื้นที่ฝั่ง Document แล้ว เลือก

New -> Titanium Mobile Project


2. ให้ Download Kitchen Sink มา แล้วจับ โยกเข้าไปใน  Project เรา หรือว่าจะ Import เข้าไป ผลที่ได้ก็เหมือนกันครับ โดยจะได้ Tree ตามรูปด้านล่าง

3. จากนั้นให้เราลอง Run iPhone Simulator ขึ้นมาดู โดยกดไปที่ ตัวที่เป็น สามเหลี่ยม ปุ่ม Play นั่นล่ะ

4. สุดท้ายก็ได้ตัวอย่างมาลองแล้ว โดยจะประกอบไปด้วย Tab Group 4 Tabs คือ

4.1 Base UI

4.2 Controls

4.3 Phone

4.4 Platform

4.5 Mashups

5. โดยเราจะสามารถ รู้ได้ว่า ตัวอย่างนี้รันอยู่ที่ไฟล์ไหน ได้โดยดูที่ Console Log ประกอบครับ แล้วก็เข้าไปดูซิว่า เค้าเขียนแบบไหน มันถึงออกมาได้แบบนั้น

6. โดยการเขียนทุกครั้งเราจะต้องเริ่มจากไฟล์ app.js เป็นไฟล์แรก ซึ่งตามตัวอย่างนี้ ใช้ TabGroup เป็นตัวเริ่มต้นของ Application

 

เอาล่ะครับ เท่านี้ก็เป็นอันจบสำหรับการเริ่มต้นกับ Kitchen Sink ซึ่งเรื่องเทคนิคลึกๆ ยังต้องพูดกันอีกยาวครับ สำหรับตัวนี้ซึ่งการเขียน ยังไงวันนี้ผมก็ขอลาไปนอนก่อนล่ะครับ ฝันดี

 

Appendix

1. Titanium Mobile Document Guide

2. Titanium Mobile Q&A

3. Titanium Mobile API Docs

4. Titanium Mobile Programming Guides

5. Seven days with Titanium

6. Titanium Mobile on Mobiletuts+

7. Titanium Mobile on Stackoverflow

8. Building iPhone Apps with JavaScript using Titanium

9. Titanium Mobile Scripts on CodeCanyon (Paid)

10. Titanium Mobile on Vimeo (Media)

11. Titanium Mobile on YouTube (Media)

twitter stumbleupon delicious digg facebook

19 comments

Add comment Load previous All comments

Leave a comment

Post Comment

Powered by OSCOOL. You may view this on RSS or ATOM.

OSCOOL

  • Twitter
  • Facebook
  • Next