Department of Computer Science
情報工学科の特徴
ソフトウェア開発に必要な専門的な知識や技術を身に付けます。
高度情報化社会で活躍できる技術者の育成を目標に、ソフトウェア、ハードウェア、ネットワークおよびアプリデザインの4分野をバランスよく勉強します。また、各講義に連動した多数の演習に取り組むことで、講義で獲得した専門的知識をより実践的な専門的技術に高めることができます。
1
プログラミング教育
Python、Java、JavaScript、Processing、C、C++、Objective-C++、C#、Scratch、Excelプログラミング、SQL、PHP、jQuery、Swiftといった多彩なプログラミング言語を用いて授業を行っています。 また、プログラミング道場で学生が主体的に学んでいます。
プログラミング教育の授業など
プログラミング入門
データ処理、統計・解析、人工知能、Webアプリなど幅広い分野で用いられているプログラミング言語「Python」を使い、ソフトウェア(プログラム)制作の基礎を学びます。プログラミングに必要な論理的思考力を養うと同時に、演習を通して実際に手を動かしながらプログラミング作業を体験することで、情報工学を学ぶための土台となる技能を身に着けます。
ゲームプログラミング
パソコンで動くコンピューターゲームのつくり方を学びます。その方法は普通のプログラムをつくるのと基本的には同じです。なので、動作確認のために、見栄えはよくありませんが、図(地雷を踏むと失敗になるゲーム)のようなプロトタイプをまずつくります。その後、見かけの部分を2次元あるいは3次元のグラフィック関数を使って仕上げます。このような開発作業を行うためのゲームエンジンのひとつであるUnityの使い方も学びます。
プログラミング道場
プログラミング技術の向上を目標に、3DGC、拡張現実(AR)、仮想現実(VR)、物理演算エンジン、マイコン、無線シリアル通信、サーボモータ制御、振動装置、人体・指先センサなどを駆使したオリジナルゲームを製作しています。道場では、企画から開発・テストまでを学生自身で行っています。最近はアプリ開発も行っており、コンテストでの入選などの成果も出ています。
2
ネットワーク教育
現在の情報化社会では、ネットワークに接続せずにコンピュータを利用することは、ほぼありません。ネットワークを利用・運用・管理するのに必要な知識と技術を身につけます。
ネットワーク教育の授業
コンピュータネットワーク
ネットワークがどのような形で構成されているかを、ハードウェアおよびソフトウェアの両面から解説し、理解を深めます。具体的には、パケット通信や通信プロトコル、階層化モデルなどのデータ通信における様々なしくみや、WAN・LANにおける利用環境やネットワーク構成、接続形態およびTCP/IPのネットワークプロトコルに関して学習します。また、ネットワークに関するセキュリティや暗号化技術についても触れます。
実用ネットワーク管理
コンピュータのネットワークシステムを管理・運用するためには、知識だけでなくハードウェアとソフトウェアに関する実践的な経験が必要です。ネットワーク機器の設定やトラブル対応のスキルは非常に重要であり、システム開発やIT関連の業務において必要不可欠な要件となっています。この授業では実際にネットワーク機器を使って様々な設定やトラブル解決の演習を行いながら、ネットワーク管理に関する経験を積んでいきます。
暗号とセキュリティ
コンピュータネットワークを自分が安全に利用するために、また、コンピュータネットワークの管理者が利用者の安全を確保するために、どのようなことをすべきか、なぜそうすべきか、またその背景にある理論はなにか?について講義と演習を行います。担当教員は組織における情報セキュリティ強化のための国際的な管理基準であるISMSの取得や運用を行った経験を持っています。演習の計算は主にExcelを使って行います。図に例を示します。
Webプログラミング
Webプログラミングでは、クライアントサイドとサーバーサイドで異なったプログラミングが求められます。クライアントサイドではHTMLやCSS、JavaScript、サーバーサイドではPHPやSQLといったプログラミングを学みます。授業において、これらを組み込んだWebサイト作りをゴールとした演習に取り組むことで、Webサイトを作るのに必要な知識を実践的に学びます。
3
アプリデザイン教育
工学の基礎的な知識・技術の応用として、アプリデザイン教育を用意しています。アプリ開発に必要なコンピュータグラフィックスや人工知能などを学びます。
アプリデザイン教育の授業
アプリデザイン演習
タブレット、スマートフォン、デジタルカメラ、ロボット、ドローン、スマートウォッチなど様々なIT機器上で動作するAndroidやiOS用アプリの開発に挑戦します。開発の手順を1から学び,パソコン上でのシミュレーターやスマートフォン実機でアプリを実行し、さらにチームを組み協働でオリジナルアプリを企画・開発するアクティブラーニングも実施しています。
コンピュータグラフィックス
ゲーム、映画、TVといった様々な分野で用いられているコンピュータグラフィックの理論を学習します。モデリング、レンダリング、アニメーション、CGシステムといった各種技術に関する仕組みやその応用方法について理解を深めます。なお、本講義はコンピュータグラフィックスの技能レベルを評価する文部科学省認定「CGエンジニア検定」に沿った学習カリキュラムとなっており、本講義を受講することで検定対策にもなります。
人工知能
21世紀に入り、膨大な情報がインターネット上に蓄積されています。最新の人工知能研究では、この膨大なデータを画像認識、音声処理等の様々な分野で活用しています。本講義では、さまざまな人工知能技術を紹介します。そして、人工知能という分野がどのような変遷を遂げてきたかを解説し、将来の人工知能社会を予想します。
みらい工学プロジェクト(ゲーム)
ゲームエンジンを使い、ゲーム製作の基礎について学びます。前半には、キャラクタのモデリング、ゲームマップの作製、プログラミング、物理演算エンジン、アニメーションといった技術について演習形式で学びます。後半には、グループ単位で協力し合いながらゲームを制作し、最後に成果発表を行います。自分達でゲームを企画し、作り上げていく過程は、非常に楽しいアクティブトレーニングにもなっています。