รายงาน Xamarin จัดท าโดย นาย ทยากร บุญอดิศัย 6540011018 นาย ตวงวิทย์ ตวงสิทธินันท์ 6540011055 นาย อภิรักษ์ กวีพงศ์ไพศาล 6540011063 เสนอ อาจารย์ปิ ยนาฏ โชติกวณิชย์ รายงานนี้เป็นส่วนหนึ่งของการเรียน วิชา 934-202 MOBILE DEVICE PROGRAMMING ภาคการเรียนที่ 1 ปี การศึกษา 2566 มหาวิทยาลัยสงขลานครินทร์ ( วิทยาเขตสุราษฎร์ธานี)
ค ำน ำ รายงานเล่มนี้จัดท าขึ้นเพื่อเป็นส่วนหนึ่งของ วิชา : MOBILE DEVICE PROGRAMMING เพื่อให้ได้ศึกษาหาความรู้ในเรื่องของ การโปรแกรมอุปกรณ์เคลื่อนที่ และได้ศึกษาอย่างเข้าใจเพื่อเป็นประโยชน์กับการเรียน ผู้จัดท าหวังว่า รายงานเล่มนี้จะเป็นประโยชน์กับผู้อ่าน หรือนักเรียนที่ก าลังหาข้อมูลเรื่องนี้อยู่ หากมีข้อเสนอแนะหรือ ข้อผิดพลาดประการใด ผู้จัดท าขอน้อมรับและขออภัย มา ณ ที่นี้ด้วย ผู้จัดท ำ วันที่ 29 มิถุนำยน พ.ศ. 2566
สำรบัญ เรื่อง หน้ำ บทน ำ 1 2 ความหมายของ Xamarin สรุปคร่าวฯ ความสามารถของ Xamarin 3 เนื้อหำเพิ่มเติมเล็กน้อย 4 สรุป 5 อ้ำงอิงแหล่งที่มำ 6
บทน ำ แนวคิด ที่มา และความส าคัญ ปัจจุบันเทคโนโลยีได้ก้าวหน้ามากกว่าสมัยก่อนและในการเขียน App แบบ Native ด้วยระบบปฏิบัติการแอนดรอยด์ (Android)จะต้องใช้ ภาษาจาวา (Java) และ ระบบปฏิบัติการ IOS (ไอโอเอส) จะต้องใช้ภาษา Object-C เท่านั ้ น จะ เห็นได้ว่าแต่ละระบบปฏับัติการการเขียนจะใช้ภาษาไม่เหมือนกันจากที่ กล่าวมาข้างต้นซึ่งเป็นการยากที่จะท าให้นักพัฒนาไปใช้ภาษา Java หรือ Objective-C แนวคิดของ Xamarin ใช้สร้างคอร์หรือเรียกว่า CPU ขึ้นมาแชร์กันตรงกลาง ( ADO,Manager,Library,etc) และส่วน View-Controller ออกเป็น แต่ละแพลตฟอร์มด้วยและเขียนด้วยโครงสร้างภาษาแบบเดียวกัน Native เช่นบนระบบปฏิบัติการ Androidก็ต้องเขียน XML ใช้ findViewByld เพื่อเข้าถึง View นั ้นฯ มีการเรียกใช้ Adapterอะไร ครบถ้วนเหมือนตัว Native Android 1
ความหมายของ Xamarin IDE ที่ใช้ในการพัฒนาลักษณะที่เป็น Cross Platform ส่วนใหญ่ เขียนในภาษาซีชาร์ป แล้วเราสามารถ แปลงภาษาของ C# นี ้ให้ เป็นภาษา Native ของแต่ละ Platform นั ้นฯประสิทธิภาพดีกว่า ของพวก Hybrid ข้อจ ากัดของ Xamarin เขียน App ที่ CUSTOMIZE UI มากฯ อาจจะไม่ตอบโจทย์ แต่เขียนแอพเชิงองค์กร Xamarin ตอบโจทย์มากกว่า ตัว Xamarin มีเทคนิคที่จะแชร์โปรเจค Call native แต่ละตัวได้ 2
ความสามารถของ Xamarin ตัวของ Xamarin ไม่ใช้ภาษาของตัวเอง แต่จะใช้ภาษา C# (ภาษาซีชาร์ป) ที่ท างานบน .NET Framework ซึ่งสามารถแปลง CODE ที่เขียนด้วย C# ให้สามารถ Compile ด้วย ภาษา Java และ Object-C Native ภาษาที่ทางผู้พัฒนาแพลตฟอร์มเป็ นคนจัดมาให้ เช่น Android -Java, iOS - ObjC/Window Phone - C# Hybrid - HTML5 + CSS + JavaScript -- มีการเชื่อมต่อกับ Runtime เพื่อเรียกค าสั่งที่ HTML5 ท าไม่ได้ พวก PhoneGap, Kendo จะอยู่ในจ าพวกนี้ 3
เนื้อหา (ความรู้เสริมเล็กน้อย) ADO (ActiveX Data Objects) ชุดส่วนประกอบซอฟต์แวร์ส าหรับโปรแกรมเมอร์เพื่อเข้าถึง แหล่งข้อมูลต่างๆ Adapter อุปกรณ์ชาร์จไฟ Cross Platform ซอฟแวร์ภาษา ระบบปฏิบัติการ หรือ อื่นฯ ที่สามารถท างานได้หลาย แพลตฟอร์ม เช่น บน Window และ Mac OS X , Etc… ASP.NET คือ Web Application Framework ส าหรับสร้างเว็บไซต์ เว็บแอป มี CLR ซึ่งท าให้รองรับโดย .Net Framework เช่น C# และ VB.NET ML.NET รันได้บนทุกระบบ และจะมี Framework ใหม่ฯออกมาเรื่อยฯ 4
สรุป Xamarin เป็ น Framework ในรูปแบบของ Cross Platform น ้ันก ็ ค ื อรองรับระบบปฏ ิ บตัิ การได ้ หลากหลายเช่นWINDOW , MAC OS แลว ้สามารถสลบัไปเข ี ยนได ้ ท ้ งัIOS, ANDROID เพราะแปลงเป็ นภาษา C# ซึ่งท าให้เขียนได้ง่ายขึ้น Xamarin แบ่งเป็ น 2 ส่วนคือส่วนของ Logic และ UI ซึ่งเขียนแยก Platform IOS เขียนใน IOS Android เขียนใน Android ส่วน Logic เขียนในที่ฯเดียวในลักษณะของ Shared Source Code กันได้ อาจจะท าเป็ น Lib ส าหรับตัว Xamarin. Form จะแชร ์ ท ้ งัตวั UI และตัว Logic เลย 5
อ้างอิงแหล่งที่มา mindphp.com/บทความ/31-ความรู้ ทั่วไป/4635-what-is-cross-platform.html mindphp.com/คู่มือ/73-คืออะไร/3545-android-แอนดรอยด์-คืออะไร.html mindphp.com/คู่มือ/73-คืออะไร/5440-xamarin.html mindphp.com/คู่มือ/73-คืออะไร/3546-ios-ไอ-โอ-เอส-คืออะไร.html nuuneoi.com/blog/blog.php?read_id=759 168watt.com/ท าความรู้จัก-adapter-อะแดปเตอร์-การเลือกใช้งานและสัญลักษณ์ต่างๆที่ควรรู้ youtube.com/watch?v=88mYJs6VBh0 คลิปวิดีโอศึกษาความหมายของ Xamarin คร่าวฯ youtube.com/watch?v=s3zy89wrHz0 ท าความรู้จักกับ Xamarin Forms framework 6