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
githubnishi
April 01, 2017
Education
0
14
プレゼンテーション資料
研修で作りました
githubnishi
April 01, 2017
Tweet
Share
More Decks by githubnishi
See All by githubnishi
test
githubnishi
0
15
Other Decks in Education
See All in Education
D&I推進レポート〜テクノロジー分野のジェンダーギャップとその取り組みについて〜
codeforeveryone
1
910
全員参加型で会社を強くしていく活動を考えてみる
ikefukurou777
0
210
SUMMER SCHOOL 2024
pnuslide
0
140
キャリアと組織の成長塾#1 アスリートからエンジニアの道へ
takashi_toyosaki
2
760
Microsoft Office 365
matleenalaakso
0
1.5k
Monaca Educationを活用した課題解決型の探究学習の実践
asial_edu
0
200
自由の森学園学校紹介資料
jiyunomori
0
1.6k
Copilotとして理解する生成AI利用の基本
gmoriki
0
140
Earthquake and Disaster Prevention Information for UTokyo International Students
utokyoissr2360
0
630
LTをすべき100の理由
eltociear
1
280
Virtual and Augmented Reality - Lecture 8 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
1.2k
Tips for the Presentation - Lecture 2 - Advanced Topics in Big Data (4023256FNR)
signer
PRO
0
130
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
221
21k
KATA
mclloyd
15
12k
How GitHub (no longer) Works
holman
304
140k
How STYLIGHT went responsive
nonsquared
92
4.8k
Fantastic passwords and where to find them - at NoRuKo
philnash
37
2.5k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
14
1.5k
Designing for Performance
lara
601
67k
Mobile First: as difficult as doing things right
swwweet
216
8.6k
Infographics Made Easy
chrislema
238
18k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.1k
What's in a price? How to price your products and services
michaelherold
237
11k
Teambox: Starting and Learning
jrom
128
8.4k
Transcript
プログラム解説表示ツール 2017 年 4 月 3 日 西 彬
2 背景 • 2020 年に小学校 でプログラミングが必修化するなど様々な場所で情報 化が進んでおりプログラミングの勉強をする人が増えることが分かる 近年の IT エンジニア人口のグラフ
2009 年度 2010 年度 2011 年度 2012 年度 2013 年度 2014 年度 76 78 80 82 84 86 ITエンジニアの人口 ( 万人 ) 増 加 傾 向 に あ る こ と が わ か る 出典: IPA 「 IT 人材白書 2015 」
3 背景 • しかし、初心者がプログラミングを勉強する時に読む書籍などには 「とりあえず書いてください」や「おまじない」など説明せずに 写経させる書籍が多々あり、そこが原因で分からなくなる人がいる • また、初心者はソースコードを見るときに、全く知らない関数などが来 ると流れが追えなくなったり、分からなくて躓いてしまうことがある //
これはおまじないです #include<stdio.h> ・ ・ ・
4 目的 • ソースコードにある程度の解説を表示することで学習の効率 化を図るなどの手助けをする 例えば #include<stdio.h> // おまじない #include<stdio.h>
が何をするのか調べる なぜ必要なのか調べる 短 縮
5 概要 • 解説を表示したいソースコードを入力すると解説を追加して 出力するソフトウェア • 出てきた解説をファイルとして出力することができる • C 言語に対応している
6 実演
7 システム概要 入力されたソースコードを単語ごとに分ける 処理としてはコンパイラの字句解析に似ている sum = rand() sum = rand
( ) 分けた単語の前後などで判定してキーワードを取り出す 処理について 単語(トークン)ごとに分ける
8 システム概要 キーワードをデータベースと照合し、処理の説明を拾ってくる sum = rand ( ) 入力されたソースコードに説明を追加して出力する sum
= rand(); // 乱数を返却して sum に代入 文字列 解説文 ・・・ ・・・ rand 乱数を返却 rand
9 システム概要 • データベースは SQLite を使用 • 使用理由:手軽に使える、動作が軽いなど • データベースには予約語や関数とそれらの日本語での説明文が
入っている データベースについて
10 (内定者研修)についての所感 • 設計書などの書類などをちゃんと作らずに作り始めたため、時間を 無駄に使ってしまったりしたがそれらの必要性がよくわかった。 • 作る側の視点だけで考えるのではなく、使う側の視点で考えたり、 すでにあるものを参考にするなど様々な考え方をする必要があるな ど勉強になった。
11 ご清聴ありがとうございました。