JavaアプレットとJavaアプリケーション、2本同時でいきます!(Java連続集中ネタその1) : つねづね思ふこと

«« MovableTypeで構築されたブログをiPhone対応にするにはどうしたら良い? | JavaアプレットとJavaアプリケーション、2本同時でいきます!(Java連続集中ネタその2) »»

JavaアプレットとJavaアプリケーション、2本同時でいきます!(Java連続集中ネタその1)

2009年2月 9日

このエントリーをはてなブックマークに追加
どうせJavaでデスクトップアプリケーションを組むのなら、JavaアプレットとJavaアプリケーション両対応できるソースで記述する方が、宣伝の面でも制作の面でもどちらにとってもいいじゃないか!ということで試作してみました。


コーヒーカップ

いきなりですが、Javaによるデスクトップアプリケーションの開発について。
「Javaアプレット」と「Javaアプリケーション」同一のコードから両方のアプリケーションを生成できたら面白くないですか?

C++などで作ったWindows専用アプリケーションはあまりにもソフトが乱立していて、せっかく作ったソフトも埋没しがちです。
そんなにハードウェアの限界まで挑戦したり、Windowsならではならない必然性のないソフトであれば、あえてマルチプラットフォームであるJavaでアプリケーションを構築してみるという選択肢は、十分ありだと思います。
なにせ構築したアプリケーションは、MacやLinuxなど他のプラットフォームにも手間をかけずにすぐに提供する事ができますから、Windows一本やりの時よりも幅広く注目されると思います。
目指せヒットアプリケーション!

そんなJavaによるデスクトップアプリケーション制作には、大きく分けて2つの道があります。
Webブラウザから直接Javaで組んだプログラムが実行できるアプレットと、デスクトップで普通に実行できるアプリケーションです。
それぞれについてメリットとデメリットを並べてみました。

★Javaアプレットは・・・
[メリット]
・HTMLからJavaアプレットへリンクされているページをブラウザから開くだけで実行できるので、とにかくお手軽
どんなソフトかすぐに利用者に知ってもらうことができる
・開くだけですぐに実行されますので、インストールの手間が要らない
※Netscape4時代は、アプレットのページを開こうとするとブラウザ自体が固まって、何分も何できずにひたすら待たされるトホホな黒歴史もありましたが、今はそんなことは解決されています

[デメリット]
・ファイルへのアクセスが禁止されていたり、ダウンロード元サーバとしか通信できないなどの制限がある
・オフラインでは実行できない
(関連するHTMLやクラスファイルを全部ダウンロードしてもらった上で、<applet>タグが記述されているHTMLファイルを開けばローカルで動かしてもらうことは可能・・・でも、ちょっと現実的ではないですよね・・・)
・Windowsパソコンでは、SunとMicrosoftとの過去のゴタゴタがあったせいで、初期状態ではJRE(Java実行環境)が入っていません、ですので前もってダウンロードしてもらう必要があります

★Javaアプリケーションは・・・
[メリット]
・普通のPCアプリケーション同様にオフラインでも動作する
launch4jなどと組み合わせてラッピングすれば、Windows / OSX / Linuxマルチプラットフォームなネイティブアプリケーション(=アイコンをダブルクリックして起動させる普通のデスクトップアプリケーション)が、移植の手間なく一つのコードから作ることができるようです
試したことないけど
・アプレットのような機能制限がありません

[デメリット]
・アプレットのようにWebブラウザからすぐ動くということはないので、どうやって訪問者にダウンロード&実行してもらう気にさせるかというところですね
・やっぱりJRE(Java実行環境)が必要
launch4jを使ってラッピングをした際には、 launch4jが導入を促す表示とか出してくれたりまでは面倒をみてくれるようですけど

ということで、同じJavaデスクトップアプリケーションでも構成方法で、いろいろメリットデメリットが生まれてきます。

☆でも、ここでですよ。一本のコードから、もしJavaアプレットとアプリケーション両方の作成できたら・・・

[メリット]
アプレット体験版は、アプリケーション・製品版と同じコードで生成されているから、最新のバージョンをすぐに提供できる!

その体験版を、ソフト紹介のホームページでもちろん展開!
どんなソフトか、すぐに実行できるアプレットで試してもらおう!来訪者の興味をがっちりゲットだぜ!

製品版はJavaアプリケーションだから、アプレットのような制限なく魅力あるアプリケーションとしてお客様に提供できる

製品版はもちろんオフラインでも動作させることができる!

[デメリット]
・Windows環境の皆様にはJRE(Java実行環境)をインストールしてもらう必要がある

ってな感じで、宣伝・制作活動を効率よく行えますから、どうせJavaをやるなら、この2本同時立てでいけるよう制作するのが一番だろう!とか考えた次第です。


ということで実際にやり始めて気がついたのですが、「Javaアプリケーションを作ってみた」「Javaアプレットを作ってみた」という、それぞれどちらかのみをやってみたソースコードはたくさん見受けられます。
しかし、「JavaアプリケーションとJavaアプレットの両方で動くソースを書いてみた」というのは、なかなか見つけられない・・・

でも、両対応のいいソースコード見つけました!
>>マイコミジャーナルの『【コラム】Hello Worldコレクション (7) Java編 - アプリケーションとアプレットのコーディングの違い | エンタープライズ』

そのものズバリじゃないですか!
>>次回『JavaアプレットとJavaアプリケーション、2本同時でいきます!(Java連続集中ネタその2)』では、このソースコードを参考に、「画像をロードして表示&マウスクリックイベントでその画像を表示させる」両対応サンプルコードをご紹介します。
お楽しみに。

明解Java 入門編
明解Java 入門編
posted with amazlet at 09.02.12
柴田 望洋
ソフトバンククリエイティブ
売り上げランキング: 2256
おすすめ度の平均: 4.5
4 どうか、答えを。
2 普通の本という感じです
5 懇切丁寧なJava入門書
4 要点を上手くおさえている
4 良書だと思います

投稿者 kuze : 2009年2月 9日 13:53


■このエントリーに関連した記事

■「実用ソフト&サイト」カテゴリの最新記事

«« MovableTypeで構築されたブログをiPhone対応にするにはどうしたら良い? | JavaアプレットとJavaアプリケーション、2本同時でいきます!(Java連続集中ネタその2) »»


自己紹介
PHPやVBによるコーディングやシステムエンジニアを仕事にしています。
主にiPhoneアプリの紹介やWeb開発などのPC系の話題と、アニメやゲームなどのサブカルな話題を取り扱っています。

[PR]

instagram

カテゴリ

最近のエントリー

最近掲載した画像
  • 映画『ゴジラ-1.0』レビュー(ネタばれあり)
  • Three-up HC-T2206WHで狭い部屋も快適に
  • 「君たちはどう生きるか」は父親を気にするかで評価が別れそう(ネタバレあり)
  • 画像生成AIソフトでしばらく毎日SNSに画像を上げてみたけどネタ出しについて
  • ホットクックを使えば一人で並行して色々作りやすくなるのでオススメ
  • ホットクックを使えば一人で並行して色々作りやすくなるのでオススメ
  • ホットクックを使えば一人で並行して色々作りやすくなるのでオススメ
  • Python3.4向けにつくったAPIが、Python3.6では動かなくなったので直してみた

RSS
更新情報はRSSをご利用下さい