プログラミング A
第1回 Javaの基本
2013年4月22日 東邦大学 金岡 晃
この授業について
• 講義科目名称
– プログラミングA – プログラミング演習A
• 英文科目名称
– Programming A
– Programming Exercise A
• 開講期間
– 春学期
• 配当年
– 1学年
• 単位数
– プログラミングA:2
– プログラミング演習A:2
• 科目必選区分 – 必修
• 担当教員
– 金岡 晃、菊地 賢一、白石 路雄、古谷 立美
• 開講日時
– 月曜日3限 – 月曜日4限
2014/4/14
1 プログラミングA
担当と講義資料
• 担当
– 金岡 晃(かなおか あきら)
• E-mail : [email protected]
• 居室:理学部 IV 号館 6 階 4621 室 – ティーチングアシスタント( TA )
• 大庭怜於奈
• 綿貫達也
• 講義資料
– 教科書:やさしい Java 第 5 版
– USB メモリは毎回持参すること
授業概要
• 授業の目的と学習概要
– コンピュータを用いて計算処理を行うには、プログラムが必要 不可欠である。本授業では、プログラムの作成方法を初歩から 学び、プログラミングの基礎力を身につけることを目標とする。
プログラミング言語としては、広く用いられている Java 言語を使 用する。
– プログラミングAの授業で習った内容に対して、プログラミン グ演習を行うことにより、プログラミングの理解を深めること を到達目標とする。
2014/4/14
3 プログラミングA
評価方法とオフィスアワー
• 評価方法
– プログラミング A 、プログラミング演習 A 共通
• 平常点: 50 点
– 出席および中間試験
• 定期試験(期末試験、 4 クラス合同): 50 点 – 合計 60 点以上を合格とする
• オフィスアワー
– オフィスアワーについてはメールで個別に時間を予約するもの とする
• 連絡先: [email protected]
講義 / 演習の進め方と中間試験
• 講義 / 演習の進め方
– 講義 → 演習というスタイルで進めます – 内容やみなさんの進捗度合によって柔軟
に変更します
– 授業の最後に課題を出すようにします
• 課題の提出をもって、出席のカウント とします
• 中間試験
– 第 8 回目( 6 月 9 日)に実施します
– 内容は第 1 回目から第 7 回目までの内容
5
講義
演習
講義
演習
課題
提出)
2014/4/14 プログラミングA
授業用 Web サイト
• http://www.klab.is.sci.toho-u.ac.jp/classes/
• 金岡が受け持っている講義の資料(この講義 以外も)をアップロードしています
• 「プログラミング A 」のページも作成しまし た
• 講義資料を PDF 化してすべて載せていきます。
閲覧方法の詳細はあとで行います
7
Agenda
• 講義 / 演習の進め方
• 評価について
• 今回の内容
– プログラムとは?
– プログラムを実行するまで
– 実際にプログラムを作成してみる – メールを送信してみる
2014/4/14 プログラミングA
プログラムとは
プログラムとは?
9 2014/4/14 プログラミングA
プログラム
「計算機(コンピュータ)に何かをやら せたい」というときに、その動作を指示 するもの
コンピュータへの指示
そのコンピュータに応じた機械語で命令 を書き、指示する。
詳しくは秋学期の「コン ピュータアーキテクチャ」
で学びます 人間が
機械語で
指示するの? NO
プログラム言語
コンピュータと人間を結ぶ、
コンピュータに指示するための言語
さまざまな言語
C
Java C++
C#
Visual Basic Ruby
Python
Perl
Prolog
FORTRAN
COBOL
Pascal
言語処理系
2014/4/14 プログラミングA
11
エディタ
ソース プログラム
ソース プログラム
・・
・
コンパイラ
コンパイラ
目的 プログラム
目的 プログラム
リンケージ エディタ
実行時 ライブラリ
実行 プログラム
実行 デバッガ
コンパイル 機械語
(に近い)ゾーン 我々が
作るプログラム
詳しくは3年春学期(選択)の
「コンパイラとプログラミング言語」で学べます
• コンパイラを各計算機の環境ごとにつくらないといけない
• 目的プログラムは各環境に応じたものを用意しなければならない
• 実行プログラムは各環境に応じたものになる
Java と仮想計算機
エディタ
ソース プログラム
ソース プログラム
・・
・
コンパイラ
コンパイラ
目的 プログラム
目的 プログラム
リンケージ
エディタ 実行
プログラム
コンパイルした環境と同じ計算機環境で実行するようにコンパイルされる
環境に依存しない仮想的に考えられた計算機(バーチャルマシン、仮想計算機)と、
仮想計算機用のプログラムを実行可能なソフトを計算機とOSの組ごとに作成すれば、
プログラム作成者は1つのプログラムを作るだけで様々な環境でプログラムが実行できる
Java :プログラム作成から実行まで
2014/4/14 13
ソースプログラム
バイトコード コンパイラ
プログラミングA
インタプリタ
実行
****.java というファイル
****.class というファイル
エディタ
ソースプログラムの作成時に 利用するソフトウェア
JCpad Eclipse
秀丸エディタ
Visual Studio
プログラムを見てみよう
• 一番簡単なプログラム
15
class HelloWorld{
public static void main(String[] args){
System.out.println(“Hello World!”);
} }
2014/4/14 プログラミングA
• 動画:mpeg, avi, mp4など
• 音楽:mp3, wmvなど
• 文書:docx, txt など
• スライド:pptxなど
• 表:xlsxなど
JCPad の使い方 … の前に
Windows上のデータ
• データは「ファイル」という単位でコンピュータ内に保存されている。
• さまざまなタイプの「ファイル」がある
画像、動画、音楽、文書、スライド、表
区別するためにファイルの名前に「拡張子」を付ける
kanaoka.jpg
拡張子
JCPad の使い方 … の前に
17
ファイルをしまう構造
• 1つのエリアにすべてのファイルを置くと混乱する
• 小分けをする
「フォルダ」
フォルダ
• フォルダは入れ物
• フォルダの中にファイルを入れる。
• フォルダに名前を付ける、とわかりやすい。
学年ごと、授業ごと、用途ごと、ファイル種類ごと……等々
2014/4/14 プログラミングA
JCPad の使い方 … の前に
エクスプローラ
• ファイルやフォルダの閲覧などの取り扱いをする
JCPad の使い方 … の前に
2014/4/14 プログラミングA
19
スタートボタンから「コンピュータ」を選択
JCPad の使い方 … の前に
USBメモリを挿す ※初回はしばらく待てばUSBメモリが認識される
JCPad の使い方 … の前に
2014/4/14 プログラミングA
21
ブラウザでWebを見よう
「すべてのプログ ラム」をクリック
「Internet Explorer」 をクリック
JCPad の使い方 … の前に
JCPad の使い方 … の前に
2014/4/14 プログラミングA
23
授業用Webサイトを見よう
ここに
http://www.klab.is.sci.toho-u.ac.jp/classes/
と入力し、Enterキーを押そう
JCPad の使い方 … の前に
JCPad を使おう
25 2014/4/14 プログラミングA
USBメモリの中身を見る
「リムーバブルディスク」
をダブルクリック
JCPad を使おう
JCPadを起動
「jcpad.dat」
をダブルクリック
JCPad を使おう
27 2014/4/14 プログラミングA
ここにプログラムを書いていく
入力してみよう
class HelloWorld{
public static void main(String[] args){
System.out.println(“Hello World!”);
}
}
プログラムを作ったら
29 2014/4/14 プログラミングA
保存(セーブ)
• なによりもまずセーブ
このアイコンをクリック
保存場所
USBメモリの中のフォルダへ 通常は
このままで良い
ファイルの名前を付ける
2014/4/14 プログラミングA
31
「ファイル名」のゾーンに名前を入力
入力が終わったら
「保存」を押す
ファイルを保存する
[新規1] だったものが
HelloWorldに変わっている ことを確認
保存されたファイルをエクスプローラで確認する
2014/4/14 プログラミングA
33
プログラムを作ったら
コンパイル
このアイコンをクリック
コンパイル
2014/4/14 プログラミングA
35
成功すると
失敗すると
エラーメッセージが出る
コンパイルが成功すると
.classファイルが生成される
実行させてみよう
37 2014/4/14 プログラミングA
コンパイル+実行
このアイコンをクリック
実行すると
練習 1
39 2014/4/14 プログラミングA
Hello World!を作ってコンパイル、実行してみよう!
プログラムの中身を見る
クラスの宣言
main()メソッド の開始部分
実行されるメソッド
main()メソッド の終了部分
メソッド
2014/4/14 プログラミングA
41
• 直訳すると方法。
• 1つのプログラムの中に、さまざまなメソッドをつくって、それらを有 機的に結合していって1つのプログラムにしていける
たとえば
「画像を画面に出力して、加工して、ファイルに保存する」という プログラムを作りたい!
画面に出力、というメソッド 画像を加工、というメソッド ファイルに保存、というメソッド
○3つのメソッドを作っておく
メインメソッド
3つのメソッドを順に呼ぶ
クラス名
ルールがある
• “-”などの記号は使えない
• 空白を入れてはいけない
• 推奨されないものもある
• 大文字で始まっていない
• アンダースコア ( _ ) 使う
• 日本語のクラス名
ファイル保存のときはクラス名と同じファイル名
class HelloWorld だったら HelloWorld.java で保存
System.out.println
43 2014/4/14 プログラミングA
「標準出力」に出力する
標準出力? プログラムが作り出したものを出力する出し先 にはいろいろな可能性がある
画面
ボタン
電灯
フォルダ
コンピュータ
出力の指定を特にしない場合に、最初から決まって いるもの、それが標準出力
ここでは「コンソール」と呼ばれる画面
練習 2 :キーボード入力の読み込み
下のプログラムを作ってコンパイル、実行してみよう!
実行結果
2014/4/14 プログラミングA
45
実行結果
実行結果
2014/4/14 プログラミングA
47
メールを送ろう
まずブラウザを開く 「Webメール」を クリック
メールを送ろう
2014/4/14 プログラミングA
49
WebMailシステムにログイン
メールを送ろう
ログイン後の画面
※注:画面は教員用のものなので学生用は細部が異なる可能性があります
メールを送ろう
2014/4/14 プログラミングA
51
メールを作成 「メール作成」を
クリック
メールを送ろう
メール作成画面
メールを送ろう
2014/4/14 プログラミングA
53
メール作成画面
メールを送ろう
ファイルを添付
「参照」を クリック
メールを送ろう
2014/4/14 プログラミングA
55
添付するファイルを選択
メールを送ろう
メールを送ろう
2014/4/14 プログラミングA
57
「メール送信」を クリック
メールを送ろう
送信完了
課題:
ソースプログラムのメール添付と送信
59 2014/4/14 プログラミングA
今日作った2つのプログラムをメールに添付して金岡に送ろう