Xamarin

     เป็น Framework ในรูปแบบของ Cross Platform 

 

Xamarin
Xamarin

    

     ในปัจจุบันการเขียน App แบบ Native ด้วย Android จะต้องใช้ภาษา Java และ iOS จะต้องใช้ภาษา Object-C เท่านั้น จะเห็นว่าโครงสร้างและรูปแบบการเขียนของ 2 ภาษานี้ต่างกัน และเป็นการยากที่จะให้นักพัฒนาไปใช้ภาษา Java หรือ Objective-C

 

ความสามารถของ Xamarin

    ไม่ได้มีการใช้ภาษาของตัวเอง แต่จะใช้ภาษา C# ที่ทำงานบน .NET Framework แปลงโค้ดที่เขียนด้วย C# ให้สามารถ Compile ด้วยภาษา Java และ Object-C เพื่อที่จะให้ App ที่เขียนด้วย C# นั้นสามารถทำงานได้เหมือนกับการเขียนด้วยภาษา Java หรือ Objective-C ถ้าแบ่งเครื่องมือพัฒนาแอพฯเป็นประเภทคร่าวๆก็มีดังต่อไปนี้

  • Native -- ภาษาที่ทางผู้พัฒนาแพลตฟอร์มเป็นคนจัดมาให้ เช่น Android - Java, iOS - ObjC/Swift, Window Phone - C#
  • Hybrid - HTML5 + CSS + JavaScript -- มีการเชื่อมต่อกับ Runtime เพื่อเรียกคำสั่งที่ HTML5 ทำไม่ได้ พวก PhoneGap, Kendo จะอยู่ในจำพวกนี้
  • ภาษาอื่นที่คอมไพล์เป็น Native -- เขียนด้วยภาษาอื่นที่ทำขึ้นมาเอง แต่สุดท้ายคอมไพล์ออกมาเป็น Native ซึ่งประเภทนี้แบ่งออกเป็น 2 แบบ คือ
    • ประเภทที่เขียนทีเดียวแล้วรันได้ทุกแพลตฟอร์ม (Write Once Run Anywhere) เช่น Marmalade, Unity3D, libgdx ฯลฯ
    • พวกที่แชร์โค้ดกันระหว่างแพลตฟอร์มได้ส่วนหนึ่ง แต่อีกส่วนต้องเขียนแยกกันไปตามแต่ละแพลตฟอร์ม (Code Sharing) เช่น Xamarin

 

แนวคิดของ Xamarin

     ใช้วิธีสร้าง Core ขึ้นมาแชร์กันตรงกลาง (ADO, Manager, Library, etc.) และแตกส่วน View-Controller ออกเป็นแต่ละแพลตฟอร์มด้วยและเขียนด้วยโครงสร้างภาษาแบบเดียวกับ Native เช่นบน Android ก็ต้องเขียนด้วย xml ใช้ findViewById เพื่อเข้าถึง View นั้นๆ มีการเรียกใช้ Adapter อะไรครบถ้วนเหมือนตัว Native Android ทุกประการ 

 

ข้อมูลอ้างอิง : https://xamarin.in.th

http://www.softmelt.com

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
Unsurpassed Сasual Dating - True Females
โดย pongsu1968 ศ 12 เม.ย. 2024 5:47 am บอร์ด Microsoft Office Knowledge & line & Etc
0
263
ศ 12 เม.ย. 2024 5:47 am โดย pongsu1968 View Topic Unsurpassed Сasual Dating - True Females
Question Tag ใช้อย่างไรในภาษาอังกฤษ
โดย internTk21 พฤ 11 เม.ย. 2024 10:46 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
159
พฤ 11 เม.ย. 2024 10:46 pm โดย internTk21 View Topic Question Tag ใช้อย่างไรในภาษาอังกฤษ
มารู้จัก Clause in English กันเถอะ
โดย internTk21 พฤ 11 เม.ย. 2024 4:26 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
136
พฤ 11 เม.ย. 2024 4:26 pm โดย internTk21 View Topic มารู้จัก Clause in English กันเถอะ
เรียนรู้การเปลี่ยน single noun เป็น plural noun
โดย internTk21 พฤ 11 เม.ย. 2024 3:29 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
140
พฤ 11 เม.ย. 2024 3:29 pm โดย internTk21 View Topic เรียนรู้การเปลี่ยน single noun เป็น plural noun
แจ้งปัญหา ติดบัคในการลงบทความในเว็บไซต์ Mindphp
โดย internTk21 พฤ 11 เม.ย. 2024 2:38 pm บอร์ด MindPHP News & Feedback
2
198
อ 14 เม.ย. 2024 11:03 am โดย mindphp View Topic แจ้งปัญหา ติดบัคในการลงบทความในเว็บไซต์ Mindphp
สอบถาม สมัครสมาชิกใช้เว็บงานเว็บไซต์ไม่ได้ ทำอย่างไร
โดย internTk21 พ 10 เม.ย. 2024 2:23 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
4
256
พฤ 11 เม.ย. 2024 10:48 am โดย mindphp View Topic สอบถาม สมัครสมาชิกใช้เว็บงานเว็บไซต์ไม่ได้ ทำอย่างไร
สอบถาม วิธีแนบรูปเกิน15รูปในบทความใน Mindphp ทำอย่างไร
โดย internTk21 พ 10 เม.ย. 2024 9:27 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
1
116
พ 10 เม.ย. 2024 5:18 pm โดย mindphp View Topic สอบถาม วิธีแนบรูปเกิน15รูปในบทความใน Mindphp ทำอย่างไร
วลีที่มักในการเขียน Argumentative essay
โดย internTk21 อ 09 เม.ย. 2024 11:17 am บอร์ด Microsoft Office Knowledge & line & Etc
0
164
อ 09 เม.ย. 2024 11:17 am โดย internTk21 View Topic วลีที่มักในการเขียน Argumentative essay