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
17
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
プレゼンテーション資料
研修で作りました
githubnishi
April 01, 2017
More Decks by githubnishi
See All by githubnishi
test
githubnishi
0
17
Other Decks in Education
See All in Education
[2026前期火5] 論理学(京都大学文学部 前期 第4回)「 ならば(→)の導入と証明ネット」
yatabe
0
510
2026年度春学期 統計学 第4回 データを「分布」で見る (2026. 4. 30)
akiraasano
PRO
0
200
吉祥寺.pmは1つじゃない — 複数イベント並走運営の12年 —
magnolia
0
1.3k
BITCOIN : Les fondamentaux !
rlifchitz
0
200
0506
cbtlibrary
0
220
Curso de Consagração ao Sagrado Coração de Jesus - O Sagrado Coração na História (Aula 01)
cm_manaus
0
250
[2026前期火5] 論理学(京都大学文学部 前期 第2回)「論理的な正しさはどこにあるのか」
yatabe
0
1k
「機械学習と因果推論」入門 ③ 漸近効率な推定量と二重機械学習
masakat0
0
770
Visionary Initiative: Future Intelligence 「未来の知性と社会の礎を築く」|Science Tokyo(東京科学大学)
sciencetokyo
PRO
0
900
Center for Entrepreneurship Education | Science Tokyo (Institute of Science Tokyo)
sciencetokyo
PRO
0
130
AI-Based Speaking Assessment of a Short-Term Study Abroad Program
uranoken
0
370
Examen de Selectividad. Geografía junio 2026 (Convocatoria Ordinaria). UCLM
juanmartin2026
1
2.7k
Featured
See All Featured
Being A Developer After 40
akosma
91
590k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
360
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
Tell your own story through comics
letsgokoyo
1
1k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
430
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
190
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
72
40k
Paper Plane (Part 1)
katiecoart
PRO
1
9.7k
Scaling GitHub
holman
464
140k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
620
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 ご清聴ありがとうございました。