
【改訂版】Eclipseではじめるプログラミング(1)
Eclipse 3.4で超簡単Javaプログラミング基礎入門
株式会社ガリレオ
小山博史
2009/1/27
これからプログラミングを学習したい方、Javaは難しそうでとっつきづらいという方のためのJavaプログラミング超入門連載です。最新のEclipse 3.4とJava 6を使い大幅に情報量を増やした、連載「Eclipseではじめるプログラミング」の改訂版となります
これからプログラミングを学習する人へ
本連載は、これからプログラミングを学習したい方や、Javaは難しそう、Eclipseも初めて、という方のためのJavaプログラミング超入門連載です。2009年1月時点で最新版のJavaとEclipseを使って説明をしています。
本連載は、これからプログラミングについて学びたいと考えている初心者を対象としています。無償で入手できる開発環境「Eclipse」を使い、プログラミングの基礎を学びます。使用するプログラミング言語は、オブジェクト指向プログラミング言語「Java」です。
![]() |
| 図1 Eclipse起動時に表示されるスプラッシュ画面 |
ただし、オブジェクト指向については、詳しい説明をせずに、それ以前のプログラミングの基礎について解説をします。まずは、自分の手を動かして本連載の内容を実践していただき、プログラミングとJava言語に慣れていただくのが、本連載の目的です。OSはWindows Vista Home Editionを想定していますが、Windows XP Home Editionでも可能です。
■ なぜEclipseを使うの?
さて、プログラミングの基礎を学ぶ際になぜEclipseを使うのかというと、次のような理由があります。
- GUI(Graphical User Interface)ツールなので、コマンドプロンプトのコマンドを覚えなくても使える
- 1つのウィンドウ内でプログラミングに必要な作業ができる
- プログラム開発を効率よく行うための支援機能が多い
- 多くのJavaプログラマに人気があり、使っている人が多い
プロになると、コマンドベースのツールを組み合わせてプログラミングをする必要が出てきますが、初心者がプログラミング言語を学ぶに当たっては、そこまでは必要ありません。コマンドベースのツールを使うと、プログラミング以外のところでの知識が多く必要になり、つまずいてしまう場合があります。
しかし、Eclipseを使えばそんな心配はありません。初心者でもプログラミングに集中できるのです。
初心者のための“プログラミング”の手順
最初に、プログラミングの手順について簡単に説明をしておきましょう。
■ そもそもプログラミングって何をするの?
「プログラミング(programming)」とは、「プログラム(program、ある一連の処理をコンピュータへ指示するもの)を作成すること」をいいます。このプログラムを記述(コーディング、coding)する際に使用する専用の言語を「プログラミング言語(programming language)」といいます。プログラミング言語を使って記述されたプログラムを「ソースコード(source code)」と呼び、普通はテキストファイルに保存します。ソースコードが保存されたファイルを「ソースファイル(source file)」と呼びます。
■ コンパイルって何?
本連載で使用する「Java言語」とは、プログラミング言語の一種です。Java言語を使うと、人間にとって比較的分かりやすくプログラムを記述できます。Java言語のように人間が解釈しやすい言語を「高級言語」または「高水準言語」と呼びます。Java言語で書かれたプログラムは、人間にとっては読みやすいのですが、2進数値しか解釈できないコンピュータでは、そのまま実行できません。
コンピュータが実行できるようにするためには、ソースコードに対して「コンパイル(compile)」という処理を行い、「オブジェクトコード(object code)」と呼ばれるものを生成します。このコードは、コンピュータが解釈・実行できるものです(図2)。
![]() |
| 図2 コンパイル |
オブジェクトコードは、コンピュータが解釈・実行できるものです。Javaの場合、オブジェクトコードを「Javaバイトコード(byte code)」と呼びます。オブジェクトコードは、「バイナリファイル(binary file)」として保存されます。Javaの場合、そのファイルを「クラスファイル(class file)」と呼びます。
■ プログラムはどうやって動くの?
実際にこのプログラムを動作させるには、補助記憶装置(通常は、ハードディスク)に保存されているファイルを読み込んで主記憶装置(メインメモリ)へロード(load)して実行させます(図3)。
![]() |
| 図3 プログラムを実行 |
これらプログラムの実行は、普通はハードウェア上で行うのですが、Javaの場合は特殊なことを行っています。難しい理屈はここでは説明しませんが、「ハードウェア上で直接動作するのではなく、ソフトウェアで実現された仮想のハードウェアがあって、その上で動作する」と覚えておいてください(仮想のハードウェアを「Java仮想マシン(Java Virtual Machine)」と呼びます)。Java Virtual Machineは、JavaVMと略されることが多いので、本連載ではJavaVMと表記します。
次ページでは、早速プログラミングするための準備をすることにしましょう。
コラム 「Javaプログラムの実行方法はほかにもイロイロある」 |
| JavaVMは、基本的にJavaバイトコードを逐次実行するソフトウェア(インタプリタ、interpreter)として実装されるため、「実行速度が遅い」というイメージがあります。しかし、最近のJavaVMは、JITコンパイル技術やHotSpot技術などと組み合わされて動作できるため、実行速度の問題は少なくなってきています。 また最近は、Java言語で記述されたプログラムをいろいろな方法で実行できます。「BeanShell」のように、Java言語で記述されたJavaインタプリタを使って実行することもできます。 また、gcjを使って、JavaのソースコードからCPU依存のマシンコードを生成させて実行することもできます。面白いですね。 |
| Index | ||||||||||||
|
||||||||||||
【改訂版】Eclipseではじめるプログラミング バックナンバー 連載インデックスへ»
- 第1回 Eclipse 3.4で超簡単Javaプログラミング基礎入門
- 第2回 Javaで一から理解するプログラムの変数と演算子
- 第3回 プログラミングの醍醐味! Javaで“条件式”を理解する
- 第4回 プログラミングの真骨頂! Javaで“反復処理”を覚える
- 第5回 データ集合を扱うのに便利なJavaの配列と拡張for文
- 第6回 複雑なデータを表現できるクラスやフィールドって?
- 第7回 クラスの振る舞いを表すJavaの“メソッド”とは?
- 第8回 Javaの参照型を文字列操作で理解して文法を総復習
- 第9回 プログラムを「変更」しやすくする“インターフェイス”
- 第10回 Javaの実案件に必須のパッケージとインポートを知る
- 第11回 「static」でクラス共有の変数・メソッドを使いこなせ!
- 第12回 継承やオーバーライドで簡単にクラスを“拡張”しよう
- 第13回 “コンストラクタ”と初期化、本当に理解できてる?
- 第14回 再利用性の高いクラス作成に重要な“アクセス制御”
- 第15回 Javaは「抽象クラス」で実装を上手に再利用できる
- 第16回 “ネスト”した型で始める軽量Javaプログラミング!?
- 第17回 あなたの知らない、4つのマニアックなJava文法
- 第18回 強く型付けされているJavaの理解に必修の“型変換”
- 第19回 キュー構造をJavaで実装してジェネリック型を理解する
- 第20回 拡張for文の真の実力を知り、反復処理を使いこなせ
- 第21回 7ステップで理解するJavaでの列挙型/enum使用法
- 第22回 いまさら聞けない「Javadoc」と「アノテーション」入門
- 第23回 プログラマの宿命! 例外とエラー処理を理解する
- 第24回 Javaの例外処理で知らないと損する7つのテクニック
| Java Solution全記事一覧 |
TechTargetジャパン
- Scalaのパッケージ、アクセス修飾子、オブジェクト継承 (2012/5/22)
インポート、パッケージオブジェクト、抽象クラス/抽象メソッド、オーバーライド、final、シールドクラスなども - 基幹系システムでCloud SQLは使えるか試してみた (2012/5/17)
サンプルとしてMRPシステムを作成して動かし、「再帰呼び出し」などのパフォーマンスを測定して検証してみます - アジャイル管理ツール9選+Pivotal Tracker入門 (2012/5/14)
群雄割拠のアジャイルプロジェクト管理ツールを9つ紹介し、特に注目を集めているPivotal Trackerの基本的な使い方を解説します - サーバサイドJSやJavaでWebアプリが作れるXPages (2012/5/11)
Notes/Dominoの資産をサーバサイドJavaScriptやJavaで操作し、HTMLやJavaScript、CSSをUIにできる技術を紹介
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -




