การเจริญเติบโตของ Project Mono

by Thaina
9 May 2010 - 20:19

ข่าวสาร Mono หายไปจากบล็อกนอนซักพักแล้ว พอผมกลับไปดูก็พบว่ามันมีอะไรเพิ่มมาไม่น้อย เลยอยากจะรวบรวมหัวข้อที่ผมว่าน่าสนใจมาลิสท์ไว้ให้ดูครับ

สำหรับคนที่ไม่รู้จัก
Mono คือ Application Framework ตัวหนึ่ง ซึ่ง Clone .Net Framework ของ Microsoft ให้ไปใช้บน Platform อื่นๆได้ โดยมีเป้าหมายหลักคือให้ใช้ ภาษา C# และ Managed Application บน Linux และ MacOS รวมถึงการเชื่อมต่อ Library ที่ทำให้นำเอาโปรแกรมที่ทำงานอยู่บน .NET มาเปิดใช้งานในระบบที่ Install Mono ไว้ ได้โดยตรง

(เสริม : Application Framework คือโปรแกรมที่ทำงานคล้ายกับ Java Runtime แต่ Run อยู่บนระบบของ OS ครับ)

เป็นโปรเจคต์ที่ออกมานานแล้ว แม้ว่ามีคนสนใจใช้งานไม่มากนัก แต่ก็นิยมในบางที่ (เช่น เยอรมัน)
ตอนนี้มีการพอร์ทไปลงหลายที่มากกว่าแค่ MacOSX และ Linux รวมถึง Console และ Mobile จำนวนหนึ่งอีกด้วย

จากนี้จะเป็น List หัวข้อที่น่าสนใจนะครับ

Java InterOp

    อันนี้เป็นตัวช่วยที่ให้ชาว Java สามารถทดสอบความสามารถของ Mono ได้ และย้ายมาใช้ Library บน Mono แทนในอนาคต
    มีโปรแกรมเอา Bytecode ของ Java มาแปลงร่างเป็น CIL สำหรับ Mono ได้ หรือจะสั่งให้รัน .jar ด้วย Mono Runtime ตรงๆ ก็ได้ครับ (เป็น Shell Command สั่งด้วย Terminal)

Platform Supported

  • LINUX (และ Mac OSX) BSD และ Solaris เป็นตัวยืนพื้น
  • Wii : Official Port แล้ว สำหรับ Developer ก็คือเขียนเกมลง Wii ด้วย C# โดยตรงได้ครับ ขอ License และ API จาก Nintendo ได้
  • PlayStation3 : ได้เฉพาะ LINUX ใน PS3 ครับ
    • Native Runtime สำหรับ PS3 ยังทำอยู่แต่ยังไม่มีกำหนดเสร็จ
  • Monotouch
    • iPhone / iPod Touch / iPad : JailBreak กันเองนะขะรับ :D
  • Android : Port เรียบร้อยแล้ว ใช้ได้แล้ว
    • ยังมี Flame War กับ Dalvik และผมยังไม่เห็น Official Comment จาก Google
  • และ Windows (แต่ไม่มีใครใช้ เขาใช้ .NET กัน...)

แน่นอนว่ามี CPU Architecture ที่ซัพพอร์ตหลายตัวครับ (ถึงได้ใช้ได้บน Wii และ PS3)
ดูรายละเอียดได้ในหน้าเพจ Supported Platform ครับ

.NET Compatible

  • C# Version 3.0

    • Support Generic และ WinForm ตั้งแต่ Version 2.0

      • ยังมีปัญหาใช้ภาษาที่เขียน Right to Left ไม่ได้
  • LINQ to Object และกำลังทำ LINQ to SQL
  • ASP.NET 3.5
  • ADO.NET 2.0

เสริม

  • ObjectiveC# และ Cocoa# (เข้าใจว่าเป็น Wrapper)
  • GTK# และ GLGTK# (Integrate OpenGL ผูกกับ GTK)
  • Unity Engine ใช้ Mono ในการ Compile สคริปต์ และมี API สำหรับ C#
    • Tools ส่วนใหญ่ เขียนด้วย C# on Mono ด้วย เกมที่ออกมาจาก Unity หลาย Platform ก็รันบน Mono

      • Novell โม้ว่า ใน iPhone store มี App ที่เขียนด้วย C# แล้วใช้ AOT Compiler แล้วผ่าน Approve ของ Apple แล้วกว่า 500 ตัว ,uหลายตัวก็เกิดจาก Unity
    • เกมแรกบน Wii ออกเมื่อต้นปีที่แล้ว

ที่มา :
Mono Project
ผู้พัฒนา AndroidMono

ความเห็นส่วนตัว : อยากให้มีคนมาใช้ C# กันเยอะๆ ผมว่าอนาคต Mono ดูสดใส
ถ้ามีตรงไหนที่ผิดพลาดต้องขอโทษล่วงหน้าด้วยนะครับ อาจจะหาข้อมูลไม่แน่นพอ

Blognone Jobs Premium