Comments
Description
Transcript
一目でわかる今どきのJava
COVER STORY 1 一目でわかる今どきのJava Javaは今や,非常に広い分野で使われるようになりました。企業のシステム開発 でCOBOLに代わるデファクト・スタンダードの地位を固めつつある一方で, 組み込 大森 敏行 み用途では携帯電話のアプリケーション・プラットフォームとしても普及しています。 ここでは,巨大な技術の集合体となった現在のJavaの姿を概観してみましょう。 NIKKEI SOFTWARE 2005.9 一目でわかるJava *1 2005年6月以前はJava 2 Platform,Micro Edition(J2ME)と呼 ばれていました。 *2 auは,米QUALCOMMが開発 したアプリケーション・プラット フォーム「BREW」への移行を進 めています。auの最新機種では, BREWは動作しますがJavaは動作 しません。 *3 2005年6月以前はJava 2 Platform, Enterprise Edition( J2EE) と呼ばれていました。 *4 Strutsには,制御の中心となる アクション・サーブレットがあら かじめ用意されているため,開発 者がサーブレットを記述する必要 はありません。 *5 2005年6月以前はJava 2 Platform, Standard Edition( J2SE) と呼ばれていました。 当初はWebブラウザで動作するプログラム 普及が進んでいます。技術系の人材派遣会社 を作成する言語として注目されたJavaですが, で あ る パ ソ ナ テ ッ ク (http://www.pasona 現在では小型機器から大型コンピュータまで tech.co.jp/)の加藤直樹取締役は「2004年くら 幅広い場所で使われるようになっています。 いから明らかにJava技術者の求人が急増した」 Javaが使われている分野は,大きく二つに 分かれます。組み込み分野と企業のシステム 開発の分野です(図1) 。 企業のシステム開発には,多くのJava関連 技術が使われています。核となっているのが, 組み込み分野でJavaが最も使われている例 企業システム向けのJava仕様であるJava Enter- と言えば,何といっても携帯電話でしょう。 prise Edition(Java EE)*3です。Java EEを取 ユーザーが携帯電話向けのWebサイトからア り巻く様々なオープンソースや商用のソフト プリケーションをダウンロードし,動作させ ウエアが,企業向けJavaの世界を形成してい る基盤として広く普及しています。 ます(図1右上) 。 携帯電話向けのJavaは,組み込み向けのJava この分野で現在,大きな存在感を持ってい 仕様であるJava Micro Edition(Java ME)*1の るのが,オープンソースのWebアプリケーショ 中のCLDC(Connected Limited Device Config- ン・フレームワークであるStrutsです。Webア uration)という仕様に基づいています。ボー プリケーションの構築技術であるサーブレッ ダフォンとKDDI(au)*2は,CLDCの携帯機 トやJSP(JavaServer Pages)の効率的な組み 器 向 けプロファイルであるMIDP(Mobile 合わせ方を規定しており*4,企業のWebアプ Information Device Profile,ミッドピーと読む) リケーション開発でデファクト・スタンダー に独自の仕様を追加する形でJavaを実装して ドになっています。 います。一方,NTTドコモはCLDCにDoJaとい コンポーネント技術としては,Java Standard う同社独自の仕様を組み合わせることで, 「i Edition(Java SE)*5の技術であるJavaBeansが アプリ」サービスを実現しています。 よく使われています。もともとJavaBeansは, これらの分野におけるJava採用の主な理由 GUI(グラフィカル・ユーザー・インタフェー は,ダウンロード可能なアプリケーションの ス)の部品を提供するために開発された技術 実現や互換性の確保です。携帯電話向けのJava です。現在は汎用的な部品化の技術として利 はメモリーなどの制約が厳しいため,Javaの特 用されています。 徴の一つであるオブジェクト指向を生かした プログラミングはあまりされていません。 52 と語ります。 より大規模なコンポーネント技術としては Enterprise JavaBeans(EJB)があります。名 Javaが活躍しているもう一つの分野が企業 前にJavaBeansと付いていますが,Java SEの のシステム開発の分野です。従来よく使われ JavaBeansと直接の関係はありません。サーブ ていたCOBOLに代わる開発言語として急速に レットやJSPがWebアプリケーションのフロン 図1●今日のJava関連技術の広がり 企業システム開発の世界 軽量Java 軽量コンテナ Webアプリケーション・ フレームワーク iアプリ (NTTドコモ) Struts DoJa Webアプリケーシ ョン構築技術 JSF 携帯電話 CLDC/MIDP ICカード JavaCard Webコンテナ (実行環境) 分散 オブジェクト Spring Framework Tomcat Seasar2 コンポーネント技術 EJB O/Rマッピング・ツール サーブレット セッションBean JSP エンティティBean データベース接続 JDBC 影響 Webサービス JAX-RPC Jini JUnit …技術名 Javaの基本機能 アプレット 開発ツール アプリケーション 配信 Eclipse Java Web Start スクリプト言語 Groovy JavaBeans れません。しかし,どんな最新技術を使うに クエンドのビジネス・ロジックを担当します。 しても,基本がしっかりしていなければいけ EJBは多くの機能を盛り込んだ意欲的な仕 ないことには変わりありません。そこで,本 らい面があります。その反省から,軽量Java JBoss …ソフトウエア名 CLDC:Connected Limited Device Configuration EJB:Enterprise JavaBeans Java EE:Java Enterprise Edition Java ME:Java Micro Edition Java SE:Java Standard Edition JAX-RPC:Java API for XML-Based RPC JSF:JavaServer Faces JSP:JavaServer Pages MIDP:Mobile Information Device Profile O/Rマッピング:Object/Relationalマッピング トエンドを担当するのに対し,EJBは主にバッ 様ですが,それがあだとなり,複雑で使いづ WebLogic (BEA Systems) 一目でわかるJava コンポーネント技術 WebSphere(IBM) 2005.9 Webページ 組み込み アプリケーション・サーバー (実行環境) NIKKEI SOFTWARE テスティング・ フレームワーク Hibernate COVER STORY 1 組み込みの世界 特集の読み方を解説しましょう。 特集2「達人が教えるJavaのココロ」では, と呼 ばれるトレンドが生 まれました。O/R Javaの初心者向けに「Javaのプログラミングは (Object/Relational)マッピング・ ツールの こうあるべし」という作法について解説して Hibernate,軽量コンテナのSpring Framework もらいました。特集3「サーバーサイドJava超 やSeasar2といったオープンソースのソフトウ 入門」では,引き続き初心者向けにサーバー エアが,軽量Javaの世界を構成しています。 サイドについて解説します。順を追って読む 2006年はじめにリリース予定の次期EJBである ことで,サーバーサイドの基礎からStrutsのよ 3.0は,軽量Javaの機能を大幅に取り込んで生 うなWebアプリケーション・フレームワークの まれ変わる予定です。 考え方まで,自然に理解できるでしょう。 まずは基本を押さえること Javaの常識」を用意しました。今さら人に聞 次に箸休めとして,特集4「人に聞けない Javaにはたくさん技術がありますから,何を 学習したらよいのか目移りしてしまうかもし くのはちょっと恥ずかしい素朴な疑問にJava の達人がお答えします。 53