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
test
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
githubnishi
April 01, 2017
0
15
test
githubnishi
April 01, 2017
Tweet
Share
More Decks by githubnishi
See All by githubnishi
プレゼンテーション資料
githubnishi
0
14
Featured
See All Featured
The Spectacular Lies of Maps
axbom
PRO
1
520
The Curse of the Amulet
leimatthew05
1
8.2k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
80
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
63
エンジニアに許された特別な時間の終わり
watany
106
230k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
How to Think Like a Performance Engineer
csswizardry
28
2.4k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
120
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.9k
From π to Pie charts
rasagy
0
120
Ethics towards AI in product and experience design
skipperchong
2
190
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 ご清聴ありがとうございました。