1. インターネットにおけるアプリケーションについて理解し、それらの構成が説明できる。
2. スマートフォンを代表とする携帯情報端末を対象としたアプリケーションを設計できる。
3. WebおよびUIフレームワークを用いた携帯情報端末向けアプリケーションを実装できる。
概要:
近年、普及・進歩の目覚ましい携帯情報端末(スマートフォンおよびタブレット)上で動作するソフトウェアの作成について学習する。
具体的には、携帯情報端末向けのWebアプリケーション開発を通じて、開発環境の構築方法およびシステムの開発方法、UIデザインを意識したソフトウェア設計方法を学ぶ。
開発プラットフォームとしてAngular、UIフレームワークとしてIonicを使用し、Android端末向けWebアプリケーションを開発する。
授業の進め方・方法:
授業は講義と演習によって行う。
講義では配布資料を用いて開発環境の構築方法・システム開発方法・UIデザインについて解説する。
演習では、講義で学習した内容を各自の環境(Windows10 PCを想定)において、実際にプログラミングを行う演習を実施する。
最終課題として、オリジナルの携帯情報端末向けWebアプリケーションの作成および提出を課す。
注意点:
【成績評価の基準・方法】
中間試験は実施しない。
期末試験の評価を50%、平素の学習状況等(課題・小テスト)を20%、最終課題の評価を30%の割合で総合的に評価する。平素の学習状況等は中間と期末の各期間の評価の平均とする。学年の評価は後学期末の評価とする。上記の到達目標に対する達成度を試験等において評価する。
【事前・事後学習】
事前学習としては前回学んだ内容とそれに関するプログラミングやソフトウェアデザインについて理解して授業に臨むこと。また,事後学習として授業内で指示した課題を提出すること。
【履修上の注意】
この科目を履修するにあたり,2年生のプログラミング基礎、3年生のプログラミング、4年生のソフトウェア工学の内容を十分に理解しておくこと。
|
|
週 |
授業内容 |
週ごとの到達目標 |
後期 |
3rdQ |
1週 |
携帯情報端末・Web・Webアプリケーションについて |
携帯情報端末向けWebアプリケーションシステムの概要について理解できる
|
2週 |
UIデザインとUX |
UIデザインおよびUXについて理解できる
|
3週 |
開発環境構築 |
各自の環境において、携帯情報端末向けWebアプリケーション開発環境を構築できる
|
4週 |
HTMLおよびCSS(1) |
HTMLおよびCSSを用いてWebページを作成(デザイン)できる
|
5週 |
HTMLおよびCSS(2) |
HTMLおよびCSSを用いて動的なWebページを作成できる
|
6週 |
JavaScript(1) |
JavaScriptを用いて動的なWebページを作成できる
|
7週 |
JavaScript(2) |
JavaScriptを用いて動的なWebページを作成できる
|
8週 |
TypeScript |
TypeScriptを用いて動的なWebページを作成できる
|
4thQ |
9週 |
サンプルアプリ開発(1) |
Angular+Ionic環境においてアプリケーションを開発できる
|
10週 |
サンプルアプリ開発(2) |
Angular+Ionic環境においてアプリケーションを開発できる
|
11週 |
サンプルアプリ開発(3) |
Angular+Ionic環境においてアプリケーションを開発できる
|
12週 |
モバイルアプリ開発(1) |
Angular+Ionic環境においてスマートフォンの機能を用いたアプリケーションを開発できる
|
13週 |
モバイルアプリ開発(2) |
Angular+Ionic環境においてスマートフォンの機能を用いたアプリケーションを開発できる
|
14週 |
最終課題:オリジナルアプリの開発(1) |
UIデザインを意識したオリジナルの携帯端末向けWebアプリケーションを開発できる
|
15週 |
最終課題:オリジナルアプリの開発(2) |
UIデザインを意識したオリジナルの携帯端末向けWebアプリケーションを開発できる
|
16週 |
|
|
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
専門的能力 | 分野別の専門工学 | 情報系分野 | プログラミング | 代入や演算子の概念を理解し、式を記述できる。 | 4 | |
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。 | 4 | |
変数の概念を説明できる。 | 4 | |
データ型の概念を説明できる。 | 4 | |
制御構造の概念を理解し、条件分岐を記述できる。 | 4 | |
制御構造の概念を理解し、反復処理を記述できる。 | 4 | |
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。 | 4 | |
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。 | 4 | |
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。 | 4 | |
主要な言語処理プロセッサの種類と特徴を説明できる。 | 2 | |
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。 | 4 | |
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。 | 4 | |
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。 | 4 | |
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。 | 4 | |
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを実装できる。 | 4 | |
ソフトウェア | アルゴリズムの概念を説明できる。 | 4 | |
与えられたアルゴリズムが問題を解決していく過程を説明できる。 | 3 | |
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。 | 4 | |
整列、探索など、基本的なアルゴリズムについて説明できる。 | 1 | |
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。 | 2 | |
同一の問題に対し、選択したデータ構造によってアルゴリズムが変化しうることを説明できる。 | 2 | |
リスト構造、スタック、キュー、木構造などの基本的なデータ構造の概念と操作を説明できる。 | 2 | |
リスト構造、スタック、キュー、木構造などの基本的なデータ構造を実装することができる。 | 2 | |
ソフトウェアを中心としたシステム開発のプロセスを説明できる。 | 4 | |
ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できる。 | 2 | |
同じ問題を解決する複数のプログラムを計算量等の観点から比較できる。 | 2 | |
情報通信ネットワーク | ローカルエリアネットワークの概念を説明できる。 | 2 | |
インターネットの概念を説明できる。 | 3 | |
TCP/IPの4階層について、各層の役割を説明でき、各層に関係する具体的かつ標準的な規約や技術を説明できる。 | 3 | |
主要なサーバの構築方法を説明できる。 | 2 | |
情報通信ネットワークを利用したアプリケーションの作成方法を説明できる。 | 4 | |
ネットワークを構成するコンポーネントの基本的な設定内容について説明できる。 | 3 | |
無線通信の仕組みと規格について説明できる。 | 2 | |
有線通信の仕組みと規格について説明できる。 | 2 | |
SSH等のリモートアクセスの接続形態と仕組みについて説明できる。 | 3 | |