Twitter クライアント開発に学ぶ Java GUI (Swing) プログラミング

page:1/X
author:nobuoka
date:2009.09.09

目次

はじめに

この文書は、Java の基本的な構文の勉強を終えた人が GUI プログラミングを行う際に参考になるように書いた、GUI プログラミングのチュートリアルです。

GUI プログラミングとは

Java でプログラムを作成するとき、最初はターミナル (Windows だと MS-DOS など) 上で、文字列を表示する、ということをしたと思います。 そのようなプログラムを CUI (Character-based User Interface) プログラムといいます。

一方で、Windows や Mac OS では (さらに最近の Unix 互換 OS でも) マウスを使った操作を行うことが一般的です。 ボタンがあって、そのボタンをクリックすると何かが起こる、というように、文字列ではなく視覚的な (Graphical) インターフェイスを持っています。 そのようなプログラムを GUI (Graphical User Interface) プログラムといいます。

GUI プログラムを作ることを、GUI プログラミングと呼んでいます。

Java における GUI プログラミング

C/C++ などで GUI プログラムを書こうとすると、OS の機能を使うことになるため簡単ではないという問題があります。 当然 Windows 用の GUI プログラムと Linux 用のプログラムは全く違うものになります。

一方 Java の場合は GUI 関係の機能が Java に組み込まれており、(C/C++ などと比べて) 簡単に GUI プログラムを書くことができます。 さらに、OS ごとにプログラムを書き換えなくて良いという利点もあります。 Java で GUI プログラムを作るためのツールキットは、以下に挙げるように 3 種類もあります。 AWT は古く、SWT は標準ではないため、一般的には Swing が使われているのではないかと思います。 この文書内でも Java GUI = Swing として扱うこととします。

AWT (Abstract Window Toolkit)
Java 独自の GUI ツールキット。 Java プログラム用の GUI を提供する標準 API の一部である。
Swing
AWT を拡張した GUI ツールキット。
SWT (Standard Widget Toolkit)
IBM が Eclipse のために開発した GUI ツールキット。 OS 固有の API を Java から使用するという手法を採っており、AWT や Swing と比べて軽快であると言われる。 Java の標準 API ではない。

この文書の目的

Java の基本を覚えた人 (テキストエディタでプログラムを書いて、ターミナル上でそのプログラムを実行できる人) のために、Java 開発環境の構築から説明を始め、外部ライブラリの使用方法なども含めて GUI (Swing) プログラムを作成する方法をチュートリアル形式で説明することを目的とします。

なお、この文書はチュートリアル形式で進めていきます。 Twitter という web サービスがあるのですが、その web サービスの API を Java で操作する、ということを行いますので、Twitter のアカウントを持っていないという方は取得しておいてください。 Twitter アカウントの取得は下記ページより。

対象読者

目的でも述べましたように、対象とする読者は、

  • Java に関する基本的な知識がある
  • OS の設定など PC に関してある程度知識がある

という人です。

Google Adsense!!