Tags:
Mono

เงื่อนไขที่สำคัญอันหนึ่งของแอปเปิลต่อนักพัฒนาโปรแกรมบน iPhone ก็คือห้ามรันโค้ดของโปรแกรมอื่นๆ ต่ออีกชั้น เงื่อนไขนี้ส่งผลให้โปรแกรมที่เขียนด้วย Java หรือ .NET ไม่สามารถทำงานบน iPhone ได้ และเครื่องมือที่ใช้พัฒนาโปรแกรมบน iPhone "อย่างถูกต้อง" มีแค่ภาษา Objective-C และ Cocoa Touch ของแอปเปิลเท่านั้น

ตอนนี้มีคนหาช่องว่างจากเงื่อนไขนี้ และเสนอทางเลือกอื่นในการพัฒนาโปรแกรมบน iPhone ได้แล้ว ไม่ใช่บริษัทหน้าใหม่ที่ไหน แต่เป็น Novell และทีมงานผู้สร้าง Mono นั่นเอง

แม้ว่า Mono จะเป็นการเลียนแบบแพลตฟอร์ม .NET ของไมโครซอฟท์ และใช้การคอมไพล์ 2 รอบแบบ Just-in-Time (JIT) เหมือนกัน แต่เครื่องมือใหม่ที่เรียกว่า MonoTouch ใช้การคอมไพล์ครั้งเดียวที่เรียกว่า Ahead-of-time (AOT) แปลงโค้ดที่อยู่ในภาษา intermediate ให้เป็นไบนารีก่อนตั้งแต่แรก ฟีเจอร์นี้มีใน Mono รุ่นปกติอยู่แล้ว โดยเรียกว่า Mono AOT

Novell นำ Mono AOT มาดัดแปลงใหม่ ตัดส่วนติดต่อผู้ใช้แบบ WinForms ออกไป และเปลี่ยนเป็น Cocoa Touch ตามมาตรฐานของโปรแกรมบน iPhone ทั่วไป และเรียกมันว่า MonoTouch ข้อดีของวิธีนี้คือโปรแกรมที่ได้มีส่วนติดต่อผู้ใช้เหมือนโปรแกรมอื่นๆ บน iPhone แต่ก็มีข้อเสียคือไม่สามารถนำโปรแกรม .NET เดิมมารันได้โดยตรง จุดขายของ MonoTouch นอกจากใช้ภาษา C# ที่คนคุ้นเคยมากกว่า Objective-C แล้ว ทีมงานของ Novell ยังพบว่าถ้าเขียนโปรแกรมลักษณะเดียวกัน C# ใช้โค้ดน้อยกว่า Objective-C อยู่พอสมควร

MonoTouch ไม่ใช่ซอฟต์แวร์โอเพนซอร์ส คิดราคาต่อนักพัฒนาคนละ 399 ดอลลาร์ ทำงานได้บนแมคเท่านั้นและต้องมี iPhone SDK ติดตั้งอยู่ด้วย

ที่มา - Ars Technica

Comments

By: mossila
Android
mossila's blog
on 16/09/09 12:01 #125150 toggle
mossila's picture

ยังคงไม่ใช่ว่าให้ใครหน้าไหนเขียน app บน iphone ได้อยู่ดี(ตอนแรกอ่านหัวข้อข่าวแล้วเข้าใจผิด) Moss 's blog


Moss 's blog

By: mementototem
ContributorJusci's WriterWindowsIn Love
mementototem's blog
on 16/09/09 12:44 #125154 Reply to:125150 toggle
mementototem's picture

จุดไฟความหวังขึ้นมาในตอนแรก และจับไฟนั้นจุ่มน้ำในตอนจบ - -!

My FingerSports Site


Jusci - Google Plus - Twitter - FSN

By: mr.k
mr.k's blog
on 16/09/09 15:10 #125183 Reply to:125154 toggle
mr.k's picture

เหมือนกันเลยครับ

โปรเจคนี้ผมตามดูตั้งแต่ต้นๆที่เป็น Preview บน Mono-Project แล้วครับ คิดว่าซักวันคงใด้ใช้ แต่ที่ไหนได้???????

By: 0xffeeddaa
0xffeeddaa's blog
on 16/09/09 12:05 #125151 toggle
0xffeeddaa's picture

อ่าน tutor แล้วเจ๋งมาก แต่น่าจะฟรีนะ

By: nuttin0011
nuttin0011's blog
on 16/09/09 12:39 #125153 toggle
nuttin0011's picture

ซักพักจะ มีข่าว ว่า apple block MonoTouch


กำเนิดที่ขา ควบคุมโดยเอว......

By: pittaya
WriterAndroidUbuntuIn Love
pittaya's blog
on 16/09/09 13:33 #125160 toggle
pittaya's picture

ไม่เอา C# ได้ไหม จะเอา Python

pittaya.com


pittaya.com

By: mk
FounderAndroidRed HatWindows
mk's blog
on 16/09/09 13:50 #125162 Reply to:125160 toggle
mk's picture

จริงๆ ใช้ภาษาอะไรที่ .NET สนับสนุนก็ได้ครับ


my disclaimer

By: Thaina
Windows
Thaina's blog
on 16/09/09 23:04 #125253 Reply to:125162 toggle
Thaina's picture

ต้องบอกว่า ที่ Mono สนับสนุนสิครับ

ตอนนี้ Mono กับ .Net ยังสนับสนุนไม่เท่ากันนะ


My Blog

By: Bongbank
ContributoriPhoneAndroidBlackberry
Bongbank's blog
on 16/09/09 14:59 #125178 toggle
Bongbank's picture

จะมีคนใช้ไหมครับนั่น!!!


By: Zerothman
WriteriPhoneIn Love
Zerothman's blog
on 16/09/09 17:24 #125208 toggle
Zerothman's picture

เฮือก ถ้ามีเงินก็น่าสน พ่ายแพ้ให้กับ objective-c มากๆ

By: boykeng
boykeng's blog
on 21/04/10 22:45 #172338 Reply to:125208 toggle
boykeng's picture

พ่ายแพ้ เหมือนกัน


รับสร้างเกมส์ Facebook Online www.orangeointeractive.com

By: havestmoon
havestmoon's blog
on 16/09/09 20:25 #125229 toggle
havestmoon's picture

ไม่มีเงิน แต่อยากเขียนนนน ชอบ ภาษา ตะกูล c มากก ยกเว้น objective-c อิอิ -

ปล. มันต้องเขียนบน MAC อยากเด่วเลยหรอ ไปโหลดตัว Tail มา งง เลย

เหอๆๆๆ

By: PiKO
ContributorAndroid
PiKO's blog
on 16/09/09 21:09 #125231 toggle
PiKO's picture

จบที่ "399 ดอลลาร์ ทำงานได้บนแมคเท่านั้น"

I'm a DS Lover ^^


:: DigiKin8 ::

By: wiennat
Writer
wiennat's blog
on 17/09/09 16:59 #125393 toggle
wiennat's picture

หักมุมสุดๆ ถ้าเป็นหนังก็คงราวๆ Sixth sense

onedd.net


onedd.net