理工学部Faculty of Science and Engineering
COT200XF(計算基盤 / Computing technologies 200)応用プログラミングAdvanced Programming
東原 正智Masanori HIGASHIHARA
授業コードなどClass code etc
学部・研究科Faculty/Graduate school | 理工学部Faculty of Science and Engineering |
添付ファイル名Attached documents | |
年度Year | 2021 |
授業コードClass code | H6700 |
旧授業コードPrevious Class code | |
旧科目名Previous Class title | |
開講時期Term | 秋学期授業/Fall |
曜日・時限Day/Period | 金2/Fri.2 |
科目種別Class Type | |
キャンパスCampus | 小金井 |
教室名称Classroom name | |
配当年次Grade | |
単位数Credit(s) | |
備考(履修条件等)Notes | |
他学部公開科目Open Program | |
他学部公開(履修条件等)Open Program (Notes) | |
グローバル・オープン科目Global Open Program | |
成績優秀者の他学部科目履修制度対象Interdepartmental class taking system for Academic Achievers | |
成績優秀者の他学部科目履修(履修条件等)Interdepartmental class taking system for Academic Achievers (Notes) | |
実務経験のある教員による授業科目Class taught by instructors with practical experience | |
SDGsCPSDGs CP | |
アーバンデザインCPUrban Design CP | |
ダイバーシティCPDiversity CP | |
未来教室CPLearning for the Future CP | |
カーボンニュートラルCPCarbon Neutral CP | |
千代田コンソ単位互換提供(他大学向け)Chiyoda Campus Consortium | |
カテゴリー<理工学部>Category |
経営システム工学科 学科専門科目 |
すべて開くShow all
すべて閉じるHide All
Outline (in English)
The purpose of this lecture is to acquire basic knowledge and skills for developing Android applications through lectures and practical training. In this class, we assume basic knowledge of C language.
授業で使用する言語Default language used in class
日本語 / Japanese
授業の概要と目的(何を学ぶか)Outline and objectives
Androidアプリを作成するための必要な知識を講義と実習で身につける。授業では、C言語の基本的な知識を前提とする。
到達目標Goal
Javaによってオブジェクト指向プログラミングを学び、簡単なAndroidアプリを作成し、Androidアプリ開発の概要がわかるようにする。開発環境はAndroid Studioを用いる(言語はJava 8)。
この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか(該当授業科目と学位授与方針に明示された学習成果との関連)Which item of the diploma policy will be obtained by taking this class?
ディプロマポリシーのうち、「DP1」と「DP2」と「DP4」に関連
授業で使用する言語Default language used in class
日本語 / Japanese
授業の進め方と方法Method(s)(学期の途中で変更になる場合には、別途提示します。 /If the Method(s) is changed, we will announce the details of any changes. )
講義と実習を組み合わせて行う。講義はスライドとサンプルプログラムを用いて説明する。実習では、各自プログラムを作成して動作確認をする。
課題に対するフィードバックは、スライドや動画にて行う。
アクティブラーニング(グループディスカッション、ディベート等)の実施Active learning in class (Group discussion, Debate.etc.)
なし / No
フィールドワーク(学外での実習等)の実施Fieldwork in class
なし / No
授業計画Schedule
※各回の授業形態は予定です。教員の指示に従ってください。
第1回:導入、Android概要、環境設定(Android Studio)
・授業の概要
・Androidアプリ開発についてと開発環境の環境設定
・簡単なJavaのサンプルプログラムを作成
第2回:Java(1)言語仕様
・オブジェクト指向
・データ型、文字コード、キャスト
・配列
・条件分岐、反復文
・論理演算
第3回:Java(2)オブジェクト指向ほか言語仕様
・クラス
・フィールド
・メソッド
・static、修飾子
第4回:Java(3)クラス、オブジェクト、インターフェース
・クラスと継承
・コンストラクタ
・抽象クラス
・インターフェース
第5回:Java(4)オブジェクト指向ほか言語仕様
・標準APIとAPIリファレンス
・文字列
・例外
・コンソール入出力、ストリーム、ファイル入出力
第6回:Java(5)コレクションフレームワーク
・コレクション
・スレッド
第7回:Android(1)Androidアプリプログラミングの概要
・Android Studioの基本画面
・アプリ作成の手順
・フォルダの構成
・クラスライブラリ
・サンプルアプリ
第8回:Android(2)GUIの基本
・アイコン
・基本GUI
・レイアウト
第9回:Android(3)Widgetなど
・Widget
・レイアウト
・ダイアログ
第10回:Android(4)View
・Viewとグラフィックス画面
・Canvas/Paintクラスによる描画
・SurfaceView
・9-patch
第11回:Android(5)MVC、ListView、インテント
・MVC
・ListView
・Activity間のデータの送受信とインテント
第12回:Android(6)DB、課題アプリ紹介
・DB(Sqlite)を使用したプログラミング
・SQL
・ListView+SQLite
・地図アプリ
・グラフアプリ
第13回:Android(7)デザインとFragment
・Material Design
・Fragment
第14回:Android(8)公開、広告、まとめ
・GooglePlayへの登録手順
・広告について
・Androidアプリ開発まとめ
授業時間外の学習(準備学習・復習・宿題等)Work to be done outside of class (preparation, etc.)
【本授業の準備・復習等の授業時間外学習は、4時間を標準とする】<履修開始前>
本授業の前提であるC言語に関して必要に応じて復習しておくこと。
<履修開始後>
授業で取り扱った内容を確実に身に付けるためにしっかりと復習すること。復習は資料を読むだけでなく、実際にプログラムを作成すると効果的である。
テキスト(教科書)Textbooks
特に指定なし。資料を用意する。
Androidの機能は多機能であり、講義では全てを紹介しきれないため、上記の講義資料以外にサポートページで紹介する予定である。(例 WebAPI、通信、センサーなど)
また、androidの開発者ページにはさまざまな情報が公開されている。
https://developer.android.com/index.html?hl=ja
参考書References
・TECHNICAL MASTER はじめてのAndroidアプリ開発 第3版 AndroidStudio3対応,秀和システム,山田 祥寛
Androidはアップデートが頻繁なため、入門書は出版日時が新しい書籍を薦める。
・黒帯エンジニアが教えるプロの技術 Android開発の教科書 (ヤフー黒帯シリーズ) SBクリエイティブ 筒井 俊祐著, 里山 南人著, 松田 承一著, 笹城戸 裕記著, 毛受 崇洋著.
・Amazon Web Services クラウドネイティブ・アプリケーション開発技法 一番大切な知識と技術が身につく (Informatics&IDEA) SBクリエイティブ NRIネットコム株式会社著, 佐々木 拓郎著, 佐藤 瞬著, 石川 修著, 高柳 怜士著, 佐藤 雄也著, 岸本 勇貴著.
・Androidを支える技術〈I〉──60fpsを達成するモダンなGUIシステム (WEB+DB PRESS plus) ,技術評論社,有野 和真.
・Androidを支える技術〈II〉──真のマルチタスクに挑んだモバイルOSの心臓部 (WEB+DB PRESS plus),技術評論社,有野 和真.
・Android アプリ設計パターン入門,PEAKS,日高正博,小西裕介,藤原聖,吉岡毅,今井 智章
必要に応じて授業内で紹介する。
成績評価の方法と基準Grading criteria
課題86%、平常点14%
課題は2回。
内容はJava言語でのレポート課題1回(40点)、アプリ作成1回(46点)。
学生の意見等からの気づきChanges following student comments
・わかりにくい内容や質問について、以前はメールやスライドで答えていたが、動画も準備するようにした。
学生が準備すべき機器他Equipment student needs to prepare
・基本的には学生に配布されているノートPCで行う。
・開発環境がメモリが8GB以上必要とするため、学生配布のノートPCが年度によって条件を満たす場合と満たさない場合があり、満たさない場合はノートPCを貸し出す。
・また、情報教室には開発環境のAndroid Studioがインストールされているのでこちらも利用できる。
その他の重要事項Others
受講希望者のノートPCの状況(メモリが8GB以上あるかどうか)により、
受講者数を限定する場合がある。
学習の理解を深めるためサポートページを作成している。