AWTやSwing, swtとは何か?

 

新しいこと/新しい概念/新しい世界を
言葉で説明するのはなかなか難しいものです。

こんにちは、管理人イガジーです。

Javaをかじり始めると、AWTとかSwingといった単語が出てきて
混乱中の頭をさらに乱してくれます。

AWT もSwing もGUI(画面に枠(窓)やボタンなどの画像を
表示して、操作できるようにしたもの)の部品の集まりです。

AWTの方が高速なのですが、機能的には単純で凝ったものは
ほとんどありません。また、OS毎に見た目がだいぶ異なります。

Swingは、それ自体Javaで書かれていて、高機能ですが重い
と言われています。

どちらが良いとか悪いとかは言えませんが、管理人は主に
AWTを使っています。(単純な方が好きなので)

AWTとSwingの混在は、できなくはありませんが、やると
見栄えのバランスが悪くなるので、Swingを使うなら全て
Swingで書くことになります。

swtという、AWTとSwingの良いところ取りを目指したもの
もありますが、あまり流行っていないと思います。
(Eclipseはswtで作られています。)

最初に始めるときに、AWTにするか、Swingにするか、と
悩むかもしれませんが、大げさに考えずに、まずはAWTで
作ってみる。というのをお勧めします。
(慣れればどちらでも組めるようになりますから)

Swingのクラスは、J で始まるものが多いです。
AWT … Frame, Label, Button, Dialog, …
Swing … JFrame, JLabel, JButton, JDialog, …
という感じです。

AWTで作っておいて、あとで クラス名に J をつけて
でSwing化できると良いのですが、細かい点で違いが
あったりするので、面倒だったりします。
それも経験ですので、やってみると色々発見があります。

恐れずに、まずはやってみて(作ってみて)ください。
案ずるより産むが易しです。