『プログラミング応用a』『同演習』『プログラミング応用b』『同演習』 水曜3〜4限
(総合情報学科・情報システム学系2年次配当)
担当教員:斎藤・向井・大城・秋山・北風・平塚・渡辺・須賀


2025年度授業内容

スケジュール表へジャンプ! Webブラウザは FireFoxでお願いします(HTMLアニメーション対応のため)。

●2025年度のクラス分けと課題提出について。 (2025/04/23 Update!)
 2025年度のクラス分けは,J-Portの掲示板「その他授業関連」や各教室のドアに掲示
 しています。クラス分け表はこちらからも見ることができます。クラス分け表に自分
 の学籍番号・名前が掲載されていない場合は,クラス分け表上部の注意書きにあるよう
 に,学籍番号の末尾の数字でクラスが決まるようになっています。


 ※課題は,必ず自分のクラスの『プログラミング応用a演習』用WebClassコース(以下のリンク先)で確認・提出をして下さい。
  第2回の授業以降は,自分の所属していないクラスのWebClassコースはアクセス自体出来なくなります。
   A(大城)クラス:リンク
   B(斎藤,秋山)クラス:リンク
   C(向井)クラス: リンク
   D(北風)クラス:リンク
   E(渡辺)クラス: リンク
   F(平塚)クラス:リンク
   G(須賀)クラス: リンク
 ※毎回,課題の提出期限は出題回の次の回の3限授業開始時刻(13:10)前までです。
 ※毎回,最初の提出は必ず行いましょう。最初の提出を行わないと再提出のチャンスが与えられません!

●授業録画動画の公開 (2025/04/23 New!)
  授業録画動画をこちらで公開します。基本的に授業から60日間しか見られないので気をつけてください。

【重要】2025年度用のEclipseインストールガイドを公開しました。 (2025/04/16 New!)
 こちらのパワーポイント書類を参考に,第2回の授業前までにEclipseを自分のノートPCに
  インストールしておいて下さい。

●次回以降,ノートPCを持参すること。 (2025/04/16 New!)
 授業時間中は,実習室のデスクトップPCでもEclipseを利用できますが,課題などは自分の
 ノートPCで行うことをすすめます。

■複数のファイルをzipファイルにまとめて圧縮する方法について (2024/05/01 New!)
 こちらを参照して下さい。


演習課題を解くのにChatGPTなどのAIサービスを使用してはいけません(2024/04/12 New!)
  第1回のガイダンスでも案内しましたが,演習課題を解くのにChatGPTなどのAIサービスが
 生成したプログラムを一部でも使用してはいけません。ChatGPTなどのAサービスが生成した
 プログラムコードを含む解答は0点とします。

■4限の「プログラミング応用a演習」は教員の指示なく部屋から出ないこと。 (2024/04/12 New!)
  第1回のガイダンスでも案内しましたが,4限の「プログラミング応用a演習」は教員の指示
 なく勝手に部屋から出ないこと。無断で途中から不在になった場合は欠席扱いにします。

■2025年度の授業の流れ (2025/04/16 New!)


■提出済み演習課題の評価結果確認の方法 (2024/05/1 New!)
 前期ガイダンスでも案内しましたが,提出済み演習課題の評価結果は以下の様にして確認できます。
 (1)自分の所属するクラスのWebClassコースにアクセスする(例:村上クラス所属の場合は,「プログラミング応用b演習(村上クラス)」コース)。
 (2) 上部の「マイレポート」タブを選択。
 (3)以下の様に表示される。


なお, 上部の「成績」メニューから 「集計」を選択し,表示された各課題へのリンクをクリックし,表示されたページの「結果履歴」タブでも概要は分かる。

また,最初の提出で不正解になり,再提出を求められている場合は,(再提出の締切期限前までなら)教材一覧で次のように再提出を求められていることが分かる。


 ※2024年度は採点担当のSA/TAが不足気味で,4限開始時までに提出された演習課題の採点が完了していない
  ことが多くなると思います。遅くとも,当日までには採点は完了すると思われますので,必ず提出した課題
  の採点結果を各自確認し,再提出が指示されている場合は再提出の締切までにサイド提出しておくようにし
  て下さい。

■井関先生が提供しているプログラミング言語自習システムについて (2023/04/19 New!)
  情報システム学系の井関先生が,プログラミング言語自習システムの提供を開始しました。
 Webブラウザがあれば,プログラミングの自習ができます。言語は現在のところ Python, Julia, R, C/C++, Java, JS, PHP, Swift 
 を用意しています。活用してみて下さい。
  ・接続方法
   1.el.mml.tuis.ac.jp に大学のIDとパスワードでログインする.
   2.共通 フォルダをクリック
   3.Jupyter Lab 自習用 をクリック

●ソースファイルの場所の知り方 (2022/04/11 New!)
Eclipse でプロジェクトやファイルの場所を知りたい場合に使える便利な方法を追記しました。
第3回資料ページ→「Eclipseの使い方」→「3. ファイルの追加と編集」→「【9】ソースファイルの場所をWindowsのExlplorerで開く」
直接リンクはこちら

 公開場所は,各クラスの「プログラミング応用a演習」用WebClassコースです。

■予習について
 ・毎回,次の回の授業の内容を予習すること。予習用の動画が事前に掲載されますので予習の際に見るようにして下さい。
  ・予習確認小テスト(自習用)は、 スケジュール表の「予習確認小テスト」欄に毎回分のリンクがあります。「自習用」
  のリンクをクリックして、WebClass上のテストに進んで下さい。授業前までに100点になるまで繰り返すこと 。
  ※初めて予習確認小テストへアクセスしたとき、WebClassの「プログラミング応用a」コースに参加するかきかれ
   ますので、肯定して先に進んで下さい。
 
■全員,大学推奨ノートPC(及び電源アダプタ・LANケーブル)を用意すること。


●プログラミング時のトラブルについて (2017/5/22)
 プログラミング演習時に理解不足によるトラブルが発生しているようです。いくつかポイントをあげます。
  (a)ソースファイル名を正しく決める(第2回「3.最も単純なJavaプログラムに学ぶ初歩知識」の「Javaの約束事」内。分かりやすいように記述を追加しました。)。
 次の(b)〜(e)は,プログラム上の間違いが無くても起こるトラブルの回避方法です。理由と詳細は Eclipseでのコンパイル・実行に関する資料を再確認すること。
  (b)プログラムごとに必ずプロジェクトを新たに作ること。特に指定されない限り,初心者がひとつのプロジェクトを再利用して使い回すのはトラブルの元です。
  (c)新しいプロジェクトを作る前に,Eclipseの「ファイル」メニュー→「すべて閉じる」を選んで,以前のプロジェクトのソースファイルのウィンドウをすべて閉じておくこと。
  (d)同じソースファイルを編集しなおして,コンパイル&実行しても,変更した内容が反映されない場合は,ソースファイルを保存してから, 再度,コンパイル&実行してみる。
  (e)コンパイル&実行時に,以前のプロジェクトのプログラムが実行されてしまう場合は,
     (1) 前のプロジェクトのソースファイルの編集ウィンドウが開いている場合はそれらをすべて閉じてから,再度,コンパイル&実行してみる。
     (2) それでも症状が変わらなければ,適切な実行構成を選んで再確認すること。
     (2) それでも症状が変わらなければ,実行構成を作り直して再確認すること。




■提出課題の評価について
  ガイダンスでお伝えしたように,本授業は
毎回提出課題が出題されます提出課題は次回の授業の開始時間までに,自分のクラスの
「プログラミング応用a演習」用コース(WebClass)で提出して下さい
。提出された課題はチェックされ,正解の場合は受理されますが,
不正解の場合は再提出を求められます。返却された課題の再提出は,次の回の授業(出題回の次の次の回)開始時間まで行えます
授業開始時間に1秒でも遅れた場合は課題は評価しませんので注意してください。

■グラフィカルな実行結果を提出する必要がある場合
  グラフィカルな実行結果を提出する必要がある場合は, 画面のスクリーンショットを撮ってファイルとして提出すれば良い。
  スクリーンショットは,キーボードの Print Screen (Prt Sc) キーを押すと画面全体がコピーされる。
  Print Screen (Prt Sc) キーは,キーボードの右上付近にある。
  画面をコピーしたら, Windows 標準アプリケーション(Windows アクセサリ)の「ペイント」 を起動して
  「貼り付け(ペースト)」を行うと,スクリーンショットの画像書類を作成できる。そのまま「ペイント」でファイルとして保存し,提出すれば良い。 
  (参考:Alt キーを押しながら Print Screen (Prt Sc) キーを押すと一番手前のウィンドウのみをコピーできる。)


■ソフトウェアコンテストに応募しよう!
  今年度も総合情報学科ソフトウェアコンテストを開催します。参考までに昨年度のお知らせはこちら。毎年、〆切は1月です。
  賞品総額も昨年度と同様ですので,ぜひ,参加してみて下さい。 プログラミングは,実際にソフトウェアを作成すること
  で技術として本当に身につけることができます。豪華賞品もありますので,この機会にチャレンジしてみてください。(情報系
  の就職を考える場合,就職活動が3年生の冬から始まりますので,3年生までに何かしらの作品を作る経験をしておいた方
  が,就職に役に立ちますよ)

■テキスト・参考書
 参考書:『ITText Javaオブジェクト指向プログラミング』(布広永示 編著、オーム社) 
 参考書:『やさしいJava(第7版)』(高橋麻奈、ソフトバンク)

■ノートは必ずとりましょう(重要)。
  ノートに要点をまとめたりすることで,学習した内容が記憶に残るようになります。
  (参考:コーネル式ノートによる「講義ノートの取り方と復習のコツ」
  本授業では,各自のノートをチェックして評価の材料とする場合があります。

■「大学設置基準」で定められた自学自習の時間について(重要
  大学の授業は「大学設置基準」という国の省令により,1コマ1回の授業に対しその3倍の時間
  を自習時間に使うように定められています。つまり,90分の授業な ら,予習復習を毎回270分
  行うように定められているのです。大学生は自らアクティブに学習することが求められている
  ことを肝に銘じて下さい。なお,本授業では予習復習に毎回最低1時間はかけていただきたいと
  考えています。(このことに関してより詳しい解説はこちら。興味がある人は授業外の時間に読
  んでみて下さい)

授業前までに,各回の講義内容を予習することを前提で授業を進めます
 
■禁止事項:
  授業中にプログラミング課題を出されたとき,似たようなプログラムをコピー・修正して目的のプログラム
  に仕立てようとすることは絶対にしないで下さい
。講義の内容から,「仕組み」を理解して,その仕組みを
  使って自分でゼロから作成する努力をしなければ,基礎的な知識・技能というものは身につきません。

■Web資料の閲覧には FireFox を使用して下さい。
  他のWebブラウザだと,ソースコードのダウンロードなどいくつか不都合が起きます。



「プログラミング応用a」「同演習」スケジュール

日程 「プログラミング応用a」
講義内容
授業WEB資料リンク 予習確認
小テスト
内容理解確認小テスト 教科書該当部分

参考書
該当部分

授業録画動画
2024年度 2023年度
第1回 4/16 ガイダンス



        2024年度
録画リスト
2023年度
録画リスト

第2回

4/23

1年次の復習と応用1
(式の実行順、変数と構造文)

資料

自習用
本番用
  P16〜P32 第1〜6章

第3回

4/30

開発環境 Eclipse の使用方法

資料

  小テスト    

1年次の復習と応用2
(メソッドと配列)

資料

static メソッド定義ドリル

自習用
本番用
メソッド:P67,P73〜P74
配列:P33〜P35

第7章, 8.4〜8.6, 9.2

第4回 5/7 クラス定義の基礎 資料

自習用
本番用

小テスト 第2章(2.2.4および2.4をのぞく) 8.1〜8.3, 9.5, 10.4
第5回 5/14 オブジェクト生成とその利用 自習用
本番用
小テスト
第6回 5/21 オブジェクトの初期化・コンストラクタ 資料
自習用
本番用
小テスト 2.2.4, 1.1.3, 3.1.4 9.3〜9.4
第7回

5/28

文字列を表すStringクラス, ここまでの復習 資料 自習用
本番用
小テスト 1.2.3  
第8回 6/4 中間試験

 第1〜7回の内容の復習。

無し 無し
第9回 6/11
モジュール化その1 (メンバアクセス制御とアクセッサ)

資料

自習用
本番用
小テスト

2.4, 1.1.5

9.1, 10.2 2024年度
録画リスト
2023年度
録画リスト
第10回 6/18 モジュール化その2 (パッケージ化とインポート、パッケージレベルでのアクセス制御) 自習用
本番用
小テスト 1.1.7 第13章
第11回 6/25 継承の基礎1

資料

継承サマリー

自習用
本番用
小テスト 3.1, 3.3 11.1, 11.3
第12回 7/2 継承の基礎2 自習用
本番用
小テスト 11.2, 11.4
第13回 7/9 抽象クラス・抽象メソッド1
(その意味と定義の方法)
資料
自習用
本番用
小テスト 3.2.1〜3.2.2 12.1
第14回 7/16 抽象クラス・抽象メソッド2
(抽象クラスとしてのスーパークラスの作例)

なし

小テスト
第15回 7/23 期末試験   無し 無し

●Java SE6 API ドキュメント  ●Java SE6 JDK プログラマーズ・ガイド
●Java SE7 API ドキュメント  ●Java SE7 JDK プログラマーズ・ガイド
●Java SE8 API ドキュメント  ●Java SE8 JDK プログラマーズ・ガイド







「プログラミング応用b」スケジュール
日程 内容 授業WEB資料リンク 予習確認
小テスト
内容理解確認小テスト 教科書該当部分 参考書該当部分

2024年度
授業録画動画

第1回 9/25 ガイダンス           録画リスト

第2回

10/2 前期「プログラミング応用a」の復習

課題の補足

       

第3回

 10/9 インタフェイスと実装1 資料
自習用
本番用
小テスト 3.2.3 12.2〜12.3

第4回

10/16 インタフェイスと実装2,
オブジェクト指向のまとめ

資料

自習用
本番用
小テスト

第5回

10/23 JavadocAPIドキュメントの利用方法、アノテーション

資料

自習用
本番用
小テスト 該当箇所無し 該当箇所無し
第6回 10/30 例外によるエラー制御

資料

自習用
本番用
小テスト 1.4 14.1〜14.3
第7回 11/6 ファイル入出力の基礎(文字データ入出力、ファイル操作) 資料 自習用 小テスト

1.5

14.4

第8回 11/13 中間のまとめと復習 (中間試験)          
第9回 11/20 コレクション 資料 自習用
本番用
小テスト 1.6 該当箇所無し
第10回 11/27  スレッド1 資料 自習用
本番用
小テスト 第4章 第15章
第11回 12/4 スレッド2 資料 自習用
本番用
小テスト
第12回 12/11 GUIその1 (AWT/Swingによるウィンドウのデザインと生成) 資料 自習用
本番用
小テスト 5.1〜5.5 該当箇所無し
第13回 12/18 GUIその2 (AWT/Swingによるイベント処理) 資料 自習用
本番用
小テスト 5.7 該当箇所無し
第14回 1/8 GUIその3 (AWT/Swingによる応用的イベント処理) 資料 自習用
本番用
実施しません 5.8 該当箇所無し
第15回 1/15 まとめ,期末試験


       
付録1   ファイル入出力の基礎2
(バイト(バイナリ)データの読み書き)
資料

自習用
本番用

     
付録2  

コレクション2
( イテレータ処理、Map、その他の代表的コレクションクラス)

資料 自習用
本番用