Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
並木中等教育学校「はじめてのプログラミング入門」
Search
Fushimi Ryohei
July 03, 2013
Education
0
410
並木中等教育学校「はじめてのプログラミング入門」
2013年7月3日に開催した「はじめてのプログラミング入門」講義資料です。
Fushimi Ryohei
July 03, 2013
Tweet
Share
More Decks by Fushimi Ryohei
See All by Fushimi Ryohei
Sight: "知覚旅行"のための視覚代行デバイス
sidestepism
0
510
Sight: "知覚旅行"のための視覚代行デバイス
sidestepism
0
120
Sight by 200 OK
sidestepism
2
22k
"Mirror Mirror" [SIGGRAPH ASIA 2014] Review
sidestepism
0
79
Bag-of-visual-words を用いた 2クラスの画像識別器の実装 + ハンズオン
sidestepism
2
390
SPAJAM2014 "nani-colle?"
sidestepism
0
270
プレゼンの話
sidestepism
0
230
ノンプログラマーのためのプログラミング講座 第4回「JavaScriptでゲーム開発」
sidestepism
0
170
いばらき総文連2014 コンピュータ部会 プログラミング研修会
sidestepism
0
110
Other Decks in Education
See All in Education
HCL Notes/Domino 14.5 EAP Drop1
harunakano
1
160
Ch2_-_Partie_1.pdf
bernhardsvt
0
140
AWS Well-Architected Labを活用してつよつよAWSエンジニアになろう!!! #jawsug_tokyo
masakiokuda
0
300
自分にあった読書方法を探索するワークショップ / Reading Catalog Workshop
aki_moon
0
310
Zero to Hero
takesection
0
160
Da Necessidade da Devoção à Virgem Santíssima
cm_manaus
0
120
Diseño de estrategia de analítica del aprendizaje en tu centro educativo.
tecuribarri
0
150
2024年度秋学期 統計学 第12回 分布の平均を推測する - 区間推定 (2024. 12. 11)
akiraasano
PRO
0
120
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
2.6k
中野区ミライ★ライター倶楽部presents『MINT』
nakamuramikumirai
0
660
(モブ)エンジニアが伝えるアウトプット活動のススメ!! #カンリーLT
masakiokuda
2
210
Ch4_-_Cours_2.pdf
bernhardsvt
0
150
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
182
22k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
550
It's Worth the Effort
3n
184
28k
Navigating Team Friction
lara
183
15k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Agile that works and the tools we love
rasmusluckow
328
21k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Embracing the Ebb and Flow
colly
84
4.6k
Adopting Sorbet at Scale
ufuk
74
9.2k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.2k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
Transcript
茨城県立並木中等教育学校 はじめてのプログラミング入門 (株)ユビキタスエンターテインメント enchant.js 開発チームリーダー 東京大学工学部 伏見遼平
ࠓͷఔ ߨٛ ࣮शͦͷ લాϒϩοΫ ࣮शͦͷ FODIBOUKT ߨٛ ߨٛ
ࣗݾհ
෬ݟྒྷฏ ౦ژେֶֶ෦ ใֶڭҭ෦ גࣜձࣾϢϏΩλε ΤϯλʔςΠϯϝϯτ
ࣗݾհ ෬ݟྒྷฏ !TJEFTUFQJTN גࣜձࣾϢϏΩλεΤϯλʔςΠϯϝϯτ ळ༿ݪϦαʔνηϯλʔॴଐ FODIBOUKT։ൃνʔϜϦʔμʔ MFBQϓϩδΣΫτϦʔμʔ ౦ژେֶֶ෦ɾେֶӃใֶॴଐ
ࣗݾհ ੜ ɹେֶೖֶ ɹגࣜձࣾϢϏΩλεΤϯλʔςΠϯϝϯτೖࣾ ɹɹɹFODIBOUKT MFBQͷ։ൃ ɹDPEFMFBQͷ։ൃ ɹɹɹɹ౦ژେֶେֶӃใֶڭҭ෦ೖֶ ɹ౦ژେֶֶ෦ਐֶ
౦ژେֶ ڭཆֶ෦ ֶ෦ ཧֶ෦ ֶ෦ ༀֶ෦ จֶ෦ ܦࡁֶ෦ ڭҭֶ෦ ๏ֶ෦
લظ՝ఔ ޙظ՝ఔ
ʮϓϩάϥϛϯάڭҭʯͷ ͨΊͷϓϩδΣΫτ
ήʔϜΛ༡Ϳͷ໘ന͍
୯७ͳϧʔϧͰ໘ന͍
ࣗͷήʔϜΛ࡞Δͷʜ໘ന͍
ήʔϜΛ࡞Δͷͬͱ໘ന͍
લాϒϩοΫ
ϓϩάϥϚ اը ϓϩδΣΫτϚωʔδϟ ։ൃνʔϜϦʔμʔ
None
None
͜͜ͰΞϯέʔτ
தֶੜ
ߴߍੜ
େֶੜ
ઌੜ
ֶߍΛ͢Ͱʹଔۀͨ͠ํ
͕ࣗࣗ༝ʹ͑Δ ύιίϯΛ͍࣋ͬͯΔ
ͦΕ8JOEPXT
ͦΕ.BD
ՈͷύιίϯԿ࣌·Ͱ ͑Δ͔ܾ·͍ͬͯΔ
ՈͷύιίϯͰɺ ͍͍ͯ͜͠ͱɺ ͍͚ͯ͠ͳ͍͜ͱ͕ ܾ·͍ͬͯΔ
ʹɺ࣌ؒҎ্ύιίϯΛ͏ਓ
ʹɺ࣌ؒҎ্ύιίϯΛ͏ਓ
ϓϩάϥϜΛॻ͍ͨ͜ͱ͕͋Δਓ
ϓϩάϥϜΛॻ͍ͨ͜ͱ͕ͳ͍ਓ
िؒʹɺ ࣌ؒҎ্ϓϩάϥϜΛॻ͍͍ͯΔਓ
िؒʹɺ ࣌ؒҎ্ϓϩάϥϜΛॻ͍͍ͯΔਓ
ͦͦϓϩάϥϜͬͯ Կ͔͍ͬͯΔਓ
ϓϩάϥϛϯάͨ͜͠ͱ͋Δਓ
ʮϓϩάϥϛϯάʯͷఆٛΛݴ͑Δਓ
ϓϩάϥϛϯάͬͯԿ͔ͩ Α͔͘Βͳ͍͚Ͳ ͬͨ͜ͱ͋Δਓ
·ͣͷճΓʹ͋ΔʮϓϩάϥϜʯΛ ࢥ͍ු͔ͯԼ͍͞
ۙʹ͋ΔϓϩάϥϜ
ۙʹ͋ΔϓϩάϥϜ
ۙʹ͋ΔϓϩάϥϜ
ۙʹ͋ΔϓϩάϥϜ
ۙʹ͋ΔϓϩάϥϜ
ۙʹ͋ΔϓϩάϥϜ
৽ӳதࣙయ ୈ̒൛ ʢݚڀࣾʣΑΓҾ༻ http://www.excite.co.jp/dictionary/english_japanese/?search=program&match=beginswith&dictionary=NEW_EJJE&block=41438&offset=1206
Hackers’ Cafe ϓϩάϥϜͱ͍͑ɾɾɾ ήʔϜϓϩάϥϜ ӡಈձͷϓϩάϥϜ ݁ࠗࣜͷࣜ࣍ୈ ςϨϏ൪ ӳޠͰ571SPHSBN ΧϦΩϡϥϜ ڭҭϓϩάϥϜͳͲ
ϓϩάϥϜۙʹᷓΕͯΔ
ܚጯٛक़େֶͷ૿Ҫढ़೭ઌੜʹΑΕɺ ͜ΜͳͷϓϩάϥϜʹͳΔͦ͏Ͱ͢ ֮·࣌͠ܭͷઃఆ ϏσΦσοΩͷը༧ ࣗಈυΞͷ։ൃ
Hackers’ Cafe ӳࣙయΛҾ͖·͠ΐ͏ ৽ӳதࣙయ ୈ̒൛ ʢݚڀࣾʣΑΓҾ༻ http://www.excite.co.jp/dictionary/english_japanese/?search=program&match=beginswith&dictionary=NEW_EJJE&block=41438&offset=1206
ʲిࢉʳ ϓϩάϥϜ ʬిࢉػʹࢦྩ͢Δ ࡞ۀखॱͷਫ਼ີͳهड़ʭ
ϓϩάϥϜ࡞ۀͷखॱͷৄ͍͠هड़
Hackers’ Cafe ϓϩάϥϜͷ͍Ζ͍Ζ ӡಈձͷϓϩάϥϜ ݁ࠗࣜͷࣜ࣍ୈ ΧϦΩϡϥϜ ։ձࣜ ۄೖΕ N ٍഅઓ
େۄૹΓ ΨΠμϯε ϓϩάϥϛϯά֓ ܭࢉػՊֶͷجૅ ΞϧΰϦζϜͱσʔλߏ ϓϩάϥϛϯά࣮श ։ ৽৽්ೖ ओෂѫࡰɾסഋ έʔΩೖ ͓৭͠ ΩϟϯυϧαʔϏε ༑ਓʹΑΔ༨ڵ ՖՇ͔Βͷखࢴ ดձ ·͞ʹखॱΛهड़ͯ͠Δ
૿Ҫढ़೭ઌੜͷྫࣔΛ࡞ۀखॱʹͯ͠ΈΔ ֮·࣌͠ܭͷઃఆ ɹˠɹ".ʹͳͬͨΒԻΛ໐Βͤ ϏσΦσοΩͷը༧ ɹˠɹ༵ʹͳͬͨΒ ɹɹɹνϟϯωϧʹ͋Θͤͯ ɹ࣌ؒը͠Ζ ࣗಈυΞͷ։ൃ ɹˠɹυΞͷલʹਓཱ͕ͬͨΒ ɹɹɹυΞΛ։͚
ɹɹɹਓཱ͕ͪڈͬͨΒ ɹɹɹυΞΛด͡Ζ
࣌ʹɺίϯϐϡʔλͱ
࣮ɺલɺίϯϐϡʔλɺ৬ۀͰͨ͠
/"$"ͷܭࢉख ίϯϐϡʔλ ͷํʑ ग़యϑϦʔඦՊࣄయɹ8JLJQFEJB
ୈೋ࣍ੈքେઓͷظ ిࢠίϯϐϡʔλ͕࢈·Ε·ͨ͠
δϣϯɾϑΥϯɾϊΠϚϯ ग़యϑϦʔඦՊࣄయɹ8JLJQFEJB ϋϯΨϦʔग़ͷΞϝϦΧͷֶऀ ֶɺཧֶɺؾֶɺܦࡁֶɺܭࢉػՊֶʹ େͳӨڹΛ༩͑ͨɻ ݪരͷ։ൃऀͷҰਓͰ͋Δɻ ͦͯ͠ిࢠίϯϐϡʔλൃ໌ऀͷҰਓ
ίϯϐϡʔλΛൃ໌ͨ͠ͱ͖ɺ ϊΠϚϯ͜͏ݴ͍·ͨ͠ ग़యϑϦʔඦՊࣄయɹ8JLJQFEJB Զͷ࣍ʹ಄ͷౕ͍͍͕Ͱ͖ͨ ࣮ࡍɺίϯϐϡʔλΑΓ ܭࢉ͕͔ͬͨΒ͍͠
&/*"$ถ܉ͷಓܭࢉ༻ίϯϐϡʔλ ग़యϑϦʔඦՊࣄయɹ8JLJQFEJB
ίϩοαεӳࠃւ܉ใ෦ͷ։ൃͨ͠҉߸ղಡػ ग़యϑϦʔඦՊࣄయɹ8JLJQFEJB
;VTF;υΠπਓՊֶऀπʔθ͕։ൃͨ͠ίϯϐϡʔλ ग़యϑϦʔඦՊࣄయɹ8JLJQFEJB
࣮࠷ॳͷίϯϐϡʔλΛ ୭͕ൃ໌ͨ͠ͷ͔ਖ਼֬ͳ ͱ͜ΖΘ͔͍ͬͯ·ͤΜ ग़యϑϦʔඦՊࣄయɹ8JLJQFEJB ΞϨɺΦϨ͕ߟ͑ͨΜͩ ͱɺϊΠϚϯ͕ݴ͍࢝ΊͨͷͰ ํͳ͘ɺͦͷޙͷίϯϐϡʔλ ͜͏ݺΕΔΑ͏ʹͳΓ·ͨ͠
ʮϊΠϚϯܕίϯϐϡʔλʯ ͦͯ͜͠ͷ࣌ͦ͜ɺ ίϯϐϡλʔϓϩάϥϜੜͷॠؒͳͷͰ͢
ϓϩάϥϛϯάݴޠͷ͍Ζ͍Ζ
࣮ɺίϯϐϡʔλ͕ཧղͰ͖Δݴޠ $16ʹΑͬͯҧ͍·͢ *OUFM "3.
ίϯϐϡʔλ͕ཧղͰ͖ΔݴޠΛ ʮػցޠ Ϛγϯޠ ʯͱݺͼ·͢
Ϛγϯޠͬͯ͜Μͳײ͡Ͱ͢
͜ΕͲ͏ͬͯॻ͘ͷ ;ͭ͏ͷਓؒʹແཧͰ͢ ͔ͩΒੲͷϓϩάϥϚʔ ੌ͍ਓ͔͍͠ͳ͔ͬͨͷͰ͢ ˣ
ͬͱ؆୯ʹϓϩάϥϜ͢ΔͨΊʹ ϚγϯޠҎ֎ͷϓϩάϥϛϯάݴޠ͕ ͨ͘͞Μ࢈·Ε·ͨ͠
FORTRAN ʹ*#.Ͱ։ൃ͞Εͨखଓ͖ܕݴޠ 'PSNVMB5SBOTMBUJPO ࣜ༁ ʹ ༝དྷ͢ΔɺՊֶٕज़ܭࢉ༻ݴޠ εʔύʔίϯϐϡʔλͳͲͰ ࠓݱࡏΘΕ͍ͯΔ
LISP ੜ·Εͷؔܕݴޠ -JTU1SPDFTTPS͕༝དྷͰɺू߹ॲཧ͕ಘҙ +BWB4DSJQUͷܥͷઌ
Cݴޠ ੜ·Εͷखଓ͖ܕݴޠ ߏԽϓϩάϥϛϯάΛಋೖ͠ɺ։ൃޮ͕Ξοϓ ݱࡏͰ෯͘ΘΕ͍ͯΔݴޠͷͻͱͭͰ͋Δ
Smalltalk ʹެ։͞ΕͨΦϒδΣΫτࢦݴޠ ͕ؔଞݴޠͷ-*41-0(0ʹӨڹΛड͚ͨ ΞϥϯɾέΠ͕ઃܭͨ͠04ͷࢥʹ·Ͱٴ͢Δ ݴޠͰɺͦͷޙͷݴޠઃܭʹઈେͳӨڹΛ༩͑Δ
C++ ʹ։ൃ͞ΕͨΦϒδΣΫτࢦݴޠ खଓ͖ܕݴޠͷ$ݴޠΛϕʔεͱͯ͠ΦϒδΣΫτ ࢦػೳΛՃͨ͠
Objective-C $ݴޠΛϕʔεͱͯ͠4NBMMUBML෩ͷΦϒδΣΫτࢦ ػೳΛՃͨ͠ͷɻ J04.BDͳͲͰ༻͞Ε͍ͯΔ
Java $ Λϕʔεͱͯ͠ચ࿅ͤͨ͞ͷɻߴͳϝϞϦ ཧػߏιϑτΣΞίϯϙʔωϯτͳͲΛ࣮ݱ
Ruby ʹ·ͭͱΏ͖ͻΖࢯ͕ൃදͨ͠ࠃ࢈ϓϩ άϥϛϯάݴޠɻʮଟ༷ੑળʯͷεϩʔΨϯͷ ͱ։ൃ͕ਐΊΒΕͨɻੈքͰ࠷ਐΜͩݴޠͷͻͱ ͭͰɺϑΝϯଟ͍ɻ
JavaScript ʹ։ൃ͞Εͨ8FCϒϥβ༻ϓϩάϥϛϯ άݴޠɻ-*41ͷྲྀΕΛΉؔܕݴޠͰ͋Γͳ͕ Βɺ+BWBʹࣅͤͨจ๏ͷ࠾༻ͰղΓཱ྆͢͞͞ ͤΔɻ)5.-Ͱ༻͞ΕΔࣄ্࣮ͷඪ४ݴޠ
enchant.js ʹ։ൃ͞Εͨࠃ࢈+BWB4DSJQU༻ΞϓϦέʔ γϣϯΤϯδϯɻಠࣗͷΫϥεΠϕϯτػߏΛΓ ࠐΈɺॳ৺ऀ͔Β্ڃऀ·Ͱ͍͘͢վྑͨ͠
લాϒϩοΫ ʹ։ൃ͞ΕͨϏδϡΞϧݴޠ FODIBOUKTΛϕʔεͱͨ͠ΫϩεϓϥοτϑΥʔϜ ͱɺ༮ࣇ͔Βେਓ·Ͱ͑ΔݴޠΛࢦͯ͠։ൃ͞ Ε͍ͯΔɻ
今日学ぶのは… 前田ブロック と enchant.js
実習その1 前田ブロック編
(PPHMF$ISPNFͰ։͍ͯΈΑ͏ IUUQNBFEBCMPDLKQ
(PPHMF$ISPNFͰ։͍ͯΈΑ͏ IUUQNBFEBCMPDLKQ
͜ͷϓϩάϥϛϯάڥͷओ
FODIBOUKTͷެࣜΩϟϥΫλʔ γʔϧͳͲͷ άοζਐग़Λܦͯ ͍ͭʹண͙ΔΈԽ
͍ͭʹөըσϏϡʔΛՌͨ͢ ʜ
ʮ͜ͷΫϚΛಈ͔͢खॱʯ ΛϓϩάϥϜ͠·͠ΐ͏
͜ͷதͰಈ͖·͢ ࣮ߦϘλϯ
ʮύϖοτʯͷശ
ύϖοτϒϩοΫ ΛऔΓग़͢
͜ͷͭͷϒϩοΫΛ औΓग़͍ͯͩ͘͠͞
·ͬͨ
͕ͬͨ
ԼஈͷɹɹɹΛԡ͢ͱʜ ӈ্ͷը໘͕มΘΓ·͢
ΫϦοΫ͢Δͱɺ ग़ݱํ๏͕มΘΔ ʮͨ͘͞ΜͰΔʯ ʮ্͔Βग़ͯ͘Δʯ ʹม͑ͯɹɹɹͯ͠Έ·͠ΐ͏
͜ͷϒϩοΫΛग़ͯ͜͠Α͏
՝ ͦͷ
͜ͷಈ͖Λ࡞ͬͯΈΑ͏
ώϯτ͏ϒϩοΫ͜ͷछྨ
ώϯτ͜ͷϒϩοΫΛෳ͏
ώϯτ͜ͷϒϩοΫΛෳ͏
λςͱϤίͷ δάβάΛՃ͑Δ
ը૾ΛΫϦοΫ͢Δͱ ը૾Λม͑ΒΕ·͢
ࠓ࡞Δͷ ʮγϡʔςΟϯάήʔϜʯ
γϡʔςΟϯάήʔϜʹԿ͕ඞཁ
ࣗػ
ఢ
ࣗͷ
ఢͷ
ύϖοτ͕ͭ͋Ε࡞ΕΔ
՝ ͦͷ
͜͏͍͏ϒϩοΫΛ࡞ͬͯΈ͍ͯͩ͘͞
͜͏͍͏ϒϩοΫΛ࡞ͬͯΈ͍ͯͩ͘͞ ͜ͷϒϩοΫͷ ׂʹ
৽͍͠ϒϩοΫΛհ ΠϕϯτϦεφ ϒϩοΫ ύϖοτग़ݱ ϒϩοΫ ͋Δ݅Ͱ Կ͔ͷखॱΛߦ͏ ύϖοτΛ ग़ݱͤ͞Δ
·ͣʮʙͷͱ͖ʯ ϒϩοΫΛՃ ύϖοτग़ݱ ϒϩοΫΛՃ ૣͬͯΈΑ͏
·ͣʮʙͷͱ͖ʯ ϒϩοΫΛՃ ύϖοτग़ݱ ϒϩοΫΛՃ ͳΜ͔͍͜ͱʹˠ
৽͍͠ϒϩοΫΛհ JGϒϩοΫ ݅ϒϩοΫ
JGϒϩοΫͱ݅ϒϩοΫΛ Έ߹Θͤͯ͏ ඵʹίϚͳͷͰɺඵʹ
தʹύϖοτग़ݱ ϒϩοΫΛೖΕΔ
͜ͷΧλϚϦΛதʹ ͍ΕͯΈΔ
͜ͷΧλϚϦΛதʹ ͍ΕͯΈΔ εϥΠϜͷग़ݱස͕ݮΓ·ͨ͠
ͳΜ͔ͩΒ લʹਐΜͰ΄͍͠
ʮࣗͷʯύϖοτʹ ʮಈ͖ʯϏϔΠϏΞΛՃ
ʮఢʯύϖοτʹ ʮ͋ͨΔʯϏϔΠϏΞΛՃ
͍ͩͿγϡʔςΟϯάήʔϜ
͋ͱɺఢΛଧͬͯɺ ఢͷʹͨΔͱήʔϜΦʔόʔ ࠓ·ͰशͬͨϒϩοΫ ͜ͷϒϩοΫͰ0,
ϓϩάϥϛϯά ʮ෦ΛΈ߹ΘͤΔʯ͚ͩͰͰ͖Δ ͲΜͳݴޠͰ جຊతʹಉ͡
実習その2 enchant.js 編
IUUQDPEFMFBQOFU
IUUQDPEFMFBQOFU ͔Β͡ΊΑ͏
注意点 赤い ×が出ていたら 「文法エラー」です。 赤い ×にカーソルを合わせると、 文法ミスの内容がわかります。 この場合は、「)」 閉じカッコが足りません。 (閉じカッコのあるべきところに、「game」
があります)
注意点 • プログラムはすべて半角で打ち込みます。 • “”() + - = などの記号や、スペースも すべて半角です。
• 全角を使うと、たとえばこんな文法エラーが 出ます
注意点 • 文法エラーがなくても、スペルミスや、必要な命令 が足りないなどでうまく動かない場合があります。 • 今回は、どうしようもなくなったら、焦らずに、 もう一度「Fork」してやり直しましょう。 • 「enchant.js」は発展編ですが、続きは家に帰って ぜひ頑張ってチャレンジしてみてください。
プログラミングをなぜ学ぶのか?
1つは「複雑な現象を理解する」のため
ࣗ ఢ ࣗͷ ఢͷ ੑ࣭Λड͚ܧ͙ લʹਐΉ ఢͱͿ͔ͭΔ ৭੨ ࣗͱͿ͔ͭΔ
৭ ੑ࣭Λ֦ு͢Δ
ڞ௨͢Δ ϏϔΠϏΞ͕ଟ͍
ʮࣅͨͷΛ͘͘Γɺੑ࣭Λఆٛ͢Δʯ ʮڞ௨͢Δੑ࣭ΛऔΓग़͢ʯ ʮΫϥεͷؒͷ૬ޓ࡞༻Λఆٛ͢Δʯ ʮϞσϦϯάೳྗʯ
すごく大きなプログラムをつくる時…
すごく大きなプログラムをつくる時…
461&3."3*0
ϚϦΦ ΫϦϘʔ ϒϩοΫ ʁϒϩοΫ Ωϊί
461&3."3*0 ϚϦΦ ΫϦϘʔ ϒϩοΫ ʁϒϩοΫ είΞ ίΠϯ ϫʔϧυ λΠϜ ԡͨ͠ޙͷ
ʁϒϩοΫ Ωϊί େϚϦΦ ϑϥϫʔ ϑΝΠΞ ϚϦΦ
ϚϦΦ ΫϦϘʔ ϒϩοΫ ʁϒϩοΫ είΞ ίΠϯ ϫʔϧυ λΠϜ ԡͨ͠ޙͷ ʁϒϩοΫ
Ωϊί େϚϦΦ ϑϥϫʔ ϑΝΠΞ ϚϦΦ
ϚϦΦ ΫϦϘʔ ϒϩοΫ ʁϒϩοΫ είΞ ίΠϯ ϫʔϧυ λΠϜ ԡͨ͠ޙͷ ʁϒϩοΫ
Ωϊί େϚϦΦ ϑϥϫʔ ϑΝΠΞ ϚϦΦ
࿈བྷσʔλϕʔε
ਓΫϥε ࿈བྷΫϥε ࢯ໊ɾి൪߸Λ͍ͬͯΔ ࿈བྷݩɾ࿈བྷઌͷਓΛ͍ͬͯΔ
ਓ ࿈བྷ ࿈བྷ ਓ ਓ ࿈བྷ ਓ
࿈བྷݩ ࿈བྷઌ Ώ͏͡ ·ΏΈ Ώ͏͡ ͱΑ ·ΏΈ Α͏͚͢ Α͏͚͢ ͨ͘
Α͏͚͢ Έ͞ͱ ͱΑ ͻΖ͠ ͱΑ ΏΈ͜ ࢯ໊ ి൪߸ ·ΏΈ YYYYYYYYY ͱΑ YYYYYYYYY Α͏͚͢ YYYYYYYYY ͨ͘ YYYYYYYYY Έ͞ͱ YYYYYYYYY ͻΖ͠ YYYYYYYYY ΏΈ͜ YYYYYYYYY
࿈བྷͷߏʹண ਓɺਓͷਓ͔ΒͷΈ࿈བྷΛड͚Δ
࿈བྷݩ ࿈བྷઌ Ώ͏͡ ·ΏΈ Ώ͏͡ ͱΑ ·ΏΈ Α͏͚͢ Α͏͚͢ ͨ͘
Α͏͚͢ Έ͞ͱ ͱΑ ͻΖ͠ ͱΑ ΏΈ͜ ࢯ໊ ి൪߸ ·ΏΈ YYYYYYYYY ͱΑ YYYYYYYYY Α͏͚͢ YYYYYYYYY ͨ͘ YYYYYYYYY Έ͞ͱ YYYYYYYYY ͻΖ͠ YYYYYYYYY ΏΈ͜ YYYYYYYYY
ࢯ໊ ి൪߸ ࿈བྷݩ ·ΏΈ YYYYYYYYY Ώ͏͡ ͱΑ YYYYYYYYY Ώ͏͡ Α͏͚͢
YYYYYYYYY ·ΏΈ ͨ͘ YYYYYYYYY Α͏͚͢ Έ͞ͱ YYYYYYYYY Α͏͚͢ ͻΖ͠ YYYYYYYYY ͱΑ ΏΈ͜ YYYYYYYYY ͱΑ
ਓΫϥε ࢯ໊ɾి൪߸ɾ࿈བྷΛड͚Δਓ Λ͍ͬͯΔ ࿈བྷΫϥε
ਓ ਓ ਓ ਓ ॲཧ͕؆୯ʹͳΔ σʔλ༰ྔ͕খ͘͞ͳΔ
ʮϞσϦϯάೳྗʯ ͜Ε
プログラミングの「モデリング」は、 科学の考え方と同じ。
1つは「コンピュータを使えるようになる」ため
数学
掛け算しよう ※ 解ける人は手を挙げて
2 ×6 = ?
12222 ×1666 = ?
2 ×6 = ?
12 ×6 = ?
122 ×6 = ?
122 ×16 = ?
筆算ならできる? 1 2 2 × 1 6 7 3 2
1 2 2 0 1 9 5 2
12222 ×1666 = ?
頑張れば、解ける 1 2 2 2 2 × 1 6 6
6
(たぶん) 頑張れば、解ける 1 2 2 2 2 2 2 ×
1 6 6 6 6 6
もし、筆算を知らなかったら… 「どう解いていいかわからない」 1 2 2 2 2 2 2 ×
1 6 6 6 6 6
どう解いていいのか 分からない問題 頑張れば、時間はかかるけど 解ける問題 問題の答え 12222 ×1666 たくさんの 九九と足し算の組み合わせに 分解
20,321,852 1 2 2 2 2 2 2 × 1 6 6 6 6 6
「大きな問題を、小さな問題に分けて考える」のは 科学の考え方と同じ。
どう解いていいのか 分からない問題 問題の答え
どう解いていいのか 分からない問題 問題の答え
どう解いていいのか 分からない問題 頑張れば、時間はかかるけど 解ける問題 問題の答え
どう解いていいのか 分からない問題 頑張れば、時間はかかるけど 解ける問題 問題の答え
どう解いていいのか 分からない問題 頑張れば、時間はかかるけど 解ける問題 問題の答え コンピュータの力 数学の力、 プログラミングの力
プログラミングが できるようになりたい! ならば… 今習っている「数学」を きちんと勉強しよう
58888 ×6411 = ? 将来、こんな難しい問題が出てきても…
58888 ×6411 = ? 1 2 2 × 1 6
7 3 2 1 2 2 0 1 9 5 2 122 ×16 = ? 小さな問題に分割すれば、大丈夫
なぜプログラミングを学ぶのか 1. 複雑な現象を理解できる 2. 大きな問題を、小さく分けて解ける 「科学の考え方」を 自然に身につけられる
• 自分で考えたものを、作って動かすのは楽しい! • 複雑なアプリケーションが、自分の思い通りに動 くともっと楽しい! なぜプログラミングを学ぶのか
プログラミングに、 興味を持ってもらえましたか?
ͬͱֶͼ͍ͨਓ͚ IUUQEPUJOTUBMMDPN
ͬͱֶͼ͍ͨਓ͚ νϡʔτϦΞϧ IUUQFODIBOUKTDPN 3FTPVSDFʹղઆ͋Γ ຊޠ
ͬͱֶͼ͍ͨਓ͚ IUUQMFBQOFU
ͬͱֶͼ͍ͨਓ͚ IUUQMFBQOFU
ͬͱֶͼ͍ͨਓ͚ IUUQXXXDPEFBDBEFNZDPN ӳޠ
今日学んだことは、 プログラミングにおける 「はじめの一歩」
プログラミングに関しては、 「はじめの一歩」を踏み出せない人のほうが 多いのです
実は、この講座と同じ内容を オトナの社会人向けにすでに教えています 「学生・社会人なんて関係ない!」 のがプログラミングの世界
プログラムを書いて、 面白いゲームを作ったら、 その後 どうすればいいの…?
まずは、今日作ったプログラムを 友達と共有してみよう 率直な意見を聞ける友達・先生は とても大切です!
「enchant.js」を使った ゲーム開発コンテスト 「9leap」
「9leap」に ぜひ投稿してみてください! 「優秀賞」「最優秀賞」に選ばれれば 最新ノートパソコンがもらえる & シリコンバレーに行けるチャンス!!
「9leap」本戦はちょっとハイレベルなので… 2013年・夏から高校生以下限定 「9leap youth」がスタートします。
2014年・夏には、 茨城で開催される全国総合文化祭で プログラミングが正式種目採用。 「9leap」本戦はちょっとハイレベルなので… 2013年・夏から高校生以下限定 「9leap youth」がスタートします。
2014年・夏には、 茨城で開催される全国総合文化祭で プログラミングが正式種目採用。
質疑応答