Three20 เป็นไลบรารีโอเพนซอร์ซสำหรับ iOS พัฒนาโดยวิศวกร Facebook ถูกใช้กันอย่างแพร่หลาย ทั้งเป็น Core ในการพัฒนาแอพ Facebook เอง และแอพดังๆ หลายตัวทั้ง Posterous, Pulse, Meetup.com, และ SCVNGR  ก็ได้นำไปใช้

จุดดึงดูของ Three20 อยู่ที่ความง่ายในการใช้งาน และการทำเรื่องยากๆ ซับซ้อน ให้เป็นเรื่องง่ายด้วยโค้ดที่กระชับ ผ่านการออกแบบที่เป็นเอกลักษณ์ของ Facebook เอง เช่น URL-based Navigation ที่มองทุก View เป็น Page และสามารถเข้าถึงได้ผ่าน URL ที่เชื่อมไว้

Highlight

Photo Viewer 

 

 

เป็นอีกหนึ่งฟีเจอร์ที่น่าสนใจของ Three20 ถูกออกแบบให้ทำงานได้เหมือนแอพ Photo บน iPhone แต่เพิ่มความสามารถในการโหลดรูปผ่าน URL มาแสดงเป็นอัลบั้มได้อัตโนมัติ

TTTable View

 

หรือ Simple Table View ที่มอง Table เป็น Array และสามารถกำหนดให้แต่ละเซลล์มีลักษณะที่แต่งต่างกันได้เช่น เซลล์รูป เซลล์ข้อความผสมรูป เซลล์ LongText ที่มีขนาดขึ้นกับข้อความ

HTTP Disk Cache


เนื่องด้วย NSURLRequest สามารถเก็บแคชในเฉพาะบนแรมเท่านั้น ถือว่าเป็นข้อจำกัดสำหรับแอพประเภท Internet-aware ตัว TTURLRequest เกิดมาเพื่อแก้ปัญหานี้ รวมทั้งฟีเจอร์ที่น่าสนใจอย่าง pause/resume ก็ถูกเพิ่มเข้ามาด้วย

Launcher


คนเล่นแอพ Facebook จะคุ้นเคยกันดีกับ Launcher อยู่แล้ว ลักษณะจะเป็นเมนูทีถูกเรียงกันเป็นตาราง และสามารถทำ Paging หลายหน้าได้

URL-based Navigation

จากที่ได้พูดถึงข้างต้น ตัว Three20 อณุญาติให้เราผูก View เข้ากับ URL และเรียกใช้ได้ในทุกๆ ที่ เช่น tt://myContract/getDetail ผูกเข้ากับหน้าแสดงรายละเอียดเพื่อนในสมุดโทรศัพท์

TTLog

เพิ่มขีดความสามารถให้กับ NSLog โดยการแยก Log เป็น Info,Debug,Error และ TTDASSERT ที่ช่วยในงานตรวจสอบหรือ Validation ข้อมูลก่อนนำไปใช้ หากมีข้อผิดพลาดจะแจ้ง Error ออกมา

TTWeb Browser

ถูกใช้เป็น Web Browser ให้กับแอพหลายตัวที่อยู่ใน App Store ตอนนี้ เทียบได้ว่าเกือบทุกแอพที่สามารถเปิดเวปได้ในตัว จะใช้ TTWeb กันหมด

ที่กล่าวมาข้างต้นเป็นเพียงแค่ส่วนหนึ่งใน Three20 ยังมีอีกหลายตัวที่น่าสนใจ สามารถศึกษาเพิ่มเติมได้ที่ http://three20.info

ดาวน์โหลดโค้ดตัวอย่างได้จาก Github  https://github.com/facebook/three20 (โหลดมาเปิด Example/TTCatalog แล้วเลือก TTCatalog ก่อนรัน) 

อ้างอิง: http://www.raywenderlich.com/656/introduction-to-three20

edit @ 22 Sep 2011 01:29:35 by totiz

Comment

Comment:

Tweet

ตัวอย่าง App ที่ใช้ Three20 http://three20.info/gallery

#1 By totiz on 2011-09-22 01:33