情報科学プログラミング1
担当者盛 拓生
学年・開講期2年次 前期  [理工学部 情報電子工学科]
科目の種類専門基礎
区分・単位選必 2単位
科目ナンバー3C211

授業の概要(ねらい)

 Java言語を通してオブジェクト指向プログラミングの基礎を学びます。Javaは現在のソフトウェア開発において最も利用されているプログラミング言語の1つであり、オブジェクト指向プログラミングは現在最も一般的なソフトウェア開発技法の1つです。これらを利用できることになることで、実用的なプログラムの開発が可能となります。
 Java言語はコンパイラ型言語としての特徴と仮想マシン上で実行される中間言語としての特徴を併せ持つ言語です。テキストエディタ及びシェルを利用してプログラムを開発、実行することにより、ソースファイルとクラスファイル、パッケージ管理とディレクトリといったJava言語そのものへの理解を深めます。
 授業は反転授業の形式で行われます。原則的に、毎回授業前にビデオ教材で予習し、事前課題により理解度を確認するようにしてください。
 また総合演習を除いて、授業中はS. A.と呼ばれる上級学生にサポートをお願いする予定です。授業中はグループに別れて、ビデオ教材で事前学習した内容、授業内課題に関する内容についてグループワークを行います。
 この科目では、学位授与の方針(ディプロマポリシー)DP4Cに関連する能力を修得します。

授業の到達目標

 大きな目標は、カプセル化、継承、多態性といったオブジェクト指向プログラミングに特徴的な概念を、Java言語の文法を通して表現できるようになることです。
 具体的には、履修学生が次の各項目ができるようになることを目標とします。
学生は、小さな、あるいは簡単な問題について、その仕様及びアルゴリズムが与えられたときにJava 言語でプログラムを作成できる。
学生は、基本的なオブジェクト指向プログラミングをJava言語により表現することができる。
学生は、テキストエディタ及びコマンドラインツールを使用してJava言語を用いたプログラミング開発ができる。
学生は、グループワークに積極的に参加することにより自身の理解度を高めることができる。

成績評価の方法および基準

各種ワークシート20%、プログラミング課題(必須課題およびオプション課題を含む)30%、期末試験を50%。
講義内容、ワークシート、試験への質問、フィードバック等は原則的に授業内あるいはLMS、オフィスアワーで対応します。

教科書・参考文献

種別書名著者・編者発行所
教科書Java言語プログラミングレッスン 第3版(下) オブジェクト指向を始めよう結城浩著SBクリエイティブ,ISBN-13: 978-4797371260
参考文献Java言語プログラミングレッスン 第3版(上) オブジェクト指向を始めよう結城浩著SBクリエイティブ,ISBN-13: 978-4797371253

準備学修の内容

 この科目は反転授業として行われます。毎回授業前に1.5時間程度をかけて、講義ビデオを視聴しながら事前課題に取り組み、理解できたこと、理解できていないことを各自で把握して授業に臨んでください。
 授業後には、30分程度かけて、課題に改めて取り組み、実行し、実行結果を確認するなどしてください。また、オプション課題が課されている場合は、積極的に挑戦してください。
 課題、試験等について質問がある場合には授業中に質問するか、教員のオフィスアワーを利用して解決してください。
 

その他履修上の注意事項

 この科目はBYODの端末を利用する予定です。従って、学生は各自のBYOD端末にJAVAの開発環境をインストールする必要があります。
過年度生へは別途対応します。
インストール方法は講義ビデオ等で示します。また、自主学習支援のためにLMSを利用します。
事前に履修すべき科目は論理数学、プログラミング1、 プログラミング2、プログラミング演習1です。
同時に履修すべき科目はプログラミング演習2、データ構造とアルゴリズム、プログラミング言語論です。
事後に履修すべき科目はプログラミングに関連する科目全てが該当します。
この科目はJABEEプログラムの必修科目で、学習・教育到達目標中項目4-2に対応しています。

授業内容

授業内容
第1回Java言語
第2回演算子、変数と型、文字列、if文と繰り返し処理
第3回配列と拡張for文
第4回オブジェクト指向プログラミング再入門
第5回オブジェクト変数、クラス変数、コマンドライン引数
第6回スーパークラスとサブクラス -スーパークラスとサブクラス、継承-
第7回スーパークラスとサブクラス -多態性、抽象クラス-
第8回総合演習1
第9回アクセス修飾子、パッケージの利用
第10回インタフェース
第11回複数インタフェースの実装,オブジェクト指向言語における再帰
第12回例外 -例外とは何か、代表的な例外処理の例-
第13回例外 -様々な例外、例外を用いたプログラムの注意点、JavaSE7で導入された新しい例外処理-
第14回総合演習2
第15回総合演習3