การที่ Android ใช้ภาษา Java ทำให้กูเกิลมีปัญหาคดีความกับซันและออราเคิล ทางออกที่เป็นไปได้ในทางทฤษฎีคือเปลี่ยนไปใช้ภาษา-แพลตฟอร์มอื่นแทน ซึ่งก็ไม่ง่ายนักในทางปฏิบัติ
แต่ล่าสุดบริษัท Xamarin ซึ่งเป็นทีมงาน Mono เดิม ( ข่าวการตั้งบริษัท ) ซึ่งเชี่ยวชาญเทคโนโลยีสาย .NET ด้วยโมเดลการพัฒนาแบบโอเพนซอร์ส ประกาศความสำเร็จของโครงการทดลอง XobotOS ซึ่งเป็นการแปลง Android จาก Java มาเป็น C# ทั้งหมด
Xamarin ใช้เครื่องมืออัตโนมัติชื่อ Sharpen ช่วยแปลงโค้ดจาก Java เป็น C# โดยแปลงทั้งเวอร์ชัน 2.x และ 4.x จากนั้นนำโค้ดภาษา C# ที่ได้ไปรันบนเวอร์ชวลแมชีน Mono เดิม
นอกจากเรื่องแปลงโค้ดแล้ว ประสิทธิภาพที่ได้ก็น่าประทับใจมาก เพราะตัวเอนจิน Mono พัฒนามานานกว่า Dalvik มาก บวกกับการออกแบบแพลตฟอร์ม .NET ของไมโครซอฟท์ที่ปรับปรุงเรื่องประสิทธิภาพจาก Java อยู่แล้ว ช่วยให้ประสิทธิภาพของ XobotOS เหนือกว่า Android หลายเท่า (ส่วนปัญหาในการแปลงนั้นทาง Xamarin ไม่ได้ระบุไว้) กราฟเปรียบเทียบประสิทธิภาพดูได้ตามลิงก์
เราอาจได้ยินข่าวกูเกิลซื้อ Xamarin ในเร็วๆ นี้
ที่มา - Xamarin
Comments
ข่าวนี้น่าสนใจจริงๆ ^^
..: เรื่อยไป
ต่อจากข่าวนี้ก็จะเป็น Google เซ็นสัญญาใช้สิทธิบัตรกับ Microsoft
สนุกหละงานนี้
Blognone = 138.1 news/w เยอะมากๆ
ได้จังหวะดีของ Xamarin เลยจริงๆ ต้องรอดูคดีความก่อนด้วยว่าจะออกหัวหรือออกก้อย ความเป็นไปได้จะชัดเจนกว่านี้แต่ที่จริงกูเกิลก็มีตัวเลือกอีกตัวเป็น เนทีฟโค้ด ไปเลยก็ได้นะ ตอนนี้ก็มีแอพจำนวนไม่น้อยที่เป็นเนทีฟแล้วโดยเฉพาะเกมส์ ถ้าจะเอาในเรื่องความเร็วจริงๆ
ถ้า Native แล้วทำ IDE เหมือน XCODE มันก็สบายไปนานละ ขนาดไม่ Native ยังเขียนยากซะขนาดนี้ Native จะขนาดไหน เหนื่อยกะ eclipse ละน๊าาา
ผมเห็น XCode ครั้งแรกแล้วผมไม่กล้าแตะมันอีกเลยนะครับ
ดูๆ แล้ว Eclipse ใช้ง่ายกว่านะ
ไหงงั้น -..-"
มีเหตุผลไหมครับ ผมว่ามันเจ๋งรองๆ จาก visual studio เลยนะ
อาจจะเพราะส่วนนึง ตัวที่ผมลองคือ XCode 2 ก็ได้นะ :P
ผมหัด Obj-C อยู่ก็โอเคนะครับ น่าจะลองดูใหม่นะครับ
ผมก็อยากให้ Android เขียนแอฟด้วย C/C++ ทั้งหมดเหมือนกัน
ปัญหาที่ Google มอง คือ Java Community มันใหญ่มาก มีคนพัฒนาเครื่องมือให้เยอะมาก ๆ เพราะจริง ๆ Google เขาไม่สนหรอกว่าใช้อะไรพัฒนา ขอให้ขายเครื่องได้เยอะ ๆ แอพเยอะ ๆ ก็พอ เพื่อสร้าง Ecosystem ไว้ขายโฆษณา
คำตอบของข้า คือ ประกาศิต
ปัญหาคือแทบไม่มีคนเขียน C# เป็นในกูเกิล
งั้นแปลงเป็น VB.NET หรือ C++ .Net
ผมว่าถ้าเขียน JAVA เป็น ก็ได้ C# ไปกว่าครึ่งแล้วครับ
+1 จริงครับ ครั้งแรกที่ผมเขียน C# ยังอึ้งเล็กน้อย ยกโค้ด Java มาวางได้เกือบหมดเลย - -"
นี่ขนาด VM ของ Mono นะนี่ ประสิทธิภาพยังคนละชั้นกับ Dalvik ละ แสดงว่า VM ของ Windows Phone มันแรงมากกว่าที่คิดอีก
ผมยังเชื่อฝีมือการ optimize ของไมโครซอฟท์นะครับ
แต่ทำไมพวก Bing มัน - -"
ผมคิดอยู่นะครับ ว่า Dalvik มันกาก, จาวาเร็วส์, หรือ Mono มันไว
ไม่รู้อันไหนเป็นเหตุเป็นผลมากกว่ากัน
จำได้ว่าตอน Android ขยับจาก 1.6 ไป 2.X นี่ความเร็วก็แทบจะ x2 นะ เพราะตอนแรกกูเกิล optimize Dalvik มากากมากๆ
เข้ามาชาบูๆ
http://bandaancha.eu/tema/1694367/xobotos-android-reescrito-c
(O_o) ขนาดนั้น
ถ้าปรับแล้วเจ๋งขนาดนี้จริง มีหวัง Android เหยียบ WP7 มิดแหง
ข่าวต่อไป : Google ประกาศซื้อ Xamarinข่าวต่อต่อไป : Microsoft ปัดข้อเสนอ ไม่ให้ Google หนีจาก Java มาเป็น .NET เหตุกลัว WP ดับ
เหอๆๆๆๆ
ตรงนี้ทาง Xamarin รู้แล้วครับ เขาเลยเปลี่ยนแปลงตัว CLR เป็น OpenSource ล้านเปอร์เซ็นต์นานแล้ว และตัวภาษา C# ก็เป็น standard เหมือน JavaScript ดังนั้น หาก Google อยากเปลี่ยนก็เปลี่ยนได้เลยครับ จะได้เกิดการฟ้องร้องจาก Microsoft โดยตรงชนกับ Google ไม่ต้องผ่านนายหน้าอย่าง Oracle อีก แล้วจะได้รู้กันไปเลยว่า C#/.NET ตกลงเป็น Standard จริงหรือเปล่า
คำตอบของข้า คือ ประกาศิต
ความจริง ms สนับสนุน xamarin นะ แต่ google ไม่ชอบ xamarin เพราะมีการยุ่งกับ .net แล้วยังมีการ cross platform แถมยังจะทำให้ Intel ไม่ชอบอีกต่างหาก (เพราะ cross ไปไช้ cpu x86 ไม่ใด้)
อีกอย่างทาง Android เองก็มี Linaro ที่เร็วกว่า Android เดิมเท่าตัว (แต่ยังดึงมาไช้แค่บางส่วน)
samsung ใหญ่แค่ใหน ?https://youtu.be/6Afpey7Eldo
แต่ถ้าอย่างนี้จริง ก็แปลว่าตัว Dalvik เองยังสามารถ optimize ให้เหมาะกับซีพียูบนมือถือได้อีกรึเปล่า?!?
ยังไงก็สู้ C# ได้ยากอยู่ดี
ผมไม่เก่งเรื่องคอมไพเลอร์ แต่เท่าที่อ่านในต้นฉบับ มันเป็นเรื่อง type ของการออกแบบตัวภาษาด้วยน่ะครับ คือ VM ก็ส่วนหนึ่ง แต่โครงสร้างภาษาก็อีกส่วนหนึ่ง
ผมเชื่อว่า Dalvik ยังสามารถ Optimize ได้อีกครับ
แต่คราวนี้ตัว Dalvik เองมันทำงานบนฐานของ Java VM
คงไม่ต้องเล่าต่อเนอะ
ย่อหน้าสุดท้าย ฮา
Coder | Designer | Thinker | Blogger
แปลว่าที่บอกว่าจาวาเร็วส์เป็นเรื่องจริงสินะครับ
จริงครับ เร็วส์มาก ดูกราฟข้างบนแล้ว .NET ช่างต่ำติดดิน
อันนี้ฮาครับ Lol
เย่ ผมหัด monotouch อยู่ครับ อ่านข่าวนี้แล้วรู้สึกคุ้ม
555
ถ้าใช้ภาษาอย่าง Python , PHP ได้ก็น่าจะดี
ช้าเกิน - -'
แอบเชียร์ทีมนี้มานาน ถ้าได้อยู่กับ Google ก็คงจะดีนะครับ
เยี่ยมไปเลย
แล้ว Necessitas Qt Suite for Android ล่ะ จะเร็วระดับไหนหว่า ชอบ Syntax QML
เจ๋งแฮะ
C# มันเมพเหนือ Java อยู่แล้ว อัตราการกินเมมโมรีต่ำกว่ามาก
คำตอบของข้า คือ ประกาศิต
ผมขอสอบถามนิดนึง
คือทำไมไม่มีคนพูดว่า ".NET CLR มันแรงกว่า Java VM" หรือ "Mono VM มันแรงกว่า Java VM"
ทำไมชอบพูดกันว่าภาษา C# แรงกว่าภาษา Java ทั้งๆ ที่ตัวภาษามันก็เป็นแค่ text
คือผมไม่อยากให้คนอื่นๆ จำแล้วเอาไปพูดต่อผิดๆ น่ะครับ
เค้าคงกลัวคนไม่เข้าใจคำกว่า VM ละมั้งครับ
คนที่ไม่ค่อยรู้เรื่อง JVM ก็จะไม่รู้เลยจริงๆว่า VM แต่ละเจ้ามันคืออะไร
ก็เลยอ้างเรื่องภาษากันไป
อาจเป็นไปได้ครับ แต่ก็เกรงว่ากลัวจำผิดๆ ไปใช้กันนี่สิ
ผมว่าสมาชิกเว็บนี้พร้อมจะรับคำตอบที่งงแต่ถูกต้อง มากกว่าเข้าใจง่าย แต่ไม่ accurate
อืม...ครับ ผมก็งงที่คุณพูดประโยคล่าง 555
= = เล่นเอาเสียตัว (เสียเซลฟ์ฯ)
แปลจากไทย เป็นไทยคือ
คนที่นี่ชอบข้อมูลที่ถูกต้อง มากกว่าข้อมูลที่เข้าใจง่ายครับ
ขอเป็นถูกต้องและเข้าใจง่ายแทนได้มั้ยฮะ :P
ปล. นอกเรื่อง พอดีกำลังอิน 555
ตอนนี้ที่ บ. กำลังมีปัญหาเรื่องปรับเงินเดือนพนักงาน เป็น 300 บาท โดยเอาค่าครองชีพไปโปะที่เงินเดือนให้ครบ 300 -*- แต่ payroll ไม่ยอมอธิบายข้อมูลที่ง่ายและถูกต้องออกมา จนทำให้เกิดปัญหาตามมาแล้วตอนนี้ เพราะความไม่เข้าใจ เข้าใจผิด ได้กระจายไปทั่ว บ. แล้ว แก้ยากละทีนี้
เห็นด้วยครับ
และแล้ว Google ก็ซื้อ Xamarin แล้วสร้างภาษา GooVa แล้วก็ให้ดัดแปลง engine Mono ไปเป็น GooMoและมีตัวแปลงภาษา Java,C#->GooVa
ยุ่งยากไปปะ
อ้อ GooVaGooMo หมายถึง...ว่า...โม้นี่เอง