เบื้องต้น - m-powered › thailand › courses › materials ›...
TRANSCRIPT
คมอประกอบการ
อบรม การเขยนโปรแกรม
เบองตน
MineCraft Designer
สารบญ
กจกรรมการเรยนรพนฐานการเขยนโปรแกรมดวยกระดาษกราฟ ............................................... 1
1) ค าศพท............................................................................................................................................... 1
2)การเขยนโปรแกรมบนกระดาษกราฟ ........................................................................................... 2
การเขยน Code อยางงายเพอสรางเกม Minecraft ในแบบฉบบของคณเอง .................................... 6
แหลงเรยนรเพมเตม ............................................................................................................................... 22
อางอง ......................................................................................................................................................... 23
กจกรรมการเรยนรพนฐานการเขยนโปรแกรมดวยกระดาษกราฟ
กอนททกคนจะเขยนโปรแกรมได เราจะตองท าความเขาใจกบพนฐานของการเขยนโปรแกรมกนกอน โดยทกคนจะเรมตนจากการเรยนรสงเหลาน 1) ค าศพท บทเรยนนมค าศพทใหมและส าคญสองค าคอ:
2
1.1)Algorithm – ไหนลองพดซ อล-กอ-ร-ทม Algorithm คอรายการ ล าดบข นตอนทคณสามารถปฏบตตามไดจนจบงาน 1.2)Program – ไหนลองพดซ โปร-แกรม Program คอ Algorithm ทไดรบการเขยนเปนรหสค าส งใหเปนสงทสามารถเรยกใชไดโดยเครองคอมพวเตอร
2)การเขยนโปรแกรมบนกระดาษกราฟ
ในกจกรรมน เราจะบอกค าส งใหคนอนท าการระบายสลงบนกระดาษโดยตองระวงไมใหคนอนเหนรปตนฉบบ โดยเราจะใชกระดาษกราฟทมชองตารางขนาด 4x4 ชองในการท ากจกรรม โดยก าหนดจดเรมตนไวทมมซายบนของกระดาษจากนนเราจะบอกค าส งงายๆใหเพอนรวมทมทรบหนาทเปนเครอง Automatic Realization Machine (ARM) ท างาน โดยชดค าส งมท งหมดดงน
เลอนไปทางขวา 1 ชอง
เลอนไปทางซาย 1 ชอง
เลอนไปดานบน 1 ชอง
เลอนไปดานลาง 1 ชอง
ระบายสลงในชอง ตวอยาง นคอวธทเราจะเขยนอลกอรทมแนะน าเพอน (ทเปนเครอง ARM) ใหท าการระบายสลงในชองตารางวางเปลาของพวกเขาเพอใหไดรปเหมอนรปภาพดานลาง:
เลอนไปทางขวา 1 ชอง
ระบายสลงในชอง
เลอนไปทางขวา 1 ชอง
เลอนไปดานลาง 1 ชอง
ระบายสลงในชอง
3
มนเปนเรองทงายมากทจะเขยน แตมนจะใชเวลามากมายในการเขยนค าแนะน าส าหรบตารางน:
ดวยการแทนคาเพยงเลกนอย เรากจะสามารถท าสงเหลานไดอยางงายดายมากขน! แทนทจะตองเขยนเปนวลท งหมดส าหรบแตละค าส ง เราสามารถใชลกศร ทดแทนวลเหลานนได
ในกรณน สญลกษณลกศรคอรหสค าส ง"โปรแกรม" และวลค าส งคอ "อลกอรทม" นนหมายความวาเราสามารถเขยนอลกอรทม: "เลอนไปทางขวา 1 ชอง เลอนไปทางขวา 1 ชอง ระบายสลงในชอง" ซงมนจะสอดคลองกบรหสค าส งโปรแกรมดงน
เลอนไปทางขวา 1 ชอง
ระบายสลงในชอง
เลอนไปทางขวา 1 ชอง
เลอนไปทางขวา 1 ชอง
ระบายสลงในชอง
เลอนไปดานลาง 1 ชอง
เลอนไปทางซาย 1 ชอง
ระบายสลงในชอง
เลอนไปทางซาย 1 ชอง
และอกกวา 14 ค าส ง
เลอนไปทาง ขวา 1 ชอง
เลอนไปดาน บน 1 ชอง
เลอนไปทาง ซาย 1 ชอง
เลอนไปดาน ลาง 1 ชอง
ระบายส ลงในชอง
4
5
ในการใชลกศร เราสามารถยอนไปท าชดค าส งจากรปตวอยางกอนหนาไดอยางงายดาย
ใหทดลองเขยนชดค าส งลกศรจาก Algorithm ตอไปน เลอนไปทางขวา 1 ชอง ระบายสลงในชอง เลอนไปทางขวา 1 ชอง เลอนไปดานลาง 1 ชอง ระบายสลงในชอง เลอนไปทางซาย 1 ชอง เลอนไปทางซาย 1 ชอง ระบายสลงในชอง เลอนไปดานลาง 1 ชอง เลอนไปทางขวา 1 ชอง ระบายสลงในชอง เลอนไปทางขวา 1 ชอง
ตอไปใหลองท ากจกรรมจากกระดาษกราฟทไดรบแจกไป
6
การเขยน Code อยางงายเพอสรางเกม Minecraft ในแบบฉบบของ
คณเอง 1.เปดไปยง code.org/Minecraft จากนนคลกเลอกภาษาทตองการใชงาน (หมายเหต : ยงไมมภาษาไทยใหเลอก) ใหคลกเลอกภาษาเปน English แลวคลกทป ม Submit
2.ใหคลกทป ม Start บน แบนเนอร Minecraft Designer
7
3.จะปรากฏวดโออธบายเกม ทานสามารถดจนจบและคลก X เพอปดวดโอ
ค าอธบาย : วดโอแนะน าการสรางเกม Minecraft สวสดครบ ผมชอ เจนส และผมเปนหวหนาทมสรางสรรและออกแบบเกม Minecraft ในชวโมงถดไป คณจะไดสรางเกม Minecraft ของคณเอง ทกอยางจะดเหมอนกบเกม Minecraft ในภาคปกต แตทกอยางในโลกจะหยดลง แกะจะไมเดนไปไหน ไกจะไมวางไข ซอมบจะยนอยนงๆ มนขนอยกบคณทจะเพม Code เพอใหโลก Minecraft กลบมาท างานอกคร ง ฉนชอ เมลซซา และฉนเปนนกวจยผใชงาน ท Minecraft ในงานน สงทฉนสนใจอยางจรงจง จะเปนเรองทผคนคดและมปฏสมพนธกบเทคโนโลยอยางไร และงานนมนเปนงานทยอดเยยมมากส าหรบฉน ทจะท าใหวศวกรรมคอมพวเตอรและจตวทยาเรองการคดและการกระท าของมนษยไปดวยกนได คณจะเหนวาหนาจอถกแบงออกเปนสามสวนหลกๆ ไดแก 1)สวนพนทดานซายสดจะเปน Gamespace ใชส าหรบเลนเกม Minecraft ซงตอนนท งโลกหยดนงไปหมด เราตองชวยกนแกปญหานดวยการใช code 2)สวนพนทตรงกลางคอ Tool box กลองตางๆในพนทน
8
คอชดค าส งทไก แกะและสตวอนๆใน Minecraft สามารถเขาใจค าส งได 3)สวนพนทดานขวาเราเรยกวา workspace หรอพนทท างาน ซงเปนพนท ทจะใชสรางโปรแกรมของเรา และหากคณลมไปวาตองท าอะไร กจะมค าแนะน าส าหรบแตละดานอยดานบน ในการเรมตน เราจะเขยนโปรแกรมใหกบไก ใหลากกลองค าส ง move forward ไปยง workspace และเมอฉนคลกทป ม Run ไกกจะเดนไปขางหนาหนงกาว ในการไปตอ ฉนจะท าการลากค าส ง move forward อกกลอง ไปไวภายใตค าส ง move forward ตวแรกจนกระท งมแถบสสวางปรากฎขนมา จากนนใหปลอยเมาสแลวค าส งท งสองกลองกจะตดเขาดวยกน และเมอฉนคลกทป ม Run อกคร ง ไกกจะเดนไปสองกาว เมอใดทคณตองการจะลบกลองค าส ง กแคลบออกจากชดค าส งทตอกนอย โดยการคลกลากกลบมาท Toolbox หลงจากคณคลกทป ม Run คณสามารถคลกทป ม Reset เพอเรมเกมใหมไดตลอดเวลา เอาละ ตอนนถงตาคณแลวทจะสรางเกม Minecraft ในแบบฉบบของคณเอง ขอใหสนกนะ 4.ในหนาจอโปรแกรม เมอคณเขยนค าส งเสรจเรยบรอย ใหคลกทป ม Run เพอทดลองโปรแกรมของคณ
9
5.ดานท 1 ไกยนแขงอยกบท ใหใชค าส ง Move และ Turn ภายในกลองค าส ง When spawned เพอใหไกเคลอนท
6.เมอท าภารกจส าเรจจะมหนาตางแสดงความยนดขนมา ใหคลกทป ม Continue
10
7.ดานท 2 เยยมมาก, ตอนนไกเคลอนทไดแลว แตไกกหยดลงอก ซงในเกม ไกจะตองเดนไปเรอยๆ ใหใชค าส ง forever do เพอท าซ าค าส ง ใหไกเดนไปเรอยๆ
8.ดานท 3 ตอนนกเดนไปในทศทางเดยวกน ซงมนดแปลกมากๆ, ฉะนนในเกม ใหใชค าส ง turn random เพอสมใหไกเดนไปในทศทางตางๆเพอความสมจรง
11
9.กอนเขาดานท 4 จะมวดโออธบายเกยวกบ Events ใหดจนจบแลวกด X เพอปดวดโอ
ค าอธบายวดโอ Minecraft Hour of Code: Events ในดานตอไป คณจะตองเลอกตวละคร วาจะใช Steve หรอ Alex กดป ม ลกศร บนคยบอรดของคณเพอเคลอนทไปดานบน ดานลาง ดานซายหรอดานขวา ตอนนคณสามารถเลอนไปยงบรเวณตางๆของฉากไดตามตองการ หากตองการใชงานหรอใชประโยชนจากสตวตางๆ คณจะตองเดนไปยงสตวแลวหนาเขาหาสตวจากนนใหกดป ม Spacebar หากคณใชอปกรณทมหนาจอสมผส คณสามารถปดนวขนบน ปดลงลาง ปดไปซายหรอขวา เพอเคลอนทไปรอบๆ และใชการแตะลงไปบนเกมเพอเรยกใชงานสตวหรอสงของทอยดานหนาของคณ แลวมนจะเกดอะไรขน เมอคณใชงานสตวหรอสงของตางๆ ใน Minecraft แกะจะใหขนแกคณ, ววจะวงหนไปและเจาครปเปอรจะระเบดเวลาทคณเดนเขาไปใกลๆ ปฏกรยาเหลานเกดขนได ตองขอบคณสงทเรยกวา Events Events จะไปบอกโปรแกรมของคณใหฟงค าส ง หรอใหรอเมอมบางอยางเกดขน และเมอมนเกดขนแลว กใหด าเนนการตามค าส งนนๆ และในดานถดไป คณจะมชดค าส งใหมส าหรบ Events เชน when touched แลววง เมอคณไปแตะสตว
12
หรอ when used เมอไรทคณตองการใชงานสตว หรอ หากคณตองการใหซอมบของคณหายไปเมอพระอาทตยขน ใหใชค าส ง when day 10.ใหเลอกตวละครทจะใชในการเลนเกม
11.ดานท 4 คลกทป ม Run แลวลองใชลกศรบนคยบอรดเดนไปยงประตบาน จากนนใหกดป ม Spacebar เพอเปดประตแลวเขาไปขางใน
13
12.ดานท 5 ใน Minecraft แกะจะใหขนเมอเอาค าส ง drop ไปใสในชดค าส ง when used จากนนใหเดนไปทแกะและกดป ม spacebar เพอเลอกใช แลวแกะกจะใหสงของมา
13.ดานท 6 พวกววก าลงหลงทาง ใหน าทางมนกลบมายงทงหญาโดยใชค าส ง move a step toward ในชดค าส ง forever do ซงเปนชดค าส งแบบท าซ าค าส ง
14
15
14.ดานท 7 เสนทางทจะไปยงแกะถกปดก นไวดวยก าแพงหน แตโชคยงดทมครปเปอรอยทน ครปเปอรจะระเบดหลงจากคณแตะทตวมน ฉนนใหใชครปเปอรระเบดก าแพงแลวคณจะเขาไปหาแกะได
15.ดานท 8 โอว ไม! ซอมบวางกบดกขงคณเอาไวขางใน คณตองเขยนค าส งใหเจายกษเหลกโกเลม ไลตามและโจมตเหลาซอมบ
16
16.ดานท 9 ตอนนคณสามารถเตมเตมโลกของคณไดตามใจปราถนา! ใชค าส ง spawn ภายใตชดค าส ง when run เพอสรางสงตางๆเมอเรมเกม
17.กอนเขาดานท 10 จะมวดโอบรรยาย ใหดวดโอจนจบแลวคลก X เพอปด
17
ค าอธบายวดโอ Minecraft Hour of Code: Spawn ในเกม spawn มความหมายเชนเดยวกบการสราง ในดานน ใหสรางซอมบขนมาเมอพระอาทตยตกดน วธการสรางคอ เราจะใชชดค าส ง when night ซงเราต งใจใหซอมบถกสรางขนในตอนค า เรากจะเพมค าส ง spawn zombie ภายใตชดค าส ง when night และเมอเหลาซอมบถกสรางขน ซอมบแตละตวกจะท าค าส งตามทเราก าหนดใหภายใต Events หรอชดค าส ง when spawned ขอใหสนกกบการสรางซอมบนะ! 18.ดานท 10 ตอนนคณสรางซอมบไดแลว ใชค าส ง spawn เพอสรางซอมบสามตวเมอพลบค า จากนนส งใหเหลาซอมบเดนตามมาทคณ ใหคณเอาชวตรอดจนกวาจะรงสาง
18
19.ดานท 11 บางเกมจะใหคะแนนกบคณ, ใหเลนแตะกบเจายกษเหลกโกเลมและใชค าส ง add 1 to score เพอใหคะแนนตวคณเองเมอคณไปแตะเจายกษเหลกโกเลมได ใหเกบคะแนนใหได 5 แตมเพอเอาชนะดานน
20.กอนเขาดานท 12 จะมวดโอบรรยาย ใหดวดโอจนจบแลวคลก X เพอปด
19
ค าอธบายวดโอ Minecraft Hour of Code: Congratulations ขอแสดงความยนดดวย! คณเพงจะไดเรยนรการใชงานค าส งดานวทยาศาสตรคอมพวเตอรเพอท าใหโลก Minecraft กลบมามชวตอกคร งตอนนคณคอนกพฒนาโปรแกรมแลว คณไดปลดลอคค าส งและสตวท งหมดออกมาแลว ตอไปคณกเลอกไดวาจะใหเกดอะไรขนบาง เดกๆพดคยกน “เธอตองการจะใหมนท าอะไร โอเค เราอยากใหมนไปและเมอถงกลางคนกใหมนระเบด เราไมไดตองการจะเกบแร แตเราก าลงจะเกบทราย! ...” หลงจากทคณสรางเกมของคณเสรจแลว เลอก share เพอรบลงคทคณจะสามารถแบงปนกบเพอนของคณ หรอเลนเกมของคณบนมอถอของคณ ขอใหสนกนะ! ผมก าลงรอทจะเลน Minecraft ในรปแบบของคณอยนะ 21.ดานท 12 สรางโลก Minecraft ในแบบทคณตองการไดเลย เมอสรางเสรจใหคลกทป ม Run และทดลองเลนเกมด คณสามารถ reset เพอปรบเปลยนเกมไดตามตองการ เมอสรางเสรจแลวใหคลกทป ม Finish
20
22.คณสามารถ Copy ลงคหรอกดป มแบงปนไปยง Facebook, Twitter หรอ
ส งพมพลงคออกมา จากนนคลกทป ม Finish
23.พมพชอและนามสกลของคณเปนภาษาองกฤษลงไปในชอง Name แลวคลก
ทป ม Submit เพอใสชอลงไปในใบประกาศการผานหลกสตร Hour of Code
21
24.คลกบนใบประกาศเพอดรปใบประกาศขนาดใหญ โดยคณสามารถบนทกรป
หรอส งพมพใบประกาศออกมาทางเครองพมพไดเลย หรอจะ share on
facebook หรอ share on twitter กได
22
แหลงเรยนรเพมเตม
education.microsoft.com
mva.microsoft.com
www.microsoft.com/en-us/learning
www.programming.com
www.programming.in.th
www.devahoy.com
ocw.mit.edu/index.htm
www.thaicyberu.go.th
www.youtube.com/user/Microsoft
www.youtube.com/user/Sabyelife
www.youtube.com/user/prasertcbs
www.youtube.com/user/JohnMorrisVideo
23
อางอง
https://code.org/curriculum/course2/1/Teacher
https://www.youtube.com/watch?v=vBUtejDNvrs&feature=youtu.be
https://www.youtube.com/watch?v=52DWGmYuGV0&feature=youtu.be
https://code.org/minecraft