JAVAのアプレットとスクリプトの違いを教えてください。
JAVAのアプレットはスクリプトをコンパイルしてバイナリ-に変えたものと理解していいんでしょうか。何が違うのでしょうか。
またサバープレットでしたっけ(サーバーなんとか)、あれはどう違うのでしょうか。
それから、JAVAプログラムをWEBに組むための開発環境を整えるにはどのようなものが必要なのでしょうか、それはフリーなんですか?
よく理解していないので変な質問ですみません。
こちら、UNIX、C,PERL、FORTRAN等はかなり詳しいと思っているけどWEB開発には縁のない人間です。
No.1
- 回答日時:
まずJavaScriptとJavaのスクリプトの違いについて。
JavaScript:HTML内に埋め込んでブラウザの制御を行うJavaに似た文法のスクリプト言語
Javaのスクリプト:Javaのソースプログラムをそう呼ぶことがある。
全く違うものなので御注意ください。
JavaでWeb系のプログラムと言うとアプレット、サーブレット、JSP(サーブレットと連動)ですね。
(もちろん普通のアプリケーションは作れます)
開発環境としてはエディタとJDKだけで可能です。
ただ、サーブレットやJSPの場合テスト環境が必要なのでサーバを用意した方が良いでしょう。
参考URL:http://java.sun.com/products/jdk/1.2/ja/
No.2
- 回答日時:
部分的な答えになりますが。
JAVAにはJAVAアプリケーションとJAVAアプレットが有ります。JavasucriptはJAVAに似ていてもJAVAとは別物とお考え下さい。
JAVAアプレットはWEB(ブラウザー)に寄生する形で実行できますので入出力や環境のことを余り考えなくてよいので容易にプログラミングできます。
一方JAVAアプリケーションはWEBの力は全く借りず、CやFORTRANのように独立環境で動きます。
JAVAの開発環境は色々有りますがJDK(JAVA Development Kit)のMS-DOS版はSUN-Microsystemsから無償でダウンロードできます。有償の優れものにはJBuilderなどがあります。
ありがとうございます。
よく分かりました。JAVAアプレットは分かりますが、JAVAでアプリケーションを作るメリットってあるんでしょうか。その場合Cとかとまったく同じわけですよね。
No.3
- 回答日時:
JavaアプレットとJavaScriptの関係は、いわゆる無関係です。
似ているのは名前だけだと言ってもよいかもしれません。
基本的な違いについては、実際に本を読んだり、調査すれば
簡単に分かるだろうと思います。
たとえば...
Javaを開発したのは Sun Microsystemsですが、JavaScriptは
Netscapeです。JavaScriptの類似品(?)にMicrosoftの
JScriptやVBScriptがあります。
Java Appletは、Javaで書かれた「小さなアプリケーション」で
HTMLに埋め込むことができます。プログラムはクライアントに
ダウンロードされ、クライアントで実行されます。この際、
JavaVM(Javaヴァーチャルマシーン)が立ち上がって、ダウン
ロードされたアプレットのコードを実行するわけですね。
JavaScriptもHTMLに埋め込まれて、クライアントにダウンロード
され、クライアントで実行されます。あれ? じゃ、アプレット
と同じ?? でも、JavaScriptではJavaVMは要らないですね。
また、文法的な面でも違います。
どちらも、オブジェクト指向を謳っていますが、JavaScriptの
クラスは継承することができない、など、簡易なスクリプトと
しての簡便さと宿命をもっています。
いっぽうJavaAppletも、ダウンロードに時間がかかる、VMがなけ
れば実行できないなど、やはり短所をもっているわけです。
...
長くなってしまったので、サーブレットについては(今回は?)
割愛します。
では。
ありがとうございます。
JavaScriptを開発したのがNetscapeと言うのはしりませんでした。
JavaVMと言うのがよく分からなかったんですが、Javaを実行させるプロセスということなんでしょうか。
No.4ベストアンサー
- 回答日時:
ごめんなさい。
アプレット、サーブレットについての解答を忘れていました。アプレット;HTMLから呼び出すことが可能でWebブラウザ上での動作を想定した小さなアプリケーション
サーブレット:クライアントアプリケーションがWebブラウザであればJavaで書いたCGIのようなイメージとなる。
クライアントアプリケーションはWebブラウザと限定されているわけではないのでクライアントのサポートする範囲で動的なサービスを提供する。
例えばftpサーブレットを作成することは可能。
Webサービスに限定した場合、どちらも「動的なページの実現方法」です。
アプレットはクライアントサイドで動作するためユーザに閉じた処理に限定されます。
クライアントサイドでは他のユーザの存在を認識する手段が無く、他のユーザの残したデータをさんそうする手段もありません。
逆に、クライアントサイドであることから他のユーザに迷惑をかけることが無いので少々重たい処理も実行可能です。
サーブレットはサーバーサイドで動作し、サーブレットを起動するユーザの数だけ並行して動作します。
結果、サーブレットで重たい処理を行えばずべてのユーザのパフォーマンスが落ちることになります。
サーバーサイドであることはサーブレットを起動しているユーザ以外のデータや接続中の他のユーザの存在を知ることが可能です。
まとめると
アプレット
ユーザに閉じた機能の実現に限定
グラフィックなどの少々重い事をしても良い
サーブレット
ユーザ間に開いた機能が実現可能
重たい処理が敬遠すべき
No.5
- 回答日時:
Java関連のサイトはたくさんありますが、
下記のサイトは充実しています。
またJavaFAQも老舗のサイトです。
参考にしてください。
<インターネット協会Java部会>
http://www.iaj.or.jp/bukai/java/
<Javaコンソーシアム>
http://www.javacons.gr.jp/
<ジャストシステムのJavaページ>
http://cafe.justsystem.co.jp/
<JavaFAQ>
http://www.hatena.org/java/
No.6
- 回答日時:
「サーブレット=Javaで書いたCGIみたいなもの」は正しくありません。
Webシステムにおいてはおおむね正しいのですが、サーブレットの適用範囲はWebシステムに限りません。
御質問がWebシステムに特化されているのでこう言う説明をしています。
サーブレットについては検索すれば様々な適用事例が見つかると思います。
がんばってください。
No.7
- 回答日時:
#2のymmasayanです。
CがあるのにJAVAアプリケーションがなぜ必要かと言う事ですがWebの規制を受けずに自由に存在できる事が重要とお考え下さい。言いかえれば、JAVA一本槍でWeb対応も独立プログラムも組めると言うことが最大のメリットです。JAVAがオブジェクト指向であることを考えれば、オブジェクト指向をWeb連携でしか使えないと言うことにすれば片手落ちだと言ってもいいでしょう。JAVAはポインタがないだけでCライクですからCはそのうちJAVAに追い払われるかも知れません。(冗談です)
No.8
- 回答日時:
VMについて補足します。
JAVAは通常の高級言語と違って、コンパイラー+インタープリタの形で動きます。まずJAVAコンパイラーで中間言語にコンパイルします。これを各メーカーの機種ごとに持っている「インタープリタ」に食わせます。
この事により、メーカー、機種を問わず実行可能であると言うことができます。
この「インタプリタ+ハード」の事をVM(仮想マシン:Virtual Machine)と言います。中間言語を通信回線で送ればリモート実行も簡単にできます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
インテル マネジメント エンジ...
-
brotherのマシニングセンタとP...
-
マルチTIFを一枚のTIFに...
-
GPIB制御
-
acrotray.exe エラー
-
ExcelVBAとVisual Basic
-
Bluestacks内でダウンロードし...
-
65536は2の何乗なのでしょうか?
-
VBAで仕様書は書きますか?
-
0除算して、落ちるプログラムと...
-
正しい五十音順について
-
VBAの再計算が反映されない件に...
-
未使用の変数を一括検索する方法
-
VBAでユーザーフォームが自動的...
-
PICマイコンのコピー(クローン...
-
graph.hがincludeできない
-
VBAにてメール作成した際、一部...
-
XnViewにwebpを「いつも開く」...
-
Excelで4096点以上のFFTの方法
-
初心者はIDE使わないほうが良く...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Bluestacks内でダウンロードし...
-
バッチファイルでUSB挿入時に実行
-
アプリのプログラムを見るには...
-
GPIB制御
-
インテル マネジメント エンジ...
-
iTunesがノートンにブロックさ...
-
brotherのマシニングセンタとP...
-
例外アプリケーションエラーを...
-
自分の声が遅れて聞こえてくる...
-
マルチTIFを一枚のTIFに...
-
BIOSとドライバの違い。
-
Socket通信だけでSQL Serverに...
-
InstallShield ってプログラム...
-
マルチコアCPUをシングル化
-
MpcStarのアンインストール
-
みつも郎でエラーが出るのですが…
-
「フラグをたてる」とは?
-
BIOS.binをバイナリエディタで...
-
PVを稼ぐための自動リロードの...
-
cgiをひらくアプリケーション
おすすめ情報