プログラミング実習I (2023 年度) のページ
目次
1. クラス共通のお知らせ
2. 講義概要
- 実習の内容: Java を通じてプログラミングの基礎を勉強します
- 以下の教科書を使って実習を進めていきます
- 長 慎也(著),飯塚 康至(著),筧 捷彦(監修),``初級Java ~やさしいJava~,'' 実教出版,2012年
- 該当箇所を事前に予習してから実習に臨むこと
- 長 慎也(著),飯塚 康至(著),筧 捷彦(監修),``初級Java ~やさしいJava~,'' 実教出版,2012年
- プログラミングは Eclipse というソフトウェアを用いて行います
- Eclipse とは?
- 主に Java によるソフトウェアの開発で用いられる IDE (総合開発環境) です
- 詳細は Wikipedia を確認してください
- 自宅での実習環境を整えるためには,自宅の自習用 PC に Eclipse をインストールすることが必要です
- Eclipse とは?
- 以下の教科書を使って実習を進めていきます
- 実習で使用する PC : 以下の (a) と (b) を使って行えます
- (a) 持参した自分の PC (レンタルした PC を含む)
- ※ 自宅等での実習ができるので,(a) での受講をオススメします
- ※ 初回の講義で,自分の PC での実習環境構築を行います
- (b) 大学の演習室に設置された PC
- (a) 持参した自分の PC (レンタルした PC を含む)
- 開講時限: 水曜 3 〜 4 限
- 講義室:4 号館 4 階実習室(グララボ,マルラボ2,マルラボ1)
- 事務のクラス分けに従って 3 クラスに分かれて行います
- どのクラスに割り当てられているかは御自身でご確認ください
- 各クラスの情報は,以降の項目 をご参照ください
- 以下の学生は,Zoom での受講を認めます
- オンライン受講許可学生
- 「学校保健安全法」に基づく登校停止の学生
- ※ Zoom での受講方法については,クラスの担当教員に聞いてください
- ※ Zoom で参加する際には,参加者名を 「学籍番号(下 4 ケタ) 氏名」 としてください
- 事務のクラス分けに従って 3 クラスに分かれて行います
3. 初回講義までに行っておくこと
- 以下のサイトから Eclipse のインストールに必要なファイルをダウンロードしておいてください
- Windows の学生
- Eclipse 2023 Java Full Edition (※ 約1.0GB あります)
- ※ コチラ (準備室のページ) でも再配布しています
- Eclipse 2023 Java Full Edition (※ 約1.0GB あります)
- macOS の学生
- Eclipse 2023 Java Full Edition (※ 約1.2GB あります)
- ※ 余裕がある人は以下の資料を参考にして,インストール作業を進めていってください
- Windows の学生:インストール資料はコチラ (Eclipse 2023 用の資料に差し替えました 2023/9/12)
- macOS の学生:インストール資料はコチラ (Eclipse 2023 用の資料に差し替えました 2023/9/12)
- Windows の学生
図1: Eclipse のダウンロードサイト
- 教科書を,学生生協などで必ず入手しておいてください
- 関学の学生生協の教科書宅配サービスが便利です → 詳細 ページ
- PC の貸出が必要な場合は,事前に,以下のサイトで PC 貸出の手続を行い,貸出 PC を入手しておいてください
- 情報・機械準備室 ノートパソコンの貸し出しについて: ココをクリックしてサイトにアクセス
4. クラスの情報
- クラス 1
- 実習室: 4 号館 4 階実習室 グララボ
- 担当教員:片寄 晴弘 katayose@kwansei.ac.jp
- 担当準備室スタッフ:池淵 隆 ikebuchi@kwansei.ac.jp
- 担当 TA: 以下 4 名
- 情報 M2 (大﨑研) 井上 翔太 igt54834@kwansei.ac.jp
- 人シス M2 (長田研) 佐々木 香暖 iut54872@kwansei.ac.jp
- 情報 M1 (巳波研) 佐俣 友基 isl06471@kwansei.ac.jp
- 人シス M1 (片寄研) 大谷 健人 gwm00491@kwansei.ac.jp
- 詳細情報: クラス 1 の講義サポートページ
- クラス 2
- 実習室:4 号館 4 階実習室 マルラボ 2
- 教員:作元 雄輔 sakumoto@kwansei.ac.jp
- 担当準備室スタッフ:宮本 公郎 iuu08050@kwansei.ac.jp
- 担当 TA:以下 4 名
- 情報 M2 (巳波研) 池田 晴人 hqr55832@kwansei.ac.jp
- 情報 M2 (作元研) 瀬川 絵里子 ijt52842@kwansei.ac.jp
- 情報 M1 (作元研) 坂口 翔太郎 hbn04470@kwansei.ac.jp
- 人シス M1 (長田研) 坂本 櫻 gjm02496@kwansei.ac.jp
- 詳細情報: クラス 2 の講義サポートページ
- クラス 3
- 実習室:4 号館 4 階実習室 マルラボ 1
- 担当教員:北村 泰彦 ykitamura@kwansei.ac.jp
- 担当準備室スタッフ:土村 展之 tutimura@kwansei.ac.jp
- 担当 TA:以下 4 名
- 情報 M2 (西谷研) 百合 慶将 get58857@kwansei.ac.jp
- 人シス M2 (長田研) 山下 ののみ hqr57902@kwansei.ac.jp
- 情報 M1 (猪口研) 大窪 諒 gqn04465@kwansei.ac.jp
- 情報 M1 (石浦研) 志賀 光 hgl05472@kwansei.ac.jp
- 詳細情報: クラス 3 の実習サポートページ
5. 授業時間外における相談
- Slack というコミュニケーションアプリを通じて極力行ってください
- Slack とは?
- メールよりも気軽にメッセージをやり取りできるアプリケーションです
- 詳細は Slack の公式ページ を確認してください
- やり取りされたメッセージは,チャンネルの参加者全員で共有されます
- クラスや課題ごとにチャンネルを作成することで,クラス内での情報共有や,同じ課題を解いている人同士での情報共有が容易になります.
- メールよりも気軽にメッセージをやり取りできるアプリケーションです
- Slack でメッセージをやり取りするためには,ワークスペース(チーム)に参加する必要があります
- 本講義のワークスペースへの参加登録は,初回講義の中で行う予定です
- ワークスペースに表示される名前(表示名)は 「名字(クラス, 学籍番号下4ケタ)」 としてください
- 例えば, 「クラス 2 の関学 太郎さん(学籍番号 12345678)」 の場合 → 表示名は 「関学(クラス2, 5678)」 とする
- ※ 表示名には,カッコ「()」 およびコンマ「,」は半角しか使えないので注意してください
- 表示名の変更方法は ココ を確認してください
- ワークスペースには,クラスごとに作成されたチャンネルがあります
- 質問や相談があったら,気軽に,クラスごとのチャンネル(#クラス1 or #クラス2 or #クラス3)で相談してください
- ただし,他の受講生に相談内容が見られてしまいます
- 相談内容は他の受講生にも役立つ可能性があるため,他の受講生に見られることを気にせず相談してくれると助かります
- 相談内容が見られることがどうしても嫌な場合は,ダイレクトメッセージで担当教員+担当 TA 宛に相談してください
- 質問や相談があったら,気軽に,クラスごとのチャンネル(#クラス1 or #クラス2 or #クラス3)で相談してください
- Slack の参加登録および基本的な使い方(表示名の変更方法やメッセージのやりとりの方法など)を以下にまとめてあります
- Slack とは?
- ただし,メールを使用したほうが望ましい場合は,メールで相談をしてください
- TA のメールアドレスの情報は,レポートシステム にあります
- 参考:
6. 遅刻や欠席の連絡
- 極力,Slack のダイレクトメッセージで担当教員に連絡してください
- メールを使用したほうが望ましい場合は,メールで連絡してください
7. 成績評価
- 合格するためには,少なくとも,以下の条件を全て満たすことが必要です
- (X) R1 〜 R11 における全ての必須課題に対して適切なプログラム or レポートを提出している
- 提出物に不備があった場合は,再提出することが求められます
- (Y) 欠席が 3 回以下である
- 大幅な遅刻は,欠席と同等に扱うこともあります
- (X) R1 〜 R11 における全ての必須課題に対して適切なプログラム or レポートを提出している
- 上記の条件 (X) と (Y) を満たす場合は,以下の (a) 〜 (e) を足して成績点をつけます
- (a) R1 〜 R11 における必須課題の出来
- 提出遅れや不備があった場合は減点されます
- R1 〜 R11 までは,課題 1 回につき 6 点満点とします
- ※ 必須課題に対する満点は 6 点 ×11 回 = 66 点 になります
- (b) R2 〜 R11 におけるオプション課題への取り組み(最大 25 点)
- オプション課題は,各回で適宜用意されています
- (c) R12 における応用課題の出来 (最大 10 点)
- (d) 中間試験の出来(最大 20 点)
- (e) 欠席や遅刻によるペナルティ(< 0点)
- 欠席の数や遅刻の度合いに応じて減点されます
- 欠席 1 回:5 点減点
- 遅刻(授業開始から 100 分以下): 1 点減点
- 遅刻(授業開始から 101 分 〜 120 分): 2 点減点
- 遅刻(授業開始から 121 分以上): 5 点減点(欠席と同等)
- ただし,忌引きや学校感染症等による場合や,公共交通機関の遅延による場合は除く
- 証拠書類を提出のこと
- 欠席の数や遅刻の度合いに応じて減点されます
- 補足
- 提出遅れや不備,ペナルティにより 59 点以下(不合格) となる場合があります
- (a) 〜 (d) を足して点数が 100 点を越える場合は,成績点は 100 点となります
- (a) R1 〜 R11 における必須課題の出来
- 条件 (X) と (Y) を満たさない場合は,上記 (a) および (b) を踏まえて 0 点から 59 点までの成績点となります
8. スケジュールおよび課題
- 2 週 〜 9 週:教科書の内容に沿ってプログラミングの基礎的な内容を勉強します
- 10 週:中間試験を実施し,2 週 〜 9 週までで勉強した内容の理解を確認します
- 実施内容は後日お伝えします
- 11 週 〜 13 週 : 教科書の内容に沿ってプログラミングの発展的な内容を勉強します
- 14 週: R2 〜 R11 までのオプション課題や,これまでに学んだことの応用課題(オプション)に取り組んでもらいます
- 以下の表から,課題にアクセスできます(随時公開されていきます)
- 課題が公開されていても,講義開始までに内容が変更となる可能性があります
- 「オプション」と書かれた課題以外は,全て取り組む必要がある 必須課題 です
- 課題の提出締切は,原則 次の講義の開始時刻 です
- オプション課題の締切は, 最後の講義の 3 週間後の 23:59 です(つまり,1/10 23:59 です)
- オプション課題は後に減点なしで再提出の機会があるので,必須課題だけは期限内に提出すること
- 時間に余裕がある時に取り組んで,レポートなどもまとめておくとよい
内容 | 日付 | 課題 | |
---|---|---|---|
1週 | 実習の準備(Eclipse のインストールと動作確認) | 9/20 | R0 |
2週 | 1 章(Java の基礎) と 2 章の前半(変数) | 9/27 | R1 |
3週 | 2 章の後半(オブジェクト),3章(様々なオブジェクト) | 10/4 | R2 |
4週 | 4 章の前半(繰り返し) | 10/11 | R3 |
5週 | 繰り返しの入れ子と 4 章の後半(条件判断) | 10/18 | R4 |
6週 | 番外編(自作関数) | 10/25 | R5 |
7週 | 5 章(アニメーション) | 11/1 | R6 |
8週 | 6 章(クラス・オブジェクト) | 11/8 | R7 |
9週 | 7 章(配列・Vector) | 11/15 | R8 |
10週 | 中間試験 | 11/22 | 中間 |
11週 | 番外編(2次元配列) | 11/29 | R9 |
12週 | 8 章(継承) | 12/6 | R10 |
13週 | 9 章(イベント) | 12/13 | R11 |
14週 | 応用課題(オプション) | 12/20 | R12 R13 |
9. 課題レポートの作成と提出
- 課題レポートの作成
- 課題(R1 や R2 など)ごとに,以下のテンプレートを用いてレポートを作成してください
- プログラム作成の場合
- まず,課題ごとに,課題名(例えば,R11) を名前に付けたプロジェクトを作成してください
- 例えば,課題名が R11 である場合,R11 のような名前のプロジェクトを作成してください
- 新規作成したプロジェクトに,作成するプログラム(クラス)を追加していってください
- 作成したプログラムは,レポートシステムを通じて提出してください
- まず,課題ごとに,課題名(例えば,R11) を名前に付けたプロジェクトを作成してください
- プログラム作成以外の場合
- 課題レポートにまとめていってください
- 課題レポートとプログラムの提出
- 完成した課題レポートとプログラムを,以下のレポートシステムから提出してください
- レポートシステム: ココをクリック
- 課題レポートの提出先
- 例えば R1 の課題レポートを提出する場合は,「R1」 → 「R1.docx」 の順に選択
- プログラムの提出先
- 例えば,R12 で作成したプログラム(Start.java)を提出する場合は,「R1」 → 「R12-Start.java」 の順に選択
- 課題レポートの提出先
- 注意事項
- システムにアクセスするためには,大学の ID (abc12345 みたいな文字列)での認証が必要です
- レポートシステム: ココをクリック
- 課題の提出締切は,原則 次の講義の開始時刻 です
- 完成した課題レポートとプログラムを,以下のレポートシステムから提出してください
10. FAQ
- (質問) プログラミング演習 I は,春学期のコンピュータ演習 A よりも授業の内容が複雑になっていますか?
- (回答) コンピュータ演習 A よりも,本格的なプログラミングの実習を行うため,多少複雑に感じるかもしれません
- 教科書をよく読んで実習の内容に付いてこれるようにしてください
- また,コンピュータ演習 A よりも多くの TA を配置しておりますので,難しいと感じてきたら積極的に質問してください
- (回答) コンピュータ演習 A よりも,本格的なプログラミングの実習を行うため,多少複雑に感じるかもしれません
- (質問) 初回のオンラインの講義を大学の演習室で参加するかもしれません
- (回答) 4号館 4 階の演習室を空けておきますので,そこで Zoom に接続して参加してください.
- イヤホンを持ってきてもらえると助かります
- (回答) 4号館 4 階の演習室を空けておきますので,そこで Zoom に接続して参加してください.
- (質問) 初回の授業(の参加する場所?)は当日に変更になっても良いですか.
- (回答) はい.構いませんが,事前に申し出てくれると助かります.
- (質問) プログラミングの勉強法がまだ掴めないところで,アドバイスが欲しいです!
- (回答) 何がどのように掴めないのか,もう少し詳しく教えてもらえれば,より具体的にアドバイスできます.
- 一般論としてアドバイスすると,まずは,基本的なプログラミングの本(本講義の教科書など)の内容をしっかり理解したほうがいいでしょう.(作元の私見)
- その際に,文章だけを読むのではなく,手を動かす(サンプルプログラムを書き写して,実行してみる)ことがポイントです.
- サンプルプログラムで書いてある内容が大体分かれば,本の内容が大体理解できたと思います.
- その際に,文章だけを読むのではなく,手を動かす(サンプルプログラムを書き写して,実行してみる)ことがポイントです.
- 基本的なプログラミングの本の勉強が終わったら(平行してやってもいいですが),いろいろな問題を解いてみるのもよいです
- インターネット上で多くの問題が公開されていますので,ぜひやってみてください.スカウトされたり,就活の時のコーディングテスト対策にもなると思います.
- 解けない問題がでてきたら,中級のプログラミングの本(プロコン対策などの本)で勉強するとよいです
- 一般論としてアドバイスすると,まずは,基本的なプログラミングの本(本講義の教科書など)の内容をしっかり理解したほうがいいでしょう.(作元の私見)
- (回答) 何がどのように掴めないのか,もう少し詳しく教えてもらえれば,より具体的にアドバイスできます.
- (質問) 春学期のコンピュータ演習 A では,大学のパソコンと自分用のパソコンの二つを使い分けていました.プロ I では片方しか使えないのですか?
- (回答) もちろん両方使って構いません.
- (質問) 毎週の課題がどの程度なのか気になっています.大まかな必要時間を教えていただけると嬉しいです.
- (回答) プロ I は 2 単位の講義ですので,毎週,授業中(200分) + 授業外 89 分 (計 5 時間弱) の学習時間を目安に課題を設定しています.
- 詳細な計算は「履修心得 p.10」をご参照ください
- (回答) プロ I は 2 単位の講義ですので,毎週,授業中(200分) + 授業外 89 分 (計 5 時間弱) の学習時間を目安に課題を設定しています.
11. 参考情報
11.1. スクリーンショットの取り方
- Windows の場合
- 指定した範囲のスクリーンショットを取る方法(現在の主流の方法)
- 「Window ボタン」 + 「Shift」 + 「s」 の同時押しで,範囲指定モードになる
- 範囲を指定すると,その範囲のスクリーンショットがクリップボードに取り込める
- 「Ctrl + v」でスクリーンショットをレポートに貼り付けられる
- アクティブウィンドウ(作業中のウィンドウ) のスクリーンショットを取る方法
- 「Alt + PrtScreen」 の同時押しでアクティブウィンドウ(作業中のウィンドウ) のスクリーンショットをクリップボードに取り込めます
- 「Ctrl + v」でスクリーンショットをレポートに貼り付けられる
- 指定した範囲のスクリーンショットを取る方法(現在の主流の方法)
- macOS の場合
- 「Shift + Command + 4 + Space bar」 を同時に押すとポインタの形状がカメラのアイコンに変わります
- その状態でウィンドウをクリックすると,そのウィンドウのスクリーンショットがデスクトップに保存されます
11.2. Microsoft Word の無償インストール
- 関学に在籍している間,Microsoft Office (Word や Excel など) を無償でインストールできます
- 詳細は ココをクリック してください
12. Eclipse 使用上の注意
12.1. 作成したプログラムの保存場所と入手方法
- Windows ユーザ
- workspace (プログラムの保存場所) へのパス(PC 内での場所を表すもの)を確認する
以下の図のように「ファイル」→「ワークスペースの切り替え」→「その他」を選択
図2: workspace (プログラムの保存場所) へのパスの確認(その1)
すると,以下のウィンドウが表示されるので,workspace のパスを確認する
- 以下の図では「Z ドライブ」の「eclipse-workspace」というフォルダに,workspace のファイルが保存されていることが分かる
- 多くの人の自宅 PC では,「Z ドライブ」ではなく「C ドライブ」となっていると思います
図3: workspace (プログラムの保存場所) へのパスの確認(その2)
- 以下の図では「Z ドライブ」の「eclipse-workspace」というフォルダに,workspace のファイルが保存されていることが分かる
- エクスプローラなどで,手順 1 で調べた workspace のパスを開く
- エクスプローラって何? C ドライブはどこ? という人は → ココをクリック
以下の図のように,eclipse のプロジェクト名に対応したフォルダが存在することが分かる
図4: workspace (プログラムの保存場所) 内の構造
- 欲しいプログラムが作成されているプロジェクトのフォルダを開く
- 開いたフォルダ内にある「src」フォルダ内に,プログラムのファイル(*.java) が保存されている
- workspace (プログラムの保存場所) へのパス(PC 内での場所を表すもの)を確認する
- macOS ユーザ
- 基本的に,Windows と同様の手順で,作成したプログラムを入手できる
12.2. workspace の場所の指定(macOS ユーザ限定)
- workspace (作成したプログラムの保存場所)を,クラウド(iCloud など)上に作成した場合,データ通信に関連したトラブルが発生することがあります
- workspace の作成場所は,ローカルストレージ内を指定するようにしてください
- クラウドは,作成したプログラムのバックアップ用として利用してください