App inventor ใช กับ iphone

App inventor คืออะไร ???

            App Inventor เป็นเครื่องมือที่ใช้สำหรับสร้างแอพพลิเคชันสำหรับสมาร์ทโฟนและแท็บเล็ตที่เป็นระบบปฏิบัติการ Android ซึ่งบริษัท Google ร่วมมือกับ MIT พัฒนาโปรแกรม App inventor ขึ้น ต่อมา Google ถอนตัวออกมาและยกให้ MIT พัฒนาต่อเอง (โดยเน้นกลุ่มผู้ใช้ด้านการศึกษามากกว่า) ในนาม MIT App inventor

            App inventor ใช้หลักการคล้ายๆ กับ Scratch แต่ซับซ้อนกว่า โดยลักษณะการเขียนโปรแกรมแบบ Visual Programming  คือ เขียนโปรแกรมด้วยการต่อบล็อกคำสั่ง เน้นการออกแบบเพื่อแก้ปัญหา (problem solving) ด้วยการสร้างโปรแกรมที่ผู้เรียนสนใจ บนโทรศัพท์มือถือสมาร์ทโฟน (สมัยนี้สมาร์ทโฟนใช้กันทั่วไปอยู่แล้ว โดยเฉพาะเด็กวัยรุ่น)

            App inventor จึงเป็นอีกโปรแกรมหนึ่ง ที่เหมาะสำหรับใช้ในการสอนเขียนโปรแกรม ให้นักเรียนในระดับมัธยมปลาย หรือระดับมหาวิทยาลัย โดยเฉพาะผู้ที่ไม่เคยเขียนโปรแกรมมาก่อนหรือไม่ได้เรียนอยู่ในสายคอมพิวเตอร์

การเขียนโปรแกรมบนสมาร์ทโฟนและแท็บเล็ต Android ด้วย App inventor ในภาพรวมแสดงได้ตามรูปล่างนี้

            App Inventor servers เป็นเครื่องที่ให้บริการและเก็บงานโปรเจกต่างๆ ที่ผู้ใช้สร้างขึ้นมา ผู้ใช้พัฒนาโปรแกรมมือถือ Android โดยสร้างโปรเจกและเขียนโปรแกรมบนเว็บเบราว์เซอร์ ที่เชื่อมต่อไปยัง App Inventor servers เมื่อได้โปรแกรมมา ก็สามารถทดสอบกับโปรแกรมมือถือจำลอง (Android emulator) หรือโทรศัพท์มือถือ Android จริงๆ ก็ได้

            ขั้นตอนการสร้างโปรแกรม (ตามภาพ) เริ่มจากออกแบบหน้าตาโปรแกรมบนมือถือด้วยโปรแกรม App Inventor Designer ซึ่งใช้สำหรับสร้างส่วนโปรแกรมต่างๆ (components) เพื่อใช้งานในโปรแกรมมือถือที่จะสร้างขึ้นจากนั้นเขียนโปรแกรมให้แต่ละส่วนโปรแกรม ด้วยโปรแกรม App Inventor Blocks Editorซึ่งใช้วิธีการต่อบล็อกคำสั่ง เพื่อให้ส่วนโปรแกรมนั้นๆ ทำหน้าที่ของมัน ตามที่ออกแบบเอาไว้

            ระหว่างเขียนโปรแกรม อาจมีการแก้ไข เพิ่มเติม หรือลบบางส่วนโปรแกรมออกไป ทำให้ต้องแก้ไขโปรแกรม (debug) จนกว่าจะได้โปรแกรมตามที่ออกแบบไว้ เมื่อทุกส่วนโปรแกรมถูกสร้างเสร็จแล้ว ก็ได้เวลาทดสอบการใช้งาน โดยการติดตั้งโปรแกรมลงไปบนมือถือ Android แล้วทดสอบการใช้งานผ่านมือถือจริงๆ  แต่ถ้าไม่มีมือถือ ก็ยังสามารถทดสอบได้ ผ่านโปรแกรมมือถือจำลอง (Android emulator) ในคอมพิวเตอร์แทน

ที่มา : //kidsangsan.com

ประวัติและความเป็นมาของโปรแกรม App inventor

            โปรแกรม App Inventor พัฒนาขึ้นโดย MIT โดยโปรแกรม App Inventor เป็นเครื่องมือที่ใช้ในการเขียนโปรแกรมเพื่อพัฒนาเป็นแอพพลิเคชันสำหรับใช้งานบนระบบปฏิบัติการแอนดรอยด์ (Android) ซึ่งเป็นระบบปฏิบัติการที่ใช้ในอุปกรณ์สมาร์ทโฟนและแท็บเล็ต โปรแกรม App Inventor พัฒนาขึ้นโดย Professor Hal Abelson และคณะซึ่งเคยเป็นผู้พัฒนาภาษาโลโก้มาก่อน เขาพัฒนาโปรแกรม App Inventor โดยได้รับการสนับสนุนจากบริษัทกูเกิล (Google Inc.) ซึ่งมีแนวคิดในการพัฒนาอยู่ที่ว่าคนที่อยากสร้างแอพพลิเคชันเพื่อใช้งานบนระบบปฏิบัติการแอนดรอยด์แต่ไม่มีความรู้ ไม่มีทักษะในการเขียนโปรแกรมมาก่อนก็สามารถสร้างแอพพลิเคชันขึ้นได้ง่ายๆ โดยโปรแกรม App Inventor พัฒนาขึ้นบนพื้นฐานทฤษฏีการเรียนรู้ตามแนวทางคอนสตรัคชั่นนิสซึ่ม ซึ่งเน้นให้ใช้การเขียนโปรแกรมเป็นส่วนช่วยส่งเสริมให้เกิดประสิทธิภาพทางความคิดผ่านการเรียนรู้ด้วยการปฏิบัติงานและได้ถูกนำไปใช้สอนนักเรียนในระดับมัธยมศึกษาและในมหาวิทยาลัยหลายแห่งในสหรัฐอเมริกา (Wikipedia, 2012) ด้วยข้อดีของโปรแกรม App Inventor ที่ทำให้ผู้ใช้สามารถพัฒนาแอพพลิเคชันได้ง่ายและสนุกเหมือนการต่อจิ๊กซอว์ (Jigsaw puzzle) หรือการต่อตัวต่อเลโก้ (Lego bricks) App Inventor จึงได้รับความสนใจเป็นอย่างมากสำหรับนักการศึกษาและนักพัฒนาแอพพลิเคชันที่ยังไม่มีประสบการณ์ในการพัฒนาแอพพลิเคชันเพื่อใช้งานบนระบบปฏิบัติการแอนดรอยด์ สอดคล้องกับงานวิจัยของ Pavel Smutny (2011, p.358) ได้กล่าวถึงข้อดีของโปรแกรม App Inventor สำหรับใช้ในการเรียนการสอนว่าการเขียนโปรแกรมด้วย App Inventor ที่มีลักษณะเป็นการต่อบล็อกนั้นง่ายต่อการจำรูปแบบของคำสั่ง ต่างจากการเขียนโปรแกรมด้วยคำสั่งที่เป็นตัวอักษรซึ่งนักเรียนส่วนใหญ่มักจะพิมพ์คำสั่งผิดทำให้เกิดข้อผิดพลาดในการเขียนโปรแกรมจำนวนมาก และนักเรียนยังสับสนกับข้อความแสดงข้อผิดพลาด (error messages) ที่แสดงออกมา ด้วยกลุ่มของคอมโพเนนท์และ ฟังก์ชันที่โปรแกรม App Inventor จัดเตรียมไว้ให้ ช่วยให้เมื่อเริ่มเขียนโปรแกรมผู้พัฒนาเพียงแค่หาบล็อกที่ต้องการแล้วคลิกลากบล็อกนั้นไปวางไว้ในโปรแกรม ซึ่งไม่จำเป็นต้องจำว่าจะเริ่มต้นเขียนด้วยคำสั่งอย่างไร โครงสร้างของคำสั่งเป็นแบบไหน ด้วยความเป็นบล็อกที่นำมาต่อกันเหมือนจิ๊กซอว์ช่วยลดข้อผิดพลาดในการเขียนโปรแกรมเพราะหากเป็นบล็อกที่เลือกไม่ถูกต้องก็จะไม่สามารถนำมาต่อเข้าด้วยกันได้  และด้วยคอมโพเนนท์ที่มีความสามารถสูง (High-level components) เช่นคอมโพเนนท์ที่เกี่ยวกับระบบ GPS (Global Positioning System) ระบบควบคุมหุ่นยนต์เลโก้ (Lego Mindstorms NXT Robot) ระบบอ่านข้อความเป็นเสียง (text-to-speech) และระบบรู้จำเสียง (speech recognition)  เป็นต้น ช่วยลดเวลาในการพัฒนาแอพพลิเคชันเพราะผู้พัฒนาสามารถนำคอมโพเนนท์นั้นมาใช้งานได้เลยทันทีโดยไม่ต้องเสียเวลาเขียนโปรแกรมนานนับเดือน

ที่มา : //programmingappinventor.wordpress.com

            สิ่งหนึ่งที่ทำให้การพัฒนาแอพพลิเคชันของแอนดรอยด์มีอัตราการเจริญเติบโตที่สูงนั้นเป็นเพราะการได้รับความสนับสนุนจากกูเกิลที่เป็นบริษัทยักษ์ใหญ่ และมีการพัฒนาอย่างต่อเนื่องดังจะเห็นได้จากการที่กูเกิลได้พัฒนาโปรเจคต่างๆ ออกมาอย่างต่อเนื่องซึ่งกูเกิลเรียกว่า Labs โดย App Inventor ถือเป็นโปรเจคหนึ่งในนั้น  App Inventor มีแนวคิดในการพัฒนาอยู่ที่ว่าคนที่อยากพัฒนาแอพพลิเคชันลงแอนดรอยด์แต่ไม่มีความรู้ ไม่มีทักษะในการเขียนโปรแกรมมาก่อนก็สามารถสร้างแอพพลิเคชันง่ายๆ ได้ด้วย App Inventor ซึ่งการเขียนโปรแกรมดังกล่าวจะไม่มีการเขียนโค้ดเข้ามาเกี่ยวข้องเลย แต่จะเป็นการใช้ “blocks” ในการเขียนแอพพลิเคชันแทน โดยความคิดนี้เกิดจากการที่กูเกิลต้องการให้คนทั่วไปสามารถพัฒนาแอพพลิเคชันได้ง่าย มีแอพพลิเคชันที่อยากได้เป็นของตัวเองและยังช่วยเพิ่มจำนวนแอพพลิเคชันใน Android Market เพื่อแข่งกับ App Store ของ iPhone อีกด้วย (Pete Cashmore, Mashable, 2010) App Inventor ได้รวมเอาความซับซ้อนในส่วนของการใช้งานคุณสมบัติของฮาร์ดแวร์โทรศัพท์มือถือและส่วนติดต่อกับผู้ใช้ นำมารวมเข้าด้วยกันเป็นลักษณะของคอมโพเนนท์ที่ง่ายต่อการใช้งาน การทำงานของคอมโพเนนท์นั้นมีส่วนที่เปิดให้นักพัฒนาแอพพลิเคชันสามารถเขียนโค้ดโดยการต่อบล็อกที่เป็นรูปภาพแทนการเขียนโค้ดด้วยการพิมพ์คำสั่งที่เป็นตัวอักษร ซึ่งจะมีลักษณะเช่นเดียวกับการต่อตัวต่อปริศนาที่ผู้ใช้ App Inventor สามารถต่อตัวต่อเหล่านั้นรวมกันเพื่อสร้างเป็นแอพพลิเคชันสำหรับใช้งานบนโทรศัพท์มือถือโดยไม่จำเป็นต้องเขียนโค้ดหรือเข้าใจในความซับซ้อนของการพัฒนาแอพพลิเคชันโดยลักษณะการเขียนโปรแกรมแบบใช้ blocks นั้นจะเป็นการใช้ graphical interface ที่มีลักษณะการเขียนแบบเดียวกับโปรแกรม Scratch และ StarLogo ที่จะให้ผู้เขียนทำการลากและปล่อย (drag-and-drop) วัตถุเสมือนหรือเรียกว่า blocks เพื่อวางต่อๆ กันตามโครงสร้างซึ่งมีพื้นฐานอยู่บนแนวคิดของการเขียนโปรแกรมเชิงวัตถุ

            จากงานวิจัยเรื่อง Alice, Greenfoot, and Scratch – A Discussion นั้นได้กล่าวถึงโปรแกรม Scratch ไว้ว่า ในการพัฒนาโปรแกรม Scratch นั้นเราแทบไม่ต้องการความรู้ในการเขียนมาก่อนเลย เพื่อให้เด็กสามารถที่จะเริ่มต้นเรียนรู้ได้ทันที ในมุมมองของเราการเรียนรู้ในการเขียนโปรแกรมมีลักษณะคล้ายกับการเรียนรู้ที่จะขีดเขียน ทั้งสองกรณีนี้เด็กจะสามารถเริ่มต้นได้ทันทีที่พวกเขาสนใจ มันทำให้เด็กรู้สึกว่าสามารถเริ่มต้นได้ด้วยรูปแบบที่ง่าย แล้วจึงค่อยๆ เรียนรู้วิธีการต่างๆ ที่มีความละเอียดอ่อนและมีความซับซ้อนเพิ่มมากขึ้นเมื่อเวลาผ่านไป (Ian Utting, Stephen Cooper, Michael Kolling, John Maloney and Mitchel Resnick, 2011) ในงานวิจัยของ Mitchel Resnick นั้นได้มีการนำเอาโปรแกรม Scratch มาช่วยในการส่งเสริมการเรียนรู้ของนักเรียนโดยใช้โปรแกรม Scratch เป็นเสมือนของเล่นให้นักเรียนเล่น การสร้างโปรแกรมใน Scratch นั้นง่ายเสมือนการหยิบบล็อกรูปร่างต่างๆ มาต่อเข้าด้วยกันเหมือนตัวต่อ LEGO หรือ ชิ้นส่วนปริศนาทำให้นักเรียนเกิดการเรียนรู้เกี่ยวกับความคิดสร้างสรรค์จากกระบวนการเล่นของนักเรียน (Mitchel Resnick, 2007) และในงานวิจัยเรื่อง Programming by Choice: Urban Youth Learning Programming with Scratch ได้แสดงให้เห็นว่าเหตุผลที่ได้เลือกนำเอาโปรแกรม Scratch มาใช้ในการพัฒนาการเขียนโปรแกรมของเด็กนั้นเนื่องจากโปรแกรม Scratch มีลักษณะเป็น Visual block-based programming language ที่ออกแบบมาเพื่อผู้ที่ยังไม่มีความรู้ในเรื่องการเขียนโปรแกรมมาก่อน และจากการนำโปรแกรม Scratch มาใช้เป็นเครื่องมือที่ช่วยพัฒนาการเขียนโปรแกรมให้กับเด็กนั้นสามารถพัฒนาทักษะการเขียนโปรแกรมให้กับเด็กได้ ซึ่งวิเคราะห์ได้จากผลงานของเด็กที่สร้างขึ้นกว่า 500 ชิ้นงาน ว่ามีการพัฒนาการในเรื่องของหลักการในการเขียนโปรแกรมเป็นไปในทางที่ดีขึ้นโดยเด็กเป็นผู้พัฒนาชิ้นงานเอง (John Maloney, Kylie Peppler, Yasmin B. Kafai, Mitchel Resnick and Natalie Rusk, 2008)

            จากแนวทางการเขียนโปรแกรมดังกล่าวทำให้เห็นแนวทางการพัฒนาโปรแกรมที่เปลี่ยนไปจากเดิมที่เป็นการเขียนโปรแกรมแบบโครงสร้าง ไปสู่การเขียนโปรแกรมเชิงวัตถุที่มีการใช้เครื่องมือใหม่ๆ เข้ามาช่วยทำให้การเขียนโปรแกรมเชิงวัตถุที่ยากในการทำความเข้าใจ สามารถทำได้ง่ายโดยที่ผู้เขียนโปรแกรมแทบไม่ต้องมีความรู้ในเรื่องการเขียนโปรแกรมมาก่อน และสามารถพัฒนาความรู้ไปสู่การเขียนโปรแกรมโดยอาศัยแนวคิดเชิงวัตถุที่มีความซับซ้อนต่อไปได้ในอนาคต

ที่มา :  //programmingappinventor.wordpress.com

Toplist

โพสต์ล่าสุด

แท็ก

flow chart แสดงขั้นตอนการปฏิบัติงาน lmyour แปลภาษา กาพย์เห่ชมเครื่องคาวหวาน กาพย์เห่เรือ การเขียน flowchart โปรแกรม ตัวรับสัญญาณ wifi โน๊ตบุ๊คหาย ตัวอย่าง flowchart ขั้นตอนการทํางาน ผู้แต่งกาพย์เห่ชมไม้ ภูมิปัญญาหมายถึง มีสัญญาณ wifi แต่เชื่อมต่อไม่ได้ เชื่อมต่อแล้ว ไม่มีการเข้าถึงอินเทอร์เน็ต แปลภาษาอังกฤษเป็นไทย pantip แปลภาษาไทย ไทยแปลอังกฤษ /roblox promo code redeem 3 พระจอม มีที่ไหนบ้าง AKI PLUS รีวิว APC UPS APC UPS คือ Adobe Audition Adobe Bridge Anapril 5 mg Aqua City Odaiba Arcade Stick BMW F10 jerk Bahasa Thailand Benz C63 ราคา Bootstrap 4 Bootstrap 4 คือ Bootstrap 5 Brackets Brother Scanner Brother iPrint&Scan Brother utilities Burnt HD C63s AMG CSS เว้น ช่องว่าง CUPPA COFFEE สุราษฎร์ธานี Cathy Doll หาซื้อได้ที่ไหน Clock Humidity HTC-1 ColdFusion Constitutional isomer Cuppa Cottage เจ้าของ Cuppa Cottage เมนู Cuppa Cottage เวียงสระ DMC DRx จ่ายปันผลยังไง Detroit Metal City Div class คือ Drastic Vita