SJC-A対策講座
Javaアソシエイツ



目次

 1ページ目
 第0話 SJC-A試験の概要
 第1話 3つのJavaプラットフォーム
 第2話 EJB

 関連ページ
 Java講座
 OCJ-A対策講座

OracleによるSun Microsystemsの買収の影響で、Sun認定Javaアソシエイツ(SJC-A) の資格名はOracle認定Javaアソシエイツ(OCJ-A)に変更されました。 それに伴い受験料も変更されました。

資格名の変更に伴いまして、新サイトOCJ-A対策講座を立ち上げました。
今後はそちらのサイトの更新を重点的におこないます(2011/03/28)


SJC-A試験の概要


SJC-Aとは「Sun認定Javaアソシエイツ」という資格試験の名称です。

その名の通りSun microsystems社の認定資格の一つで、他にもSJC-P、SJC-WC等全部で8つのJava関連資格 が用意されていますが、SJC-AはJavaテクノロジーの一般知識を問われる基本資格となっています。

既にJavaプログラマーである方にとっては特に試験対策無しでも一発合格できるかもしれません。 SJC-Aは初級技術者やプログラマー以外のマネージャーやコンサルタント、営業職の方向けの資格試験ですので、 プログラマーはSJC-Aは飛ばしてSJC-P(Sun認定Javaプログラマ)試験に挑まれると宜しいかと思います。

なお、SJC-Aの試験範囲は以下のリンク先よりご確認ください。

【SJC-A】Sun認定 Java アソシエイツ 主な出題範囲

受験チケットは「SJC-A:Sun認定 Java アソシエイツ」のリンク先よりゲットしてください。

Sun認定資格

では、SJC-A対策講座、はじまりはじまり〜〜!


3つのJavaプラットフォーム


まず、「プラットフォーム」という言葉ですけど、 Wikipedia によると次のようにあります。

プラットフォーム(英:platform)とは、そのまわりの部分よりも高くなった水平で平らな場所 (台地)をさす英語.現在では、意味が拡大解釈され、階層構造全体の中の下側(下部、底部、基本部分) に位置するものを指し示す場合にも転用されるようになっている。


「そのアプリのプラットフォームって何?」のような場合のプラットフォームはWindowsやUnixなどのOSを指す言葉ですが、 Javaにおいてプラットフォームという言葉を使う場合、JavaSE・JavaEE・JavaEMの3つを指す言葉となります。

Javaでは、開発するアプリケーション(プログラム)の種類に応じて以下の異なる基盤(プラットフォーム)を提供しています。


・JavaSE

JavaSEは「Java Platform, Standard Edition」の略です。これは、残る2つのJavaEEとJavaMEの共通基盤でもあり、 全てのJavaプログラムの基本機能を提供するプラットフォームです。一般的なJava入門本に書かれているJavaの技術は殆どがこの JavaSEに関する解説なのです。

JavaSEでは、プログラムの開発や実行のための様々なライブラリを提供しています。

例えば、基本機能である「Lang & Util」、データベースを利用するための「JDBC」などです。JavaSEの提供する機能・ライブラリは かなり範囲が広く、全てを理解するのは容易ではありませんが、SJC-Aで問われる内容はその一部のみですのでご安心を!

JavaSEは、一般ユーザーであるか開発者であるかで、用意すべき環境が異なります。一般ユーザーに必要なのはJavaアプリケーションを 動かすための実行環境であり、Java実行環境はJRE(Java Runtime Environment)と呼ばれています。JREはJavaVM(Java Virtual Machine)や 各種ライブラリをまとめたものです。通常メーカー製のパソコンを購入した場合は既にインストール済みですが、 最新版のJREはSun microsystemsのホームページよりダウンロードすることが可能です。

※なお、JavaVMについてはこちらで軽く説明してます。

開発者の場合は開発環境であるJDK(Java Development Kit)を用意する必要があります。JDKには実行環境であるJREの他、 ソースコードをコンパイルするためのjavacなども含まれています。


・JavaEE

JavaSEは「Java Platform, Enterprise Edition」の略です。企業向け大規模システムのためのプラットフォームです。

JavaEEでは、サーバーサイドの技術として、サーブレット・JSP・EJBを提供します。SJC-Aではこれらの技術に関する 概要を問うものが出題されます。


・JavaME

JavaMEは、「Java Platform, Micro Edition」の略です。携帯やPDA向けのプラットフォームになります。

JavaMEでは開発対象となるデバイスに応じて、2つのコンフィギュレーション(設定)を用意しており、 それぞれCDC(Connected Device Configuration)CLDC(Connected Limited Device Configuration)と呼びます。

携帯アプリなど規模の小さいものはCLDCを利用し、カーナビのような規模の大きいものになりますとCDCを利用します。


EJB


EJB(Enterprise JavaBeans)とは、分散環境において再利用性の高いコンポーネントを作成するための仕様のことです。

再利用とくるとJavaBeansが連想されるけど、JavaBeansが単一サーバー内で利用されることを前提にしている のに対し、EJBはネットワーク分散を前提にしてます。どっちもビジネスロジックを実装します。

EJBを利用するためにはEJBコンテナと呼ばれるものが必要となります。EJBコンテナはEJBを動作させるために 必要な実行環境ですが、これはJavaEE準拠のアプリケーションサーバーに標準で搭載されています。

専門用語テンコ盛りで大変ですが、アプリケーションサーバーとは、ビジネスロジックを実装した アプリケーションを実行することを専門とするサーバーまたはミドルウェアを指します。 各ベンダーから様々な製品が出てますが、有名どころではWebSphereやWebLogic、JBossなどかな。ちなみに筆者は JBossしか存じません。 詳しくは Wikipedia で。

EJBの仕様に基づいて作成されたコンポーネントは、Enterprise BeanとかEJBコンポーネントと呼ばれたりします。

ちなみに、現在はEJB3.0の時代となりましたが、筆者が勉強しておりましたEJB3.0以前はすんごいヤな仕様でした。 とにかく煩雑だったのです。ネット上でもその複雑極まる仕様に「EJBはクソ」との不満が大量噴出しておりましたし、 Spring Frameworkの開発者に「従来のEJBは存在自体が間違いだった」 と言わしめる程でした。EJB3.0ではユーザーの要望が多く取り入れられ使いやすいものに生まれ変わりましたので、 これから学習する人がうらやましい(・∀・)な〜〜





SJC-A対策講座Topへ