• 締切済み

JavaとJavaScriptのメリット、デメリット

タイトルのまんまですが詳しく教えていただけると嬉しいです。 あと、ホームページで使う場合どちらのほうが可能性は大きいのでしょうか?

みんなの回答

  • ssr-y6
  • ベストアンサー率71% (5/7)
回答No.5

 ホームページの見栄え的なものでJavaでできてJavaScriptではできないものは、 以下のような画像の作成(描画)、回転、α混合などでしょう。 -----ページHTML----- <html> <head><title>applet</title></head> <body><center> <applet code="applet1" codebase="." width="100" height="100"> </applet> <applet code="applet1" codebase="." width="200" height="200"> </applet><br> <applet code="applet1" codebase="." width="500" height="200"> </applet> </center></body> </html> -----アプレット----- import java.applet.*; import java.awt.*; import java.awt.image.*; import java.awt.geom.*; public class applet1 extends Applet implements Runnable { private BufferedImage B1, B2; private Graphics2D G; private Thread AT; public void init() { int i; double d, e; B1 = new BufferedImage(200, 200, BufferedImage.TYPE_INT_ARGB); G = (Graphics2D)B1.getGraphics(); G.setBackground(Color.WHITE); B2 = new BufferedImage(200, 200, BufferedImage.TYPE_INT_ARGB); Graphics g1 = B2.getGraphics(); for (d=0.0, e=Math.PI*8.0/7.0, i=0; i<7; i++, d+=e) { g1.setColor(new Color(0xFF000000+(i&1)*0xFF+(i&2)*0x7F80+(i&4)*0x3FC000)); g1.drawLine(DTI(Math.cos(d)), DTI(Math.sin(d)), DTI(Math.cos(d + e)), DTI(Math.sin(d + e))); }; g1.dispose(); }; private int DTI(double d) { return((new Double(100.0*d+100.0)).intValue()); }; public void start() { AT = new Thread(this); AT.start(); }; public void paint(Graphics g) { g.drawImage(B1, 0, 0, getWidth(), getHeight(), this); }; public void update(Graphics g) { paint(g); }; public void run() { double d = 0.0, e = Math.PI*0.75; for (int i=0; i>=0; i=(i+1)%0x80, d+=e/15.0) { G.clearRect(0, 0, 200, 200); G.translate(DTI(1.41*Math.cos(d-e)), DTI(1.41*Math.sin(d-e))); G.rotate(d); G.drawImage(B2, 0, 0, 200, 200, this); G.setTransform(new AffineTransform()); G.setColor(new Color(i*0x2020000, true)); G.fillRect(100-i/2, 100-i/2, i, i); repaint(); try { Thread.sleep(100); } catch(Exception ex) { break; }; }; }; }

回答No.4

こんにちは。 1の方がおっしゃってる通り、JAVAとJavaScriptは別物です。  JAVAはC言語のように、コンパイル(より機械が扱いやすい形に変換)して使用するプログラミング言語です。普通のソフトウェア開発をすることもできますし、Web向けの開発もできます。Web向けJAVAには、ブラウザにダウンロードされて動作する「アプレット」と、サーバでCGI的な動作をする「サーブレット」という二つの種類があります。  JavaScriptはJAVAと文法が似ている(と言われているだけの)スクリプト言語で、HTML文書の中に書き込んでそのまま動かすことができます。  そんな前提を踏まえつつ。 > JavaとJavaScriptのメリット、デメリット  JAVAについては、知りたいのはWeb限定だろうと判断したので、Web限定で回答します。あくまで私の主観ですが。 [JavaScript]  ■メリット    ・動きのあるページを作れる    ・サーバの環境に左右されず、JavaScript対応ブラウザならばどこでも動く    ・特殊な開発環境を必要としないので、メモ帳とブラウザで簡単に作れる  ■デメリット    ・対応ブラウザが限られてしまう(携帯では不可、など)    ・ソースコード(記述したスクリプト)の機密保持が難しく、セキュリティが保証されない    ・実行時にやや重い [JAVAアプレット]  ■メリット    ・高度なプログラミングによる、より動的なコンテンツを作れる(ゲームなど)    ・サーバの環境に左右されず、アプレット対応ブラウザなら実行可能    ・ソースコードの解読が困難(素人には不可能)で、それなりに機密性がある    ・コンパイルするため、エラー発見が簡単  ■デメリット    ・ダウンロード時に時間がかかる    ・対応ブラウザが限られる(携帯不可、など)    ・作成には開発環境(無料)を揃える必要がある    ・コンパイルするため、修正を加えるのがやや面倒 [JAVAサーブレット]  ■メリット    ・データベースを用いた双方向コンテンツ(掲示板など)を作れる    ・サーバ側に設置するため、機密保持能力は非常に高い    ・ビジネスで使われるレベルのセキュリティ    ・表示される結果はHTMLなので、ブラウザに左右されない  ■デメリット    ・対応しているレンタルスペースが少なく、自分でサーバ構築する必要が出てくる可能性が高い    ・開発環境(無料)を整えなければならない    ・専門書や解説サイト、扱える人間の少なさから、習得がほかの二つより困難だと思われる ・・・といったところでしょうか。 ちなみにサーブレットは、最近はJSP(JAVA Server Pages)という技術と組み合わせて使われることが多いです。 なお、念のために。「JAVA対応携帯電話」が流行りはじめ、今ではほとんどの携帯電話に「JAVA実行環境」なるものが搭載されているようですが、これはJAVAで作られたソフトウェアを実行できるだけで、現状ではアプレットを動作させることはできないはずです。 > あと、ホームページで使う場合どちらのほうが可能性は大きいのでしょうか?  何の可能性なのかがちょっと分かりかねますが・・。使用する可能性、と言うのであれば、これは完全に好みなのでなんとも言えません。ただJavaScriptのほうが一般的に多く使われていることは間違いないでしょう。一時期はアプレットによるゲームも流行りましたが、最近ではほぼFlashの天下で、アプレット自体あまり見ませんし。サーブレットはネットワークやプログラミングを専門にしている人でもなければ、なかなか扱えないと思います。  使いやすさとしても、プログラミング知識が無くてもJavaScriptはある程度いじれるので、とっかかりになるとおもいます。本格的に取り組めば、JavaScriptでもやたらとアクティブなコンテンツが作れますし。  では、失礼します。

  • Spur
  • ベストアンサー率25% (453/1783)
回答No.3

名前はにていますが、その2つはまったく目的がことなりますので、No.1の方が言われる様に、比較するものではありません。 Javaと比較するのは、C、BASIC、ASSEMBLERなどのプログラム言語です。 JavaScriptと比較するのは、何だろう? perlなどのCGIかな? Javaはプログラムソースを書いてコンパイルして、サーバにuploadし、使う時はダウンロードしてクライアントで動作させたり、サーバ上で動作させ、サーバをコントロールしたりします。 JavaScriptはHTML中にテキストで書き込み、コンパイルは不要です。 HTMLページとしてクライアントに読み込まれ、クライアントのパソコン上で動作しますので、サーバのコントロールなどはできません。 マウスを当てると色が変わったり、吹き出しでコメントが出たりするのはJavaScriptで作ります。 Javaを使うのは、ゲームソフトを開発したり、サーバをリモートアクセスして、何かをするような時くらいだと思います。

  • shota_TK
  • ベストアンサー率43% (967/2200)
回答No.2

JavaScriptはコンパイラが必要ないので,タグを書き込むような感じで HPを作ることができますね。テキストエディタ(メモ帳とか)とブラウザが あれば,プログラムを作ることが可能です。 HPを作るなら,まずJavaScriptでしょうね。参考URLをご覧下さいまし。 機能や速度,セキュリティなどで壁に突き当たったら,Javaを検討して みたらどうでしょうか。

参考URL:
http://www.scollabo.com/banban/java/jvs_002.html,http://homepage2.nifty.com/sozainet/JavaScript/
  • kusukusu
  • ベストアンサー率38% (141/363)
回答No.1

JavaとJavaScriptは名前が似ているだけで、ここでそれぞれのメリット、デメリットを比べるのは無理だと思います。 「鉛筆とボールペンのメリット、デメリット」と言う質問だと答えられるのですが、 「鉛筆とこたつのメリット、デメリット」と聞かれても答えられないのと同じです(^^; > あと、ホームページで使う場合どちらのほうが可能性は大きいのでしょうか 圧倒的にJavaScriptですが、良くWebで見かけるゲームなどはJavaです。

関連するQ&A