26
東東東東東東 ESCLab. Java 東東東東東東東東東東東東東東東 ププププププププ プ 2 プ ププ ププププ

Java に よる統合開発環境を用いた開発

  • Upload
    chaim

  • View
    57

  • Download
    3

Embed Size (px)

DESCRIPTION

プログラミング論 第 2 回 担当: 山口崇志. Java に よる統合開発環境を用いた開発. Java の特徴. Java 言語 (1996 ~ ) オブジェクト指向プログラミング言語 プラットフォームに依存しない開発 記述形式: C 言語ベース オブジェクトモデル: Smalltalk Java プラットフォーム Java 言語で書かれたプログラムの実行・開発環境 インタプリタ方式とコンパイラ方式併用. Java プラットフォーム と開発実行フロー. Java Development Kit. Source Code. Java Language. - PowerPoint PPT Presentation

Citation preview

東京情報大学 ESCLab.

Java による統合開発環境を用いた開発

プログラミング論 第 2 回 担当:山口崇志

東京情報大学 ESCLab.

Java の特徴

Java 言語 (1996 ~ ) オブジェクト指向プログラミング言語 プラットフォームに依存しない開発 記述形式: C 言語ベース オブジェクトモデル: Smalltalk

Java プラットフォーム Java 言語で書かれたプログラムの実行・開発環境 インタプリタ方式とコンパイラ方式併用

東京情報大学 ESCLab.

Java プラットフォームと開発実行フロー

Java Development Kit

Java Runtime Environment

Java Virtual Machine

Operating System

Java API LibraryDeployment Technology

Development Tools

Hardware

Java Language Source Code

Native Code

Compile

JIT CompileJust In Time

.java

Byte Code.class

東京情報大学 ESCLab.

統合開発環境( IDE: Integrated Development Environment )

開発に必要な複数の機能を統合的に提供するツール

主な機能 コード作成支援 GUI エディタ ビルドシステム バージョン管理 デバッグ テスト

ソースコーディング

コンパイル

デバッグ

開発の主要なフロー

東京情報大学 ESCLab.

Java 開発向け IDE Eclipse IBM が開発し後に Open Source に 拡張性が非常に高い 複数言語へ対応 Eclipse と Plug-in の開発が分離しており本体バージョ

ンアップ時に不具合を生じ易い Java の GUI エディタは Plug-in で実装

Netbeans Sun Microsystems (現 Oracle )が中心に開発 Java との親和性が非常に高い GUI エディタを標準で持つ 他言語への対応がやや弱い

東京情報大学 ESCLab.

Eclipse Open Source の統合開発環境

複数言語のサポート Java, C++, PHP, Java Script, tex & etc.

plug-in による機能拡張 WTP (Web Tools Platform) UML ADT (Android Development Tools)

開発に用い易いインストール方法 インストール自体はダウンロードしたものを解凍するだ

け フォルダを変えることで独立した開発環境を構築可能

東京情報大学 ESCLab.

ワークスペースとプロジェクト

ワークスペース プロジェクトの情報を保存 プロジェクト毎にフォルダ

が作成される

プロジェクト ソースコード管理 リソース管理 ライブラリ管理

プロジェクト Aワークスペース

プロジェクト B

Package b

Package aソースコード 1

ソースコード 2

プロジェクト毎に開発環境 が 異 な る 場 合 が 多 い為 、 プ ロ ジ ェ ク ト 毎 にeclipse 本体とワークスペースを用意する

東京情報大学 ESCLab.

プロジェクトの作成と管理

1 .

東京情報大学 ESCLab.

プロジェクトの新規作成

1 .

2 .

東京情報大学 ESCLab.

新規プロジェクトの設定

1 . 入力

2. 選択&確認

3.

東京情報大学 ESCLab.

クラスの作成

東京情報大学 ESCLab.

新規クラスの設定

1 . 入力

2.

東京情報大学 ESCLab.

ソースコードの編集( main メソッド自動生成)

自動生成機能を使う・ main メソッドの作成「 m 」 を 入 力 し てCtrl+Space

東京情報大学 ESCLab.

ソースコードの編集(入力補間)

1. 「 sy 」を入力して Ctrl+Space2. 「 .o 」を入力して Ctrl+Space3. 「 .p 」を入力してリストから println を選択4. println の「引数」を入力5. ; を入力

東京情報大学 ESCLab.

ソースコードの自動フォーマットを使う

自動フォーマット機能Ctrl+Shift+F

東京情報大学 ESCLab.

実行

東京情報大学 ESCLab.

デバッグ(ブレークポイントの設定)

1 . 修正

2 . ダブルクリック

3.

東京情報大学 ESCLab.

デバッグ

パースペクティブ切り替え

ステップ実行の操作変数の中身確認

デバックの基本・ステップ実行でフローをチェック・変数の中身をチェック

東京情報大学 ESCLab.

コンストラクタ作成

1 . 追加

2.

東京情報大学 ESCLab.

コンストラクタ作成

4.

3.

東京情報大学 ESCLab.

メソッド作成

1. 「 show 」を入力2. Ctrl+Space3. Enter

編集

東京情報大学 ESCLab.

リファクタリング( MVC を分ける例)

HelloModelString prefixString postfixString name

HelloControlerHelloModel dataString getHello()void setName(String)

MVC モデル・ Model (データ)・ View (表示)・ Control (操作)

これらを分離すると UIの拡張やデータベース基盤の変更等が行い易い。

HelloViewerHelloControler controlervoid Show(String)void main(String[])

東京情報大学 ESCLab.

MVC を分けた HelloWorld の例

HelloModelString prefixString postfixString name

HelloControlerHelloModel dataString getHello()void setName(String)

HelloViewerHelloControler controlervoid Show(String)void main(String[])

東京情報大学 ESCLab.

リファクタリング(クラスの抽出)

東京情報大学 ESCLab.

リファクタリング(名前の変更)

1. 変数やクラスにカーソルを合わせる2.Shift+Alt+R

東京情報大学 ESCLab.

通常課題

通常課題: HelloViewer クラスを完成させよ getName メソッドで Model の name を設定する 標準出力に getHello の戻り値を出力する

追加課題: Window Builder を導入しサンプル画像のような GUI アプリケーションを作成せよ

1. メニュー [ ヘルプ ]⇒[ 新規ソフトウェアのインストール ]⇒[ 追加 ] ボタン ロケーション http://download.eclipse.org/windowbuilder/WB/release/

R201302221200/3.6/2. すべてチェックして次へ3. Eclipse 再起動

発展課題: MVC モデルによる HelloWorld プログラムの View を GUI に変更せよ。また「 World 」の部分を GUI から変更できるようにせよ。

サンプル画像