SlideShare ist ein Scribd-Unternehmen logo
1 von 31
Downloaden Sie, um offline zu lesen
Androidで学ぶ
東海大学での実践を元に
東海大学理学部 大西建輔
今日のお話
Androidを学ぶ
• Android携帯の使い方を学ぶ
• Android携帯向けのアプリの作り方を学ぶ
• AndroidOSの仕組みを学ぶ
Androidで学ぶ
• Android携帯は世界で使用されている
⇒ Androidを使い, 世界中, 誰でも学習できるのでは?
⇒ (今回)Android上で動作する学習補助アプリを作成
• 実際に授業内で活用し, その評価をおこなった.
• 物理学実験 (2017年度秋学期, 工学部1年生)
• データ構造とアルゴリズム(2017年度秋学期, 情報系学科)
Android x 教育
自己紹介
• 大西 建輔
• 東海大学理学部情報数理学科
• プログラミングや数学などの授業
• 嫁さん, 子供3人
• Google Developer Day 2009 で, GDDPhoneを
手に入れてから, アプリ開発
• 日本Androidの会コミュニティ運営委員
• Android Bazar and Conference 2017 Spring
実行委員長
物理学実験サポートアプリ
[開発目的]
学生が物理学実験に, 積極的に取り組める手助けに
[概要]
• ヴァーチャルリアリティ(VR)で物理学実験室を
見ることが可能
• 実験毎に別々の画面があり, 実験やレポートに
必要な情報を見ることが可能
• 情報はすべて動画に
物理学実験サポートアプリ(画面)
[実際の画面]
物理学実験サポートアプリ(画面)
[実際の画面]
物理学実験サポートアプリ
(システム)
アプリ(ベースはInstaVR) ウェブ(自前サーバ)
取得データ
アクセスログなど
解析はGoogle Analytics
取得データ
ヒートマップ
取得データ
アンケートデータ
(180人程度)
修士論文のため、
M2が解析中
関連研究
データ構造とアルゴリズム
• コンピュータ系の基礎的な科目, 多くはプログ
ラミングの授業に続き習う
• 情報処理技術者試験などでも頻出
• しかし, 奥が深く初学者には, ハードルが高いこ
とも.
• 多くの授業では, 理屈/理論を疑似コードで
教える。(正しく)動くソースコードは??
⇒ 学生側も理解しにくい(のではないか)
例えば, 過去の授業では…
スタック(stack)
• リストの一種.
• リストの先頭で要素の値の検索(Access head), 挿入
(Push), 削除(Pop)が可能
• 最後に入れた要素が最初に取り出される.
⇒ 後入れ先出し(Last In First Out, LIFO)
[2016年度]
スタック(配列による実現) 初期化,Empty
var A: array[0..maxsize] of itemtype;
top: integer;
procedure Makenull;
begin
top := maxsize + 1;
end;
function Empty(S: stack): boolean;
begin
if top > maxsize then Empty:= true else Empty:= false
end;
1
maxsize
topx1
xn
A
2
[2016年度]
スタック(stack)
• 保存場所の端で次のことが可能
• 要素を見る(peek),
• 挿入(push)
• 削除(get)
• スタックの作成(Stack())
• 空であるかどうか(empty)
• すべて埋まっているか(full)
• 最後に入れた要素が最初に取り出される.
⇒ 後入れ先出し(Last In First Out, LIFO)
[2017年度]
スタックの動作
[2017年度]
今回作成したアプリ
• 現在, 8種類のデータ構造
について作成済み
• 並べ替え(ソート)は作る
予定. 他に作って欲しい
ものを教えて欲しい.
[作成方針]
• (正しい)動作を優先
• 読みやすいコード(クラス)
• GUIに依存しないコード
• GUIよりも内容理解を
実際のアプリの動作(スタック)
• スタックの場合
• 配列を利用するので, 比較的理解しやすい
• そのため, 画面はカラフルで見やすいものに
• スタックを表す配列中にあるデータ
⇒ (既に含まれないものも)すべて表示
public void push(String data){
if (!full()) {
store[top] = data;
top++;
}
}
public String get(){
if (!empty()) {
top--; return store[top];
} else {
return null;
}}
スタック(配列による実現) push, get
0
maxsize-1
topx1
xn
store
1
O(1)時間の操作
[2017年度]
実際のアプリの動作
(リスト(参照型))
• リスト(参照型)の場合
• 参照型(ポインタ)という難しめの概念を使うため,
急激に理解が難しくなる
• [通常の授業] 箱と矢印を使って, 終わりにする.
⇒ 結局, 何が参照型で, 何が入っているのかを
理解できない
• 本アプリでは参照型の中身を見せ, 説明.
• 授業では, 何度も一つの概念をアプリ, アルゴリズム,
実装と繰り返す
リスト(参照型, 初期化)
public class Node {
private String info;
private Node next;
}
[アルゴリズム]
リストの初期化
head, z: Node型変数
1. new(head);
2. new(z);
3. head.next ← z;
4. z.next ← z;
O(1)時間の操作
[2017年度]
リスト(参照型による表現)
[2017年度]
実際のアプリの動作(ヒープ)
• 二分木を配列で表す方法
• 考え方は難しくないが, 何が親か, 何が子かを
理解する必要あり.
ヒープ(heap)
とは, 二分木で, すべての節で条件を満たす
(ヒープ条件)
節の値は, 子の値よりも大きいか等しい.
同じ要素をもつヒープ
[2017年度]
ヒープ(アプリの動作)
[2017年度]
実際のアプリの動作
(二分探索木)
• 参照型を使った根のある二分木(二股の木)
• 参照型を使っているため, 理解が難しい
二分探索木(1)
二分探索木とは, 次の条件を
満たす二分木である.
(条件) どの節点 pでも
• pのキーよりも小さなキーを
持つ節は, 全てpの左部分木に
含まれる
• pのキーよりも大きな(等し
い)キーを持つ節は,全てpの
右部分木に含まれる 9
353
25
8
19 25
29
[2017年度]
二分探索木(2)
[二分探索木での探索]
与えられたキー vを捜す
1. 根のキーと vを比較する
2. vのほうが小さいならば,
左部分木を探索
3. vのほうが大きければ,
右部分木を探索
4. vが見つかるか, 探す部分
木が無くなったら終了
9
353
25
8
19 25
29
[2017年度]
二分探索木(search)
public class BinarySearchTree extends BinaryTree {
public Boolean search ( int key ){
Bnode node = BSTsearch (key , root );
if ( node == z){
return false ;
} else {
return true ;
}
}
[2017年度]
二分木の走査(アプリ)
前順序
(preorder)
中順序
(inorder)
後順序
(postorder)
[2017年度]
アンケート
• 全般と個々のアルゴ
リズムに分けて質問
• 全体的な評価
• 4段階の評価(必須)
• 自由記述部分
• 個別の評価(*8)
• 4段階の評価(必須)
• 自由記述部分
アンケート結果
全く役に立
たなかった
とても役
に立った
アプリ全体 5.6 11.1 55.6 27.8
自分で使いたいか 16.7 22.2 44.4 16.7
スタック 0.0 5.6 72.2 22.2
キュー 0.0 5.6 66.7 27.8
リスト(配列) 0.0 16.7 50.0 33.3
リスト(参照型) 0.0 5.6 66.7 27.8
整列済みリスト 0.0 16.7 55.6 27.8
二分探索木 0.0 11.1 50.0 38.9
ヒープ 0.0 11.1 55.6 33.3
ハッシュ 0.0 22.2 44.4 33.3
(18人の解答者, 単位 %)
アンケート結果(自由記述)
アプリのよかった点
• 簡易的に描かれているので分かりやすい
• 色分けされていて見やすかった
• データ毎に色分けされている点
• 文字だけでは分からなかったのが、アプリを使い分かった
部分もあったのでよかったです。
• わかりやすい
アプリの悪かった点
• 動くのが遅い時がある
• 構造が少しわかりにくい
• 接続があまり良くない
• 視覚的な理解がしにくい
• もっと大きいやつが見やすーい(。-ω-)
• 学習支援システムにアップロードして使えると良いと思う
まとめと今後
• 学生が前提知識をあまり持たなくても, 理解がで
きるようにアプリを作成, 実際に講義で利用
• [物理学実験] どこでも簡単に参照ができるように
⇒ スマートフォンの利用(アプリ, ウェブ)
評価は現在進行中
• [データ構造] 学生の理解促進を考え作成
⇒ 講義との併用. アプリとしての配布は, 考え中
• [データ構造] 評価はおおむねよかった.
自分で使用したいと思わない学生もいる.
⇒ 興味を引き出すことが優先か?

Weitere ähnliche Inhalte

Mehr von Kensuke Onishi

Mehr von Kensuke Onishi (7)

20161119ABC_LT
20161119ABC_LT20161119ABC_LT
20161119ABC_LT
 
ABC 2016Spring 講演資料
ABC 2016Spring 講演資料ABC 2016Spring 講演資料
ABC 2016Spring 講演資料
 
展開図
展開図展開図
展開図
 
正多面体と展開図
正多面体と展開図正多面体と展開図
正多面体と展開図
 
2つ以上の箱の作れる展開図
2つ以上の箱の作れる展開図2つ以上の箱の作れる展開図
2つ以上の箱の作れる展開図
 
ABC2015 Summer LT
ABC2015 Summer LTABC2015 Summer LT
ABC2015 Summer LT
 
Comp geom20131107open
Comp geom20131107openComp geom20131107open
Comp geom20131107open
 

Kürzlich hochgeladen

My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」
My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」
My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」inspirehighstaff03
 
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドリアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドKen Fukui
 
My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」
My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」
My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」inspirehighstaff03
 
What I did before opening my business..pdf
What I did before opening my business..pdfWhat I did before opening my business..pdf
What I did before opening my business..pdfoganekyokoi
 
My Inspire High Award 2024  「正義って存在するの?」
My Inspire High Award 2024  「正義って存在するの?」My Inspire High Award 2024  「正義って存在するの?」
My Inspire High Award 2024  「正義って存在するの?」inspirehighstaff03
 
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドリアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドKen Fukui
 
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」inspirehighstaff03
 
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライドリアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライドKen Fukui
 
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドリアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドKen Fukui
 
My Inspire High Award 2024 「本当の『悪者』って何?」
My Inspire High Award 2024 「本当の『悪者』って何?」My Inspire High Award 2024 「本当の『悪者』って何?」
My Inspire High Award 2024 「本当の『悪者』って何?」inspirehighstaff03
 
My Inspire High Award 2024「なぜ議会への関心が低いのか?」
My Inspire High Award 2024「なぜ議会への関心が低いのか?」My Inspire High Award 2024「なぜ議会への関心が低いのか?」
My Inspire High Award 2024「なぜ議会への関心が低いのか?」inspirehighstaff03
 
My Inspire High Award 2024「他者と自分、対立を防ぐには?」
My Inspire High Award 2024「他者と自分、対立を防ぐには?」My Inspire High Award 2024「他者と自分、対立を防ぐには?」
My Inspire High Award 2024「他者と自分、対立を防ぐには?」inspirehighstaff03
 
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドリアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドKen Fukui
 
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfTEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfyukisuga3
 
My Inspire High Award 2024 「AIと仲良くなるには?」
My Inspire High Award 2024 「AIと仲良くなるには?」My Inspire High Award 2024 「AIと仲良くなるには?」
My Inspire High Award 2024 「AIと仲良くなるには?」inspirehighstaff03
 
My Inspire High Award 2024      「家族とは何か」
My Inspire High Award 2024      「家族とは何か」My Inspire High Award 2024      「家族とは何か」
My Inspire High Award 2024      「家族とは何か」inspirehighstaff03
 
Establishment and operation of medical corporations.pdf
Establishment and operation of medical corporations.pdfEstablishment and operation of medical corporations.pdf
Establishment and operation of medical corporations.pdfoganekyokoi
 
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slidessusere0a682
 
My Inspire High Award 2024「老いることは不幸なこと?」
My Inspire High Award 2024「老いることは不幸なこと?」My Inspire High Award 2024「老いることは不幸なこと?」
My Inspire High Award 2024「老いることは不幸なこと?」inspirehighstaff03
 
Divorce agreements in administrative work.pdf
Divorce agreements in administrative work.pdfDivorce agreements in administrative work.pdf
Divorce agreements in administrative work.pdfoganekyokoi
 

Kürzlich hochgeladen (20)

My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」
My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」
My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」
 
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドリアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
 
My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」
My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」
My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」
 
What I did before opening my business..pdf
What I did before opening my business..pdfWhat I did before opening my business..pdf
What I did before opening my business..pdf
 
My Inspire High Award 2024  「正義って存在するの?」
My Inspire High Award 2024  「正義って存在するの?」My Inspire High Award 2024  「正義って存在するの?」
My Inspire High Award 2024  「正義って存在するの?」
 
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドリアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
 
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
 
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライドリアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
 
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドリアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
 
My Inspire High Award 2024 「本当の『悪者』って何?」
My Inspire High Award 2024 「本当の『悪者』って何?」My Inspire High Award 2024 「本当の『悪者』って何?」
My Inspire High Award 2024 「本当の『悪者』って何?」
 
My Inspire High Award 2024「なぜ議会への関心が低いのか?」
My Inspire High Award 2024「なぜ議会への関心が低いのか?」My Inspire High Award 2024「なぜ議会への関心が低いのか?」
My Inspire High Award 2024「なぜ議会への関心が低いのか?」
 
My Inspire High Award 2024「他者と自分、対立を防ぐには?」
My Inspire High Award 2024「他者と自分、対立を防ぐには?」My Inspire High Award 2024「他者と自分、対立を防ぐには?」
My Inspire High Award 2024「他者と自分、対立を防ぐには?」
 
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドリアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
 
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfTEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdf
 
My Inspire High Award 2024 「AIと仲良くなるには?」
My Inspire High Award 2024 「AIと仲良くなるには?」My Inspire High Award 2024 「AIと仲良くなるには?」
My Inspire High Award 2024 「AIと仲良くなるには?」
 
My Inspire High Award 2024      「家族とは何か」
My Inspire High Award 2024      「家族とは何か」My Inspire High Award 2024      「家族とは何か」
My Inspire High Award 2024      「家族とは何か」
 
Establishment and operation of medical corporations.pdf
Establishment and operation of medical corporations.pdfEstablishment and operation of medical corporations.pdf
Establishment and operation of medical corporations.pdf
 
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
 
My Inspire High Award 2024「老いることは不幸なこと?」
My Inspire High Award 2024「老いることは不幸なこと?」My Inspire High Award 2024「老いることは不幸なこと?」
My Inspire High Award 2024「老いることは不幸なこと?」
 
Divorce agreements in administrative work.pdf
Divorce agreements in administrative work.pdfDivorce agreements in administrative work.pdf
Divorce agreements in administrative work.pdf
 

Androidで学ぶ