วันพฤหัสบดี, ตุลาคม 23, 2551

พัฒนา Cocoa Application ด้วย MacRuby

ทุกวันนี้เราใช้ภาษา Ruby สร้าง Mac Application ผ่าน "RubyCocoa" ได้อยู่แล้ว แต่วันนี้มีดีกว่า
ถ้าย้อนไปที่ "RubyCocoa" หรือย้อนไปสมัย "JavaCocoa" การเชื่อมต่อภาษาทั้งสองเข้ากับ Objective-C (ภาษาหลักบน OS X) เป็นวิธีเดียวที่จะทำให้ภาษาอื่นๆ สามารถควบคุม Object ต่างๆ ที่สร้างขึ้นด้วยภาษา Objective-C ทุกครั้งที่มีการเรียก object ข้ามภาษา ทุก object จะถูกแปลงจากระบบหนึ่งไปอีกระบบเสมอ และเป็นเหตุให้โปรแกรมทำงานช้าถ้าต้องเชื่อมกันบ่อยๆ "MacRuby" เข้ามาแก้ปัญหาของ "RubyCocoa" โดย Apple พัฒนา Ruby ขึ้นมาใหม่บน CoreFoundation ของเทคโนโลยี Mac OS X เช่น Objective-C runtime และระบบ Gabage Collector ดังนั้น ทุก Class ทุก method และ ทุก object จะเป็น Objective-C ทั้งหมด ทำให้ปัญหาเรื่องการเชื่อมต่อหมดไป MacRuby ก็เข้าทางเดียวกับ jruby พวก data type ต่างๆ อย่าง String, Array หรือ Hash จะถูกทำใหม่อยู่บน CoreFoundation อย่าง CFString, CFArray และ CFDictionary ดังนั้นพฤติกรรมของ string จึงเป็นแบบ C หรือ Objective-C แทน หวังว่าจะไม่มีปัญหาการต่อกับ C แบบ jRuby นะ สนใจรายละเอียดเพิ่มเติม ลองอ่าน tutorial ที่ developer.apple.com
blog comments powered by Disqus