2020年秋学期 - スマートデバイスプログラミング / PROGRAMMING ON MOBILE DEVICES
|
C2073 スマートデバイスプログラミング PROGRAMMING ON MOBILE DEVICES |
特設科目 Special Seminars 2 単位 |
| 実施形態 | 完全オンライン |
| 開催日程 | 秋学期 月曜日5時限 |
| 担当教員 | 和田 理彦:杉山 雄一(ワダ マサヒコ:スギヤマ ユウイチ) |
| 関連科目 |
前提科目(推奨): B4001,B4002 |
| 開講場所 | SFC |
| 授業形態 | 講義、実習・演習 |
| 履修者制限 |
履修人数を制限する Only the selected students can take this course. |
| 履修条件 | |
| 使用言語 | 日本語 |
| 連絡先 | wadari@sfc.keio.ac.jp |
| 授業ホームページ | http://web.sfc.keio.ac.jp/~wadari/sdp/ |
| 同一科目 | |
| 学生が利用する予定機材/ソフト等 |
ノートPCとスマートデバイスが必要です。 Students are required to bring their laptops on every class. Students are also required to bring his/her own smart device from the middle of the semester. - Windows users: Android smart phone/tablet. - Mac users: either Android or ios smart phone/tablet. |
| 設置学部・研究科 | 総合政策・環境情報学部 |
| 大学院プロジェクト名 | |
| 大学院プロジェクトサブメンバー | |
| ゲストスピーカーの人数 | 0 |
| 履修選抜・課題タイプ=テキスト登録可 | false |
| 履修選抜・選抜課題タイプ=ファイル登録可 | false |
| GIGAサティフィケート対象 | |
| 最終更新日 | 2020/07/30 18:43:53 |
科目概要
スマートフォンやタブレット端末などのスマートデバイスは、ここ数年で急激な進化を遂げ、普及率も上昇の一途をたどってきた。スマートデバイスの活用は、研究の場やコンテンツ制作の場など様々な場面で新しい発見につながる可能性を秘めていると考えられる。
本講義ではスマートデバイス上で動くアプリケーションの開発技法を学ぶ。 具体的にはマルチプラットフォーム対応の統合開発環境であるUnityを用いて、iOSとAndroidOS向けのアプリケーションを開発する。授業序盤は開発環境の使い方を、中盤はスマートデバイスならではの機能(タッチ操作、加速度センサーやGPSの使用、ネットワークへのアクセスなど)の実装方法を学び、最終課題として一人一本、スマートデバイス上で動くオリジナルアプリケーションを開発する。
Smart devices, such as smart phones and tablets, have experienced rapid growth in the past few years, and has opened various possibilities of innovation in fields of research and development.
This course will focus on application development through Unity engine for both ios and Android systems. Students will first learn about the fundamentals of Unity engine, then learn how to utilize features available on smart devices such as touch sensor,accelerometer, GPS, network, etc. Each student is expected to create a smart device application by him/herself at the end of this course as a final project.
授業シラバス
主題と目標/授業の手法など
スマートフォン、タブレット等のスマートデバイス上で動作するアプリケーションを 自由に開発できるようになることを目標としています。
序盤:文字や画像の表示、タッチ操作など、基本的な入出力機能の実装方法を学びます。
中盤:GPSセンサーからの位置情報の取得、アプリからの通信、カメラとの連携など、スマートデバイスならではの機能を使う方法を学びます。
終盤:学んだ技術などを駆使して一人一本アプリを開発し、それを最終課題とします。
開発環境はUnity、使用言語はC#を予定しています。
Unityを用いると、MacOSの人はAndroid向けアプリとiOS向けアプリを同時開発でき、 WindowOSの人はAndroid向けアプリを開発できます。 (Unityは統合開発エンジンなので、スマートフォン向けアプリの他、 PC上で動くソフト、ブラウザ上で動くアプリなども作れるようになります。 3Dゲームに強いエンジンですが、2Dの物やゲーム以外のアプリも作れます。)
The objective of this course is to learn how to develop applications for smart devices.
The course will be divided up in three sections within the semester:
Beginning: Students will learn how to display texts, utilize touch sensors, and handle basic I/O systems on their devices.
Middle: Students will learn to utilize features available on smart devices, such as detecting location through GPS, data transmission from the application, and utilization of phone cameras.
End: Students are expected to create a working smart device application by themselves as a final project.
Development environment: Unity engine Programming language used: C#
Unity engine is a multi-platform game development engine that mainly supports 3D game development but is also capable of developing 2D games. Students with MacOS computers are capable of making both Android and ios applications, while students with Windows computers are capable of developing applications for Android devices. Students will also be able to develop applications that run on other systems such as PC and web browsers after taking this course.
教材・参考文献
各自のノートPC(MACまたはWINDOWS)とスマートデバイスを使用し、 WEB上のオンラインテキストを用います。
提出課題・試験・成績評価の方法など
・毎週出席を取ります
・毎週課題が出ます(SFS-SFSで提出)
・最終課題では、自分でデザインしたスマートデバイス向けのアプリケーションを開発します
成績は毎回の出席、課題と最終課題の出来栄えにより評価されます。 学期末試験は行いません。
Attendance will be taken at beginning of every class.
- Assignments are issued every week. Students are expected to submit them on SFS.
- Students are required to develop one smart device application at the end of the course as a final project.
Final grades are evaluated based on attendance, assignments, and the final project. No final examinations are given for this course.
履修上の注意
ノートPCを毎回忘れずに持ってきてください。 授業中盤以降、スマートデバイスも必要になります。
・Windowsの人は、Androidのスマートフォンorタブレット
・Macの人は、AndroidまたはiOSのスマートフォンorタブレット
Students are required to bring their laptops on every class. Students are also required to bring his/her own smart device from the middle of the semester.
- Windows users: Android smart phone/tablet.
- Mac users: either Android or ios smart phone/tablet.
授業計画
第1回 開発の準備をしよう(イントロダクション、開発環境の導入)
[Environment Setup (Introduction)]
授業概要を説明します。
開発環境上でのプロジェクトの作成、ビルドの方法などを学びます。
Class Introduction Creating and building Unity projects
和田、杉山:wada,sugiyama
第2回 Unityで開発してみよう(その1、基礎文法編)
[Unity Application Development (Part 1: Basic programming)]
Unity上で簡単なプログラムを組みつつ、C#での変数、if文、for分、配列などの使い方を学びます。
Development of simple programs in Unity and learn the usage of basic C# statements, such as variables, “if” and “for” statements, and arrays
和田、杉山:wada,sugiyama
第3回 Unityで開発してみよう(その2、入力編)
[Unity Application Development (Part 2: Inputs)]
キー操作、マウスクリック等、入力を受け付ける方法を学びます。
Keyboard and mouse input and processing
和田、杉山:wada,sugiyama
第4回 Unityで開発してみよう(その3、表示編)
[Unity Application Development (Part 3: Display)]
画面内に画像を表示する方法を学びます。
Image rendering
和田、杉山:wada,sugiyama
第5回 スマートデバイスで実行してみよう
[Utilization of Smart Devices]
Unityで作ったものを、AndroidやiOS等のスマートデバイスで動かす方法を学びます。
Utilization of Android/ios devices for applications built in Unity
和田、杉山:wada,sugiyama
第6回 加速度センサーを使ってみよう
[Accelerometer]
加速度センサー使う方法を学びます。
Utilization of accelerometers
和田、杉山:wada,sugiyama
第7回 ネットワーク機能を使ってみよう
[Networking]
アプリからネットワーク機能を使う方法を学びます。
Simple networking between the smart device application and the web.
和田、杉山:wada,sugiyama
第8回 GPS機能を使ってみよう
[GPS]
GPSデータを取得する方法を学びます。
Acquisition of GPS data
和田、杉山:wada,sugiyama
第9回 オリジナルアプリケーションを作ろう(その1)
[Creating an Original Application (Part 1)]
最終課題として何を作るか決めて、作り始めます。
Students are expected to decide and start their final project
和田、杉山:wada,sugiyama
第10回 オリジナルアプリケーションを作ろう(その2)
[Creating an Original Application (Part 2)]
最終課題の作成を進めます。
Students are expected to be able to show progress on their final project.
和田、杉山:wada,sugiyama
第11回 オリジナルアプリケーションを作ろう(その3)
[Creating an Original Application (Part 3)]
前回に引き続き最終課題の作成を進め、完成を目指します。
(この日に最終課題を提出してもらいます)
Students are expected to turn in their final project at the end of this class.
和田、杉山:wada,sugiyama
第12回 最終回
[Final Class ]
最終課題の中から優秀な作品を紹介、表彰します。
Prizes will be awarded to students whose final project were considered outstanding.
和田、杉山:wada,sugiyama
第13回 オリジナルアプリケーションを作ろう(その1+)
[Creating an Original Application (Part 1+)]
第9回の授業を延長して、 最終課題完成の為に質問対応などを行う予定です。
Lecture staff members are available during and after class for additional help regarding the final project during lecture 9.
和田、杉山:wada,sugiyama
第14回 オリジナルアプリケーションを作ろう(その2+)
[Creating an Original Application (Part 2+)]
第10回の授業を延長して、 最終課題完成の為に質問対応などを行う予定です。
Lecture staff members are available during and after class for additional help regarding the final project during lecture 10.
和田、杉山:wada,sugiyama
第15回 オリジナルアプリケーションを作ろう(その3+)
[Creating an Original Application (Part 3+)]
第11回の授業を延長して、 最終課題完成の為に質問対応などを行う予定です。
Lecture staff members are available during and after class for additional help regarding the final project during lecture 11.
和田、杉山:wada,sugiyama
15回目に相当するその他の授業計画
第12回、第13回の授業を延長して、 最終課題完成の為に質問対応などを行う予定です。
Lecture staff members are available during and after class for additional help regarding the final project during lecture 12 and 13.