Academia.eduAcademia.edu

8.บทที่ 2 V 2

บทที่ 2 ทฤษฎีและงานวิจัยที่เกี่ยวข้อง 2.1 สภาพทั่วไปและข้อมูลของแอพพลิเคชั่น การท่องเที่ยวก็เป็นการเรียนรู้อีกรูปแบบหนึ่งอีกทั้งการท่องเที่ยวก็ยังเป็นกิจกรรมที่มนุษย์ส่วนใหญ่ทำกันในเวลาว่างเพื่อให้เกิดความรู้สึกผ่อนคลายความสนุกและยังเป็นการสร้างสัมพันธภาพที่ดีในครอบครัวหรือกลุ่มเพื่อนอีกด้วยสถานที่ท่องเที่ยวในประเทศไทยมีหลายแห่งที่น่าสนใจและภาคใต้ก็เป็นอีกหนึ่งแห่งที่น่าลองไปสัมผัสมากเพราะมีสถานที่ท่องเที่ยวมากมายหลายแห่งที่น่าสนใจ 2.1.1 ลักษณะโครงการ มีรายละเอียดสรุป ดังนี้ 1. นำเสนอเกี่ยวกับสถานที่ท่องเที่ยวที่ขึ้นชื่อของ 14 จังหวัดภาคใต้ 2. นำเสนอเกี่ยวกับของกินที่ขึ้นชื่อของ 14 จังหวัดภาคใต้ 3. นำเสนอเกี่ยวกับผลิตภัณฑ์ที่ขึ้นชื่อของ 14 จังหวัดภาคใต้ 2.1.2 รายชื่อสถานที่ท่องเที่ยว อาหาร ผลิตภัณฑ์ที่ขึ้นชื่อของแต่ละจังหวัด ตารางที่ 2.1 แสดงรายชื่อสถานที่ท่องเที่ยว อาหาร ผลิตภัณฑ์ 14 จังหวัด ภาคใต้ ที่ ชื่อจังหวัด สถานที่ท่องเที่ยวที่ขึ้นชื่อ ของกินที่ขึ้นชื่อ ผลิตภัณฑ์ที่ขึ้นชื่อ 1 กระบี่ - เกาะพี - ผลิตภัณฑ์จากทะเล - เรือหัวโทงจำลอง 2 ชุมพร - หาดทรายรี - กล้วยเล็บมือนาง - จากใบค้อสำหรับมุงหลังคา 3 ตรัง - ถ้ำมรกต - หมูย่างเมืองตรัง - มีดพร้านาป้อ 4 นครศรีธรรมราช - วัดพระมหาธาตุวรมหาวิหาร - - เครื่องถมนคร 5 นราธิวาส - มัสยิดกลางประจำจังหวัดนราธิวาส - ลองกอง - เรือกอและจำลอง 6 ปัตตานี - วัดมุจลินทวาปีวิหาร - ข้าวเกรียบปลา - กรงนกเขาปัตตานี 7 พังงา - เขาตะปู - เต้าส้อ - เรือไม้ระกำจำลอง 8 พัทลุง - อุทยานนกน้ำทะเลน้อย - ข้าวสังข์หยด - หนังตะลุง 9 ภูเก็ต - แหลมพรหมเทพ - หมี่หุ้นปาฉ่าง - ไข่มุก 10 ยะลา - วัดคูหาภิมุข - กล้วยหิน - ผ้าปาเต๊ะ 2.1.3 รายชื่อสถานที่ท่องเที่ยว อาหาร ผลิตภัณฑ์ที่ขึ้นชื่อของแต่ละจังหวัด ตารางที่ 2.1 แสดงรายชื่อสถานที่ท่องเที่ยว อาหาร ผลิตภัณฑ์ 14 จังหวัด ภาคใต้ (ต่อ) ที่ ชื่อจังหวัด สถานที่ท่องเที่ยวที่ขึ้นชื่อ ของกินที่ขึ้นชื่อ ผลิตภัณฑ์ที่ขึ้นชื่อ 11 ระนอง - บ่อน้ำร้อนพุหลุมพี - ซาลาเปาทับหลี - กระเป๋าหนังปลากระเบน 12 สงขลา - วัดพะโคะ - เม็ดมะม่วงหิมพานต์ - ผลิตภัณฑ์จากใบตาล 13 สตูล - น้ำตกวังสายทอง - บุหงาปูดะ - ผ้าบาติก 14 สุราษฎร์ธานี - เขื่อนรัชชประภา - ไข่เค็มไชยา - ผ้าไหมพุมเรียง 2.2 ทฤษฎีและหลักการ 2.2.1 ระบบปฏิบัติการแอนดรอยด์ แอนดรอยด์ (Android) กูเกิลแอนดรอยด์ (Google Android) หรือ ระบบปฏิบัติการแอนดรอยด์ (Android Operating System) เป็นชื่อเรียกชุดซอฟท์แวร์หรือแพลตฟอร์ม (Platform) สำหรับอุปกรณ์อีเล็กทรอนิกส์ที่มีหน่วยประมวลผลเป็นส่วนประกอบ อาทิเช่น คอมพิวเตอร์, โทรศัพท์ (Telephone), โทรศัพท์เคลื่อนที่ (Cell phone), อุปกรณ์เล่นอินเตอร์เน็ตขนาดพกพา (MID) เป็นต้น แอนดรอยด์นั้น ถือกำเนิดอย่างเป็นทางการในวันที่ 5 พฤศจิกายน 2550 โดยบริษัท กูเกิล จุดประสงค์ของแอนดรอยด์นั้น มีจุดเริ่มต้นมาจากบริษัท Android Inc. ที่ได้นำเอาระบบปฏิบัติการลีนุกซ์ (Linux) ซึ่งนิยมนำไปใช้งานกับเครื่องแม่ข่าย (Server) เป็นหลัก นำมาลดทอนขนาดตัว (แต่ไม่ลดทอนความสามารถ) เพื่อให้เหมาะสมแกการนำไปติดตั้งบนอุปกรณ์พกพา ที่มีขนาดพื้นที่จัดเก็บข้อมูลที่จำกัด โดยหวังว่า แอนดรอยด์ นั้นจะเป็นหุ่นยนต์ตัวน้อย ๆ ที่คอยช่วยเหลืออำนวยความสะดวกแก่ผู้ที่พกพามัน ไปในทุกที่ ทุกเวลา 2.2.2 สถาปัตยกรรมของแอนดรอยด์ (Android Architecture) แอนดรอยด์เป็นซอฟต์แวร์ที่มีโครงสร้างแบบเรียงทับซ้อนหรือแบบสแต็ก (Stack) ซึ่งรวมเอาระบบปฏิบัติการ (Operating System), มิดเดิลแวร์ (Middleware) และแอพพลิเคชั่นที่สำคัญเข้าไว้ด้วยกัน เพื่อใช้สำหรับทำงานบนอุปกรณ์พกพาเคลื่อนที่ (Mobile Devices) เช่น โทรศัพท์มือถือ เป็นต้นการทำงานของแอนดรอยด์มีพื้นฐานอยู่บนระบบลีนุกซ์เคอร์เนล (Linux Kernel) ซึ่งใช้ Android SDK (Software Development Kit) เป็นเครื่องมือสำหรับการพัฒนาแอพพลิเคชั่นบนระบบปฏิบัติการ Android และใช้ภาษา Java ในการพัฒนาสถาปัตยกรรมของแอนดรอยด์ (Android Architecture) นั้นถูกแบ่งออกเป็นลำดับชั้น ออกเป็น4ชั้นหลักดังรูปที่ 2.1 รูปที่ 2.1 แสดงสถาปัตยกรรมระบบปฏิบัติการแอนดรอยด์ จากรูปที่ 2.1 จะเห็นได้ว่าระบบปฏิบัติการแอนดรอยด์นั้นมีแบ่งการทำงานเป็นส่วนต่างๆดังนี้ 1. ชั้นแอพพลิเคชั่น (Application) ชั้นนี้จะเป็นชั้นที่อยู่บนสุดของโครงสร้างสถาปัตยกรรม Android ซึ่งเป็นส่วนของแอพพลิเคชั่นที่พัฒนาขึ้นมาใช้งาน เช่น แอพพลิเคชั่นรับ/ส่งอีเมล์, SMS,ปฏิทิน,แผนที่,เว็บเบราเซอร์,รายชื่อผู้ติดต่อ เป็นต้น ซึ่งแอพพลิเคชั่นจะอยู่ในรูปแบบของไฟล์ .apkโดยทั่วไปแล้วจะอยู่ในไดเร็คทอรี data/app รูปที่ 2.2 แสดงตัวอย่างแอพพลิเคชั่น 2. ชั้นแอพพลิเคชั่นเฟรมเวิร์ค (Application Framework) ในชั้นนี้จะอนุญาตให้นักพัฒนาสามารถเข้าเรียกใช้งานโดยผ่าน API (Application Programming Interface) ซึ่ง Android ได้ออกแบบไว้เพื่อลดความซ้ำซ้อนในการใช้งาน application componentโดยในชั้นนี้ประกอบด้วยแอพพลิเคชั่นเฟรมเวิร์คดังนี้ - View System เป็นส่วนที่ใช้ในการควบคุมการทำงานสำหรับการสร้างแอพพลิเคชั่น เช่น lists, grids, text boxes, buttons และ embeddable web browser - Location Manager เป็นส่วนที่จัดการเกี่ยวกับค่าตำแหน่งของเครื่องอุปกรณ์พกพาเคลื่อนที่ - Content Provider เป็นส่วนที่ใช้ควบคุมการเข้าถึงข้อมูลที่มีการใช้งานร่วมกัน(Share data) ระหว่างแอพพลิเคชั่นที่แตกต่างกัน เช่น ข้อมูลผู้ติดต่อ (Contact) - Resource Manager เป็นส่วนที่จัดการข้อมูลต่างๆ ที่ไม่ใช่ส่วนของโค้ดโปรแกรม เช่น รูปภาพ, localized strings, layout ซึ่งจะอยู่ในไดเร็คทอรี res/ - Notification Manager เป็นส่วนที่ควบคุมอีเวนต์ (Event) ต่างๆ ที่แสดงบนแถบสถานะ (Status bar) เช่น ในกรณีที่ได้รับข้อความหรือสายที่ไม่ได้รับและการแจ้งเตือนอื่นๆ เป็นต้น - Activity Manager เป็นส่วนควบคุม Life Cycle ของแอพพลิเคชั่น รูปที่ 2.3 ชั้นแอพพลิเคชั่นเฟรมเวิร์ค (Application Framework) 3.ชั้นไลบรารี (Library) Android ได้รวบรวมกลุ่มของไลบรารีต่างๆ ที่สำคัญและมีความจำเป็นเอาไว้มากมาย เพื่ออำนวยความสะดวกให้กับนักพัฒนาและง่ายต่อการพัฒนาโปรแกรม โดยตัวอย่างของไลบรารีที่สำคัญเช่น - System C library เป็นกลุ่มของไลบรารีมาตรฐานที่อยู่บนพื้นฐานของภาษา C ไลบรารี (libc) สำหรับ embedded system ที่มีพื้นฐานมาจาก Linux - Media Libraries เป็นกลุ่มการทำงานมัลติมีเดีย เช่น MPEG4, H.264, MP3, AAC, AMR, JPG, และ PNG - Surface Manager เป็นกลุ่มการจัดการรูปแบบหน้าจอ การวาดหน้าจอ 2D/3D library เป็นกลุ่มของกราฟิกแบบ 2 มิติ หรือ SGL (Scalable Graphics Library) และแบบ 3 มิติ หรือ OpenGL - FreeType เป็นกลุ่มของบิตแมป (Bitmap) และเวคเตอร์ (Vector) สำหรับการเรนเดอร์ (Render) ภาพ - SQLite เป็นกลุ่มของฐานข้อมูล โดยนักพัฒนาสามารถใช้ฐานข้อมูลนี้เก็บข้อมูลแอพพลิเคชั่นต่างๆ ได้ - Browser Engine เป็นกลุ่มของการแสดงผลบนเว็บเบราเซอร์โดยอยู่บนพื้นฐานของ Webkitซึ่งจะมีลักษณะคล้ายกับ Google Chrome 3.1 Android Runtimeเป็นชั้นย่อยที่อยู่ในชั้นไลบรารี ซึ่งจะประกอบด้วย 2 ส่วนหลักคือ - Dalvik VM (Virtual Machine) ส่วนนี้ถูกเขียนด้วยภาษา Java เพื่อใช้เฉพาะการใช้งานในอุปกรณ์เคลื่อนที่ Dalvik VM จะแตกต่างจาก Java VM (Virtual Machine) คือ Dalvik VM จะรันไฟล์ .dexที่คอมไพล์มาจากไฟล์ .class และ .jar โดยมี tool ที่ชื่อว่า dx ทำหน้าที่ในการบีบอัดคลาส Java ทั้งนี้ไฟล์ .dexจะมีขนาดกะทัดรัดและเหมาะสมกับอุปกรณ์เคลื่อนที่มากกว่า .class เพื่อต้องการใช้พลังงานจากแบตเตอรี่อย่างมีประสิทธิภาพสูงสุด - Core Java Library ส่วนนี้เป็นไลบรารีมาตรฐาน แต่ก็มีความแตกต่างจากไลบรารีของ Java SE (Java Standard Edition) และ Java ME (Java Mobile Edition) รูปที่ 2.4แสดงชั้นไลบรารี (Library) และชั้นAndroid Runtime 4. ชั้นลีนุกซ์เคอร์เนล (Linux Kernel) ระบบ Android นั้นถูกสร้างบนพื้นฐานของระบบปฏิบัติการ Linux โดยในชั้นนี้จะมีฟังก์ชันการทำงานหลายๆ ส่วน แต่โดยส่วนมากแล้วจะเกี่ยวข้องกับฮาร์ดแวร์โดยตรง เช่น การจัดการหน่วยความจำ (Memory Management) การจัดการโพรเซส (Process Management) การเชื่อมต่อเครือข่าย (Networking) เป็นต้น รูปที่ 2.5แสดงชั้นลีนุกซ์เคอร์เนล (Linux Kernel) 2.2.2.1 ประเภทของ android application developerแบ่งตามการทำงานของ application นั้นๆ 1. Activity - แบบนี้เป็นแบบเรียบง่าย ที่สุด และเห็นบ่อยที่สุด คือโปรแกรมที่มีหน้าจอแสดงผล เพื่อให้ user เห็น ไม่ว่าจะเป็น เกมส์, application ที่มีการตอบสนองต่อผู้ใช้ โดย activity นี้ จะทำงานเฉพาะเมื่อมีการตอบสนองจากผู้ใช้เท่านั้น หากออก ก็จะหยุดทันที เช่นเดียวกับ mp3 player ที่เขียน activity ให้ผู้ใช้ เลือกเพลงฟัง แต่เมื่อผู้ใช้กด home เพื่อซ่อนโปรแกรม mp3 player จะหยุดทำงานทันที ดังนั้น mp3 player จึงมีทั้ง activity และ service ประกอบกัน 2. Service - คือการทำงานแบบที่ไม่มีหน้าตา และไม่ต้องการ การโต้ตอบกับผู้ใช้ เช่น service การนับจำนวน download ข้อมูลผ่าน WIFI ระบบสามารถทำงานได้ โดยไม่ต้องมีหน้าจออะไรแสดงเลย (ผู้พัฒนาระบบต้องสร้าง activity เพื่อดึงreportมาแสดงที่หน้าจอ) และอีกตัวอย่าง คือ mp3 player เวลาที่ user กดย่อ ก็ควรจะยังฟังเพลงได้ จึงต้องมารันเป็น service ต่อหลังจากที่ activity ถูกปิดไป 3. Broadcast receivers - จะเป็นลักษณะเหมือนการแจ้ง state ส่วนต่างๆของเครื่องออกมา เช่นbatter low แล้ว และจะมีตัวมารับ เพื่อเอาไปแสดงผลต่อ เช่น แสดงเสียง หรือ led กระพริบ 4. Content providers - เป็นเหมือนสะพานการเชื่อมรับส่งข้อมูลเนื้อหากัน เพื่อใช้อ่านหรือเก็บเข้าส่วนที่จัดเก็บต่อไป 2.2.3  แอนิเมชัน (Animation) แอนิเมชัน (Animation) หมายถึง กระบวนการที่เฟรมแต่ละเฟรมของภาพยนตร์ ถูกผลิตขึ้นต่างหากจากกันทีละเฟรม แล้วนำมาร้อยเรียงเข้าด้วยกัน โดยการฉายต่อเนื่องกัน ไม่ว่าจากวิธีการใช้คอมพิวเตอร์กราฟิก ถ่ายภาพรูปวาด หรือ หรือรูปถ่ายแต่ละขณะของหุ่นจำลองที่ค่อย ๆ ขยับเมื่อนำภาพดังกล่าวมาฉาย ด้วยความเร็ว ตั้งแต่ 16 เฟรมต่อวินาที ขึ้นไป เราจะเห็นเหมือนว่าภาพดังกล่าวเคลื่อนไหวได้ต่อเนื่องกัน ทั้งนี้เนื่องจาก การเห็นภาพติดตาในทาง คอมพิวเตอร์ การจัดเก็บภาพแบบอนิเมชันที่ใช้กันอย่างแพร่หลายในอินเทอร์เน็ต ได้แก่เก็บในรูปแบบ GIF MNG SVG และ แฟลช Animation มี 2 ประเภท คือ 2.2.3.1 ประเภทของ Animationมี 2 ประเภท คือ 1. 2D Animation คือ ภาพเคลื่อนไหวแบบ 2 มิติ มองเห็นทั้งความสูงและความกว้างซึ่งจะมีความเหมือนจริงพอสมควรและในการสร้างจะไม่สลับซับซ้อนมากนักตัวอย่างเช่น การ์ตูนที่เรื่องOne Piece,โดเรมอน หรือ ภาพเคลื่อนไหวที่ปรากฏตามเว็บต่างๆ รวมทั้ง Gif Animation 2. 3D Animation คือ ภาพเคลื่อนไหวแบบ 3 มิติ มองเห็นทั้งความสูงความกว้าง และความลึกภาพที่เห็นจะมีความสมจริงมากถึงมากที่สุดเช่นภาพยนตร์เรื่อง Toy Story  NEMOเป็นต้น 2.2.3.2 รูปแบบของ Animationมี 3 แบบ คือ 1. Drawn Animation คือแอนิเมชันที่เกิดจากการวาดภาพที่ละภาพหลายๆพันภาพ แต่การฉายภาพเหล่านั้นผ่านกล้องอาจใช้เวลาไม่กี่วินาที  ข้อดีของการทำแอนิเมชันชนิดนี้  คือ  มีความเป็นศิลปะ สวยงาม น่าชม  แต่ข้อเสีย  คือ  ต้องใช้เวลาในการผลิตมาก  ต้องใช้แอนิเมเตอร์จำนวนมากและต้นทุนก็สูงตามไปด้วย 2. Stop Motion หรือเรียกว่า Model Animation  เป็นการถ่ายภาพแต่ละขณะของหุ่นจำลองที่ค่อยๆขยับ  อาจจะเป็นของเล่นหรืออาจจะสร้างจาก plasticineวัสดุที่คล้ายกับดินน้ำมัน  โดยโมเดลที่สร้างขึ้นสามารถใช้ได้อีกหลายครั้ง  และยังสามารถผลิตได้หลายตัว  แต่การทำ stop motion ต้องอาศัยเวลาและความทุ่มเทมาก เพราะบริษัทที่ผลิตภาพยนตร์เรื่อง James and Giant Peach สามารถผลิตได้วันละ 10 วินาทีเท่านั้น 3. Computer Animation เป็นงานแอนิเมชั่นที่มักพบกันได้บ่อยในยุคปัจจุบัน เนื่องจากการเข้าถึงโปรแกรมเป็นไปได้ง่ายและการนําหลักการแบบ 2D เข้ามาผสมผสานกับตัวโปรแกรมทําให้เข้าใจได้ง่าย แถมยังสะดวกในการแก้ไขและแสดงผลจึงเป็นที่นิยมกันมากAnimator ในงานประเภทนี้จึงมีเกิดขึ้นมาในยุคปัจจุบันอย่างมากมายพร้อมด้วยความต้องการของวงการบันเทิงในยุคนี้ที่เน้นการทํา CG Animation มากขึ้น ดูได้จากเมืองไทยที่มีสถาบันสอนการทําAnimation เกิดขึ้นอย่างมากมาย 2.2.3.3 กระบวนการพัฒนางานแอนิเมชั่น รูปที่ 2.6 แสดงกระบวนการพัฒนางานแอนิเมชั่น 2.2.4 โปรแกรมที่จะใช้พัฒนา 2.2.4.1 โปรแกรม Adobe Flash CS6 โปรแกรม Flash เป็นซอฟต์แวร์ที่ช่วยในการสร้างสื่อมัลติมีเดีย,ภาพเคลื่อนไหว (Animation), ภาพกราฟิกที่มีความคมชัด เนื่องจากเป็นกราฟิกแบบเว็คเตอร์(Vector),สามารถเล่นเสียงและวีดิโอ แบบสเตริโอได้,สามารถสร้างงานให้โต้ตอบกับผู้ใช้(Interactive Multimedia) มีฟังก์ชั่นสำหรับการเขียนโปรแกรม (Action Script) และยังทำงานในลักษณะ CGI โดยเชื่อมต่อกับการเขียนโปรแกรมภาษาอื่นๆ ได้มากมาย เช่น ภาษา PHP, JSP, ASP, ASP.NET, C/C++, C#, C#.NET, VB, VB.NET, JAVA และอื่นๆ โดยเฉพาะข้อดีของโปรแกรม Flash คือ ความสามารถในการบีบอัดไฟล์ให้มีขนาดเล็ก มีผลทำให้แสดงผลได้อย่างรวดเร็ว นอกจากนั้นยังแปลงไฟล์ไปอยู่ในฟอร์แมตอื่น ได้หลากหลาย เช่น avi, mov, gif, wav, emf,eps, ai, dxf, bmp, jpg, gif, pngเป็นต้น 2.2.4.2 โปรแกรม Adobe AuditionCS6   โปรแกรม Adobe Audition เป็นโปรแกรมที่ใช้ตัดต่อเสียงซึ่งเป็นเจ้าของเดียวกับโปรแกรมยอดนิยม เช่น Photoshop , Illustrator , Pagmaker , Premiere ฯลฯ ซึ่งโปรแกรมแต่ละตัวก็มีความสามารถในการทำงานที่แตกต่างกันAudition เป็นโปรแกรมตัดต่อเสียงชนิด Multi-track ที่มีความสามารถในการตัดต่อเสียงได้หลาย Track นอกจากนั้นแล้วยังสามารถ Import ไฟล์ชนิด CDA (Compact-Dics Audio) ให้เป็นไฟล์เสียงหลายรูปแบบอีกด้วย นอกเหนือจากความสามารถใส่ลักษณะพิเศษให้กับเสียงแบบต่าง ๆ แล้วนั้น Audiotionนำไฟล์ภาพ Video เข้ามาเพื่อ Mix เสียงให้เข้ากับภาพได้ด้วย  2.2.4.3โปรแกรม Adobe PhotoshopCS6 โปรแกรม Adobe Photoshop cs6 โปรแกรมแต่งรูป ภาพอันดับหนึ่งที่นิยมใช้กันทั่วโลก โดยเฉพาะอย่างยิ่งในวงการของนักออกแบบภาพถ่ายต่างๆทุกวงการ ย่อมรู้จัก โปรแกรม Adobe Photoshop เนื่องด้วยเครื่องมือที่หลากหลายในการสนับสนุนในการสร้างผลงานมากมาย เช่น นิตยสาร สื่อสิ่งพิมพ์ ภาพกราฟฟิก ป้ายโฆษณา หรือการออกแบบเว็บไซต์ต่างๆ ให้ออกมาอย่างสวยงาม และยังมีการปรับปรุงแก้ไขในส่วนที่ผิดพลาด เพิ่มประสิทธิภาพการใช้งานของโปรแกรมจนมาถึง Adobe Photoshop cs6 แล้วพร้อมด้วยเครื่องมือที่สะดวกและรวดเร็ว 2.2.4.4 โปรแกรม Eclipse Eclipse คือโปรแกรมที่ใช้สำหรับพัฒนาภาษา Java ซึ่งโปรแกรม Eclipse เป็นโปรแกรมหนึ่งที่ใช้ในการพัฒนา  Application Server ได้อย่างมีประสิทธิภาพ และเนื่องจาก Eclipse เป็นซอฟต์แวร์ OpenSource ที่พัฒนาขึ้นเพื่อใช้โดยนักพัฒนาเอง ทำให้ความก้าวหน้าในการพัฒนาของ Eclipse เป็นไปอย่างต่อเนื่องและรวดเร็ว 2.2.5 ภาษาที่จะใช้พัฒนา Java หรือ Java programming language คือภาษาโปรแกรมเชิงวัตถุ พัฒนาโดย เจมส์กอสลิงและวิศวกรคนอื่นๆ ที่บริษัท ซัน ไมโครซิสเต็มส์ ภาษานี้มีจุดประสงค์เพื่อใช้แทนภาษาซีพลัสพลัสC++ โดยรูปแบบที่เพิ่มเติมขึ้นคล้ายกับภาษาอ็อบเจกต์ทีฟซี (Objective-C) แต่เดิมภาษานี้เรียกว่า ภาษาโอ๊ก (Oak) ซึ่งตั้งชื่อตามต้นโอ๊กใกล้ที่ทำงานของ เจมส์กอสลิง แล้วภายหลังจึงเปลี่ยนไปใช้ชื่อ “จาวา” ซึ่งเป็นชื่อกาแฟแทน จุดเด่นของภาษา Java อยู่ที่ผู้เขียนโปรแกรมสามารถใช้หลักการของ Object-Oriented Programming มาพัฒนาโปรแกรมของตนด้วย Java ได้ภาษา Java เป็นภาษาสำหรับเขียนโปรแกรมที่สนับสนุนการเขียนโปรแกรมเชิงวัตถุ ( OOP : Object-Oriented Programming) โปรแกรมที่เขียนขึ้นถูกสร้างภายในคลาส ดังนั้นคลาสคือที่เก็บเมทอด (Method) หรือพฤติกรรม (Behavior) ซึ่งมีสถานะ (State) และรูปพรรณ (Identity) ประจำพฤติกรรม (Behavior) 2.3 งานวิจัยที่เกี่ยวข้อง 2.3.1. กรณีศึกษาที่ 1 แอพพลิเคชั่น ขสมก. เพื่อมวลชน Phone โครงการนําร่องพัฒนาระบบสอบถามข้อมูลเส้นทางเดินโดยสารประจําทาง บนอุปกรณ์สื่อสารแบบพกพา แอพพลิเคชั่นสามารถกรอกต้นทางและปลายทาง แล้วจะสามารถบอกสายรถประจําทางที่ไปและระยะเวลาในการเดินทางได้ รูปที่ 2.7 โลโก้ แอพพลิเคชัน ขสมก. เพื่อมวลชน Phone รูปที่ 2.8 แอพพลิเคชั่น ขสมก. (ก) หน้าเลือกสายรถปนะจําทาง (ข) หน้าเส้นทางการเดินรถของรถประจําทาง รูปที่ 2.9 แอพพลิเคชั่น ขสมก. เพื่อมวลชน Phone (ก) หน้าเลือกสถานีต้นทางและปลายทาง (ข) หน้าเลือกสถานนี จุดเด่น 1. ให้ข้อมูลการเดินทางโดยรถประจําทาง ขสมก. อย่างครบถ้วน 2. Interface เรียบง่าย 3. สามารถค้นหาสายรถประจําทางได้ และบอกระยะเวลาการเดินทางได้ จุดด้อย 1. การทํางาน ในการค้นหา ทํางานช้ามาก 2. ไม่มีบอกสถานที่ท่องเที่ยวใกล้เคียง 3. การใช้งานซับซ้อน สรุปกรณีศึกษาที่ 1 แอพพลิเคชัน ขสมก. เป็นแอพพลิเคชันที่ให้ข้อมูลเกี่ยวกับรถประจําทางของ ขสมก. ได้ให้ข้อมูลเกี่ยวกับสายรถประจําทางอย่างครบถ้วน ด้านการออกแบบเรียบง่าย และมีฟังก์ชันค้นหาสายรถประจําทางได้สะดวกแต่ในการทํางานของแอพพลิเคชั่นในแต่ละขั้นตอนช้ามาก ทําให้รู้สึกไม่ดีเวลาใช้งานแอพพลิเคชั่น ในส่วนนของการใช้งานเนื่องจากข้อมูลมีเยอะให้ให้การใช้งานยุ่งยากในแต่ละส่วนและไม่มีการบอกสถานที่ใกล้เคียงกับป้ายรถประจําทางแต่ละทาง 2.3.2 กรณีศึกษาที่ 2 แอพพลิเคชั่น กรุงรัตนโกสินทร์ digital book แอพพลิเคชั่น แนะนำสถานที่ท่องเที่ยวในกรุงรัตนโกสินทร์จุใจกับข้อมูลกว่า 50 สถานที่ท่องเที่ยวบนพื้นที่เกาะกรุงรัตนโกสินทร์ ภาพถ่ายกว่า 400 ภาพ พร้อมคําบรรยายประกอบ ทั้งสถาปัตยกรรม ศิลปกรรม ประวัติศาสตร์ และ บุคคลสําคัญแผนที่และข้อมูลของสถานที่ท่องเที่ยว พร้อมวิธีการเดินทาง รูปที่ 2.10 โลโก้ แอพพลิเคชั่น กรุงรัตนโกสินทร์ digital book รูปที่ 2.11 ภาพแสดงส่วนประกอบต่างๆ ในแอพพลิเคชั่น กรุงรัตนโกสินทร์ digital book จุดเด่น 1. ให้ข้อมูลสถานที่ท่องเที่ยวกรุงรัตน์โกสินทร์ มากถึง 50 สถานที่ 2. มีรูปถ่ายมากกว่า 400 รูป 3. บอกวิธีเดินทางไปสถานที่ท่องเที่ยว จุดด้อย 1. เป็นแค่ e-book บนมือถือ 2. ไม่มีการสร้างกําหนดการ การท่องเที่ยว 3. ข้อมูลเป็นภาษาไทยเพียงอย่างเดียว ตัดโอกาสการใช้งานของนักท่องเที่ยวชาวต่างชาติ สรุปกรณีศึกษาที่ 2 แอพพลิเคชั่นกรุงรัตนโกสินทร์ digital book เป็นแอพพลิเคชั่นให้ข้อมูลสถานที่ท่องเที่ยวในกรุงเทพมหานครกว่า 50 สถานที่ โดยให้ข้อมูลอย่างครบถ้วนพร้อมรูปภาพประกอบ แต่การให้ข้อมูลแต่ละสถานที่เป็นเพียงภาษาไทยเท่านั้น ควรจะมีภาษาอังกฤษด้วย 2.3.3 กรณีศึกษาที่ 3 แอพพลิเคชั่น foursquare foursquare คือ แอพพลิเคชั่นฟรีที่ช่วยให้คุณและเพื่อนๆ สนุกกับสถานที่ที่กําลังจะไปได้ถึงขีดสุด เมื่อคุณออกไปข้างนอก ใช้ foursquare เพื่อแชร์และบันทึกสถานที่ที่คุณแวะไปสิ และหากคุณมองหาแรงบันดาลใจสําหรับสิ่งที่จะทําต่อไป เราก็มีคําแนะนําที่โดนใจคุณและข้อเสนอที่เหมาะกับคุณโดยดูจากสถานที่ที่คุณ เพื่อนๆ และคนอื่นที่มีรสนิยมเหมือนคุณเคยไป ไม่ว่าคุณกําลังวางแผนจะท่องเที่ยวรอบโลก หาที่เที่ยวคืนนี้กับเพื่อนๆ หรือลิ้มลองอาหารจานเด็ดที่สุดในเมือง foursquare คือ เพื่อนคู่หูที่ช่วยคุณได้ทุกเรื่อง รูปที่ 2.12 โลโก้ แอพพลิเคชั่น foursquare รูปที่ 2.13 แอพพลิเคชั่น foursquare (ก) หน้า Profile (ข) หน้ารายละเอียด ภาพที่ 2.14 แอพพลิเคชั่น foursquare (ก) หน้าเพื่อนแสดงข้อมูลเพื่อนต่างๆ (ข) หน้าแผนที่ แสดงตําแหน่งต่างๆ จุดเด่น 1. มีระบบสะสมแต้มในการ Check-in แต่ละครั้ง 2. สามารถเชื่อมต่อกับ Social Network ได้ 3. สามารถอธิบาย หรือแสดงความคิดเห็นสถานที่ได้ จุดด้อย 1. เป็นแอปพลิเคชันที่ให้ Check-in เพียงอย่างเดียว 2. ไม่มีบอกวิธีการเดินทางไปยังสถานที่ท่องเที่ยว 3. มีฟังก์ชันไม่ครบตามความต้องการของผู้ใช้งาน เช่น ไม่สามารถบอกวิธีการเดินทางได้ สรุปกรณีศึกษาที่ 3 แอพพลิเคชั่น foursquare เป็น Social Network ที่ให้ผู้ใช้งาน Check-in ตามสถานที่ต่าง ๆ ที่เคยไป และมีการจัดลําดับการ Check-in ของแต่ละคนด้วย ไม่สามารถให้ข้อมูลต่างๆตามสถานที่ที่เราได้ Check-in ผู้วิจัยได้ทำการศึกษาและรวบรวมข้อมูลทำให้มีความประสงค์เพื่อดำเนินการออกแบบและพัฒนาแอพพลิเคชั่นเพลิดเพลินไปกับภาคใต้บนระบบปฏิบัติการแอนดรอยด์ ซึ่งมีสถานที่ท่องเที่ยว ของกินและผลิตภัณฑ์ที่ขึ้นชื่ออีกทั้งยังทำให้ผู้ใช้มีความสะดวกในการใช้งานบนโทรศัพท์เคลื่อนที่สมาร์ทโฟนแท็บแล็ตและแล็บท็อป ที่สนับสนุนระบบปฏิบัติการแอนดรอยด์ ทั้งยังได้เผยแพร่ชื่อเสียงให้กับประเทศไทย และสามารถให้ผู้ใช้สามารถดาวน์โหลดแอพพลิเคชั่นเพลิดเพลินไปกับภาคใต้บนระบบปฏิบัติการแอนดรอย์ เพื่อนำไปใช้งานได้จริงและเกิดผลประโยชน์มากที่สุด