第一回 Java言語 04A2029 古賀慎也 はじめに 私は今回、卒業論文テーマとして 「javaアプレットを用いたブラウザ上で動作する ゲームの作成」 を目標に1年間java言語の勉強をしていこうと考えています。 目標 「java言語の理解を深め、1からのプログラミングを経験することで 自分に自信をつける」 内容 「脳力トレーニングゲーム(予定)」 ブラウザ上にダウンロードして遊ぶことを前提に、可能な限り動作 を 軽くするよう心掛ける。 ※今後の学習の進行度合により内容変更する可能性もあります。 今回はその勉強編1回目ということで、まずは基本中の基本 「java言語とはなにか?」を中心にまとめてみました。 むかし いま Java言語とは Java言語は、ハイエンドUNIXワークステーションの代表的なメーカー Sun Microsystems(サンマイクロシステムズ)が開発したオブジェクト指向 プログラミング言語です。 C++を手本にして開発されており、命令や考え方なども多くの類似点があり ます。強力なセキュリティ機構や豊富なネットワーク関連の機能が標準で 搭載されておりネットワーク環境で利用されることを強く意識した仕様になっ ています。 また、Java言語の最大の強みとして汎用性の高さが挙げられます。 仮想マシンを介して実行することにより、Javaで開発されたソフトウェアは 特定のOSやマイクロプロセッサに依存することなく基本的にはどのような プラットフォームでも動作させることができます。 実行形態 Javaアプリケーション ‥ 個々のコンピュータで実行されるJavaプログラム。携帯電話のプラッ トフォームとしてもよく利用される Javaアプレット ‥‥‥ ネットワーク上に置かれウェブブラウザ上で実行できるJavaプログラ ム。ワンクリックで実行できるため、その動作にはサンドボックス機構 のもとで厳しい制限が加えられている。 Javaサーブレット ‥‥ Webサーバー上で動作するJavaプログラム。PerlなどによるCGIに 比べ、サーバー負荷が低いなどのメリットがある。 JSP‥‥‥‥‥‥‥‥ HTML内に記述するJavaプログラム。サーバー側で解釈して動的に Webページを作り出す。ブラウザ側で実行するスクリプトではなく、 javaサーブレットの機能を補完するもの。 Java Web Start ‥‥ Javaアプリケーションを簡単に配備し実行する仕組み。拡張子が jnlpとなっているファイルをウェブブラウザなどでワンクリックしただ けで自動ダウンロード、自動インストール、最新バージョンがあるか をネット上で自動チェックしあれば自動アップデートしてから実行する Javaアプレットのように実行時にブラウザを必要とすることはない。 実行手順 ソースコード(.java) ↓ コンパイル ↓ バイトコード(.class) Java仮想マシン ↓ Windows java仮想マシン ↓ Linux java仮想マシン ↓ Macintosh ネットワーク機能 Javaでは充実したライブラリ(汎用性の高いプログラムをまとめ たもの)によりコンピュータ・ネットワークを使うソフトウェアを、 効率良く開発することができる。 Javaの初期のバージョンから、IPv4のライブラリを備えており ネットワークでソケット通信を行うソフトウェアを簡単に実装する ことができた。 分散オブジェクト環境のソフトウェアの開発も早い時期からでき るようになり、Java RMIもしくはCORBA(コルバ)の分散オブ ジェクト技術を標準で使うことができる。近年では、標準、拡張 その他のライブラリにより、FTPやHTTPのほか、Ipv6など多く のネットワークプロトコルを高水準で扱えるようになっている。 Java言語の長所 ・開発環境がタダで手に入る → ・OSやハードウェアに依存しない高い汎用性 ・Javaアプレットとしてホームページ上で実行できる 噴水 3D波紋 ブロック崩し ・構文は CやC++ から多くを引き継いでいる ためC言語経験者がなじみやすい ・ネットワーク技術と相性がいい Java言語の短所 ・他のプログラミング言語と比べて動作が遅い (最近はコンピュータの性能向上により、解消 されつつある) ・仮想マシン(Java Virtual Machine)がイン ストールされていないコンピュータでは実行で きない ・汎用性を重視したため、器用さでは他の言語 に劣る JavaとC++ C++は、オブジェクト指向型言語でないC言語に、オブジェクト指向型のプログラミン グが出来るような機能を追加したものです。 Javaは、それらの優れた点だけを引き継ぎ、オブジェクト指向に不要なものを削った ものです。 そのためにJavaはオブジェクト指向プログラミングしかできません。 そのような理由から、JavaはC言語やC++と見た目や文法が似ています。 JavaはC++と比較すると、ほとんど誰も利用しないような機能を取り除いてシンプル にしたうえで、さらにメモリ管理を簡単にしたという特徴があります。 そのために、JavaはC++--と表現されることもあります。 これは、C++から必要がなかったり、一般のプログラマには難しすぎるという機能 や考え方を取り除いてマイナスしたものがJavaであることを表現しています。 JavaとJavaScriptの関係 javaとよく混同されるものにJavaScriptというものが あります。 お互い「java」という名称がついているため、関係性 があるように見えますが実は全く違うものです。 JavaはSun Microsystems社によって作られました がJavaScriptはNetscape社がブラウザで動くスクリ プトとして作成したものです。 記述の仕方はよく似ていますが、Javaとの直接の 互換性もありません。 Javaアプレット Javaアプレットとはネットワークを通じてWebブラウザにダウンロードされ、ブラウザ のウィンドウに埋め込まれて実行されるJavaプログラムのことです。 Web ページの一部として自動的に読み込まれて動作するため、Javaアプレットを 悪用してユーザのコンピュータに被害を与えることのないようにユーザのハード ディスクの内容を読み書きしたり、自分が呼び出されたWebサーバ以外のコン ピュータに接続したり、他のアプリケーションソフトを起動したりすることはできな いようになっています。 このJavaアプレットを使うことにより、HTMLで記述された静的なWebページでは 実現できない動的な表現が可能となります。 しかし現在は、同じような動作ができなおかつ軽いAdobe Flashがメジャーに成り つつあり、javaアプレットの使用率は低下してきています。 参考 参考書 Java言語入門(アプレット、AWT、先進的機構) /プレンティスホール出版 やさしいjava(第3版) /高橋 麻奈 著 ・参考サイト Wikipedia - http://ja.wikipedia.org/wiki/ IT用語辞典 - http://e-words.jp/ サンマイクロシステムズ - http://jp.sun.com/ その他
© Copyright 2024 ExpyDoc