Javaの資格で有名なのは、Oracle社が提供している資格だ。Javaの資格は数多く存在するが、ここではOracle社が提供している資格についてを紹介する。
目次
OracleのJava資格
Oracle(オラクル)のJava資格は、オラクル社が提供する製品ごとに定めた資格である。さらに、Javaの製品のバージョンごとに資格が異なる。Javaの製品と言えば大きく分けて3つある。
- Java SE 8(Java Standard Edition)
- Java ME 8(Java Platform, Micro Edition)
- Java EE 6(Enterprise Edition)
3つの製品ごとに資格が分かれている。また、オラクルの資格はひとつの製品に対する資格を5つに分けている。この中でより難易度の高い資格を取れば、Javaの業界の中で認められた高度なスキルを持った技術者として認定されるのだ。しかし、すべての製品に5つの資格がそれぞれあるわけではない。Java MEには現在のところ資格はない。
では、それぞれの製品ごとにどのような資格が設定されているのかみてみよう。
Java SE - Oracle Certified Java Programmerの資格
Oracle Certified Java Programmerの資格はプログラマ向けの資格である。そして、前セクションで紹介した5つの資格の中のうち3つがこの製品のための資格として用意されている。その3つとはブロンズ、シルバー、ゴールドである。
ブロンズとシルバーの認定を受けるには前提となる資格はないが、ゴールドの認定得るためにはシルバーの資格を持っている必要がある。
Java SE 8 Bronze(ブロンズ)
Java SEブロンズの資格に対するオラクルの正式な呼び名は「Oracle Certified Java Programmer, Bronze SE 7 / 8」である。
この認定資格は、Javaプログラミング言語でプログラムを書いて動かすことが初めて、という入門者向けの資格である。この認定試験に合格するならば、Java言語を使用したオブジェクト指向プログラミングの基本的な知識を持っていると認定される。
この資格は、Java Bronze SE 7 / 8の試験に合格することにより与えられる。また、ひとつ前のバージョンOracle Certified Java Programmer, Bronze SE 7 の資格を持っていれば、自動的に資格を得ることができる。
試験項目は、下表の通りである。項目については、オラクルのホームページに掲載されているが、ここではさらに説明を加えてわかり易く紹介する。
試験項目 |
必要とされるスキル |
Java言語のプログラムの流れ |
l Javaプログラムを書いてコンピュータの上で実行させる方法について説明できる。 l Javaテクノロジ、つまりJavaの開発環境や実行環境について、その仕組みや特徴について説明できる。 l Javaのプラットフォームとそのエディションの特徴について説明できる。 |
データ宣言と使用 |
l Java言語のデータ型は、大きく分けてプリミティブ型とオブジェクト参照型の二つがある。これらについて説明できる。 l 変数の宣言の仕方や初期値の代入の仕方を知っている。さらに、変数の値の大きさについても知っている。 l 一次元配列を作って使用することができる。 l コマンドラインからJavaプログラムに引数を使って値を渡すことができる。 |
演算子と分岐文 |
l 足し算や掛け算などを行うための演算とその優先順位について理解し使うことができる。 l 分岐文としてif、if else、switchついて理解し使うことができる。 |
ループ文 |
l 3つのループ、whileループ、拡張を含むforループ、do whileループを使って繰り返し処理のプログラムができる。 l ループのネスティング、つまりループの中にループを書く方法を理解している。 |
オブジェクト指向コンセプト |
l Javaプログラミング言語は、オブジェクト指向というコンセプト(概念)に基づいて作られている。そのオブジェクト指向の3つの概念について説明できる。 l クラスの概念:具象クラス、抽象クラス、インタフェースについて説明できる。 l カプセル化の概念:カプセル化とカプセル化によるデータ隠蔽について説明できる。 l ポリモフィズムの概念;ポリモフィズムとは何かを説明できる。 |
クラス定義とオブジェクトの生成、使用 |
l オブジェクト指向は、クラスからオブジェクトを作り、そのオブジェクトが会話しあって、ある役割を果たす仕組みである。 l クラスを定義し、そのクラスからオブジェクトを作り、そのオブジェクト使うことができる。 l メソッドのオーバーロードの仕組みを理解しており、それを使うことができる。 l コンストラクタを定義することができる。 l アクセス修飾子を用いてデータのカプセル化を行うことができる。 l キーワードstaticの意味を理解し、static変数とstaticメソッドを定義して使用することができる。 |
継承とポリモフィズム |
l オブジェクト指向の概念に継承とポリモフィズムがある。これらの概念を理解し、使うことができる。それには、以下の点が含まれる。 l 既にあるクラスのサブクラスを定義して、使うことができる。 l サブクラスにおいて親クラスのメソッドをオーバーライドすることができる。 l パッケージの仕組みを理解して使うことができる。 |
これらの項目を見ると、Javaについて非常に基本的なスキルを持っているかが問われることが分かる。
Java SE 8 Silver(シルバー)
Java SEシルバーの資格に対するオラクルの正式な呼び名は「Oracle Certified Java Programmer, Silver SE 8」である。
この認定資格は、Javaプログラミング言語を用いてアプリケーション開発を行うための基本的な知識を既に持っていることを前提として、本人が持つ知識と経験豊富な技術者の指導を受けて開発作業が行えるプログラマのための資格である。ここでいうアプリケーションとは、ユーザが行う業務を支援するために開発されるプログラムのことである。
この認定試験に合格するならば、Java言語を使用した開発を行うためのプログラミング・スキルだけでなく、開発プロジェクトで発生する問題に対応可能な能力を持っていると認定される。この資格は、Java SE 8 Programmer Iの試験に合格することにより与えられる。
試験項目は、以下の通りである。項目については、オラクルのホームページに掲載されているが、ここではさらに説明を加えてわかり易く紹介している。
試験項目 |
必要とされるスキル |
Java言語の基本 |
l ソフトウエアの部品を組み合わせてアプリケーションを作成できる。これには、変数のスコープ(範囲)やクラスの構造が定義できること、パッケージをインポートしてアクセスできるようにすることが含まれる。 l 実行可能なJavaアプリケーションを作成して、コマンドラインから実行できる。 l Javaの機能、プラットフォームの非依存性、オブジェクト指向、カプセル化などについて説明できる。 |
Javaのデータ型の操作 |
l Javaのデータ型は、大きく分けてプリミティブ型とオブジェクト参照型に分けられる。この型を使って宣言される変数にどのような違いがあるか説明できる。 l オブジェクトが作られてから消えていく過程について説明できる。 l オブジェクトのフィールドに値を書き込んだり、読み込んだりする方法を理解している。 l ラッパークラスを使ったプログラムの開発ができる。 |
配列の作成と使用 |
l 一次元配列と多次元配列を宣言し、使用することができる。 |
ループ構造の使用 |
l 3つのループ、whileループ、拡張を含むforループ、do whileループを使って繰り返し処理のプログラミングができる。 l ループと共にbreakやcontinueを使って、繰り返し処理の流れを制御できる。 |
メソッドとカプセル化の操作 |
l メソッドを書くことができる。メソッドには引数や戻り値があり、オーバーロードされることも含まれる。 l クラス・メソッドとクラス・フィールドが書ける。 l コンストラクタを書くことができる。コンストラクタには引数があり、オーバーロードされることも含まれる。 l アクセス修飾子を使ってクラスやメソッドやフィールドのアクセス制御を行うことができる。 l カプセル化の原則をクラスに適用してクラスを作ることできる。 l メソッドの引数がオブジェクト参照型かプリミティブ型かによる違いを説明できる。 |
継承の操作 |
l オブジェクト指向の概念のひとつである継承について説明できる。 l ポリモフィズムを使ってコードを書くことができる。 l オブジェクト参照変数を扱うとき、キャストが必要かどうかを判断できる。 l キーワードthisとsuperを使ってオブジェクトとコンストラクタにアクセスすることができる。 l 抽象クラスとインタフェースについて理解し使うことができる。 |
Java APIの主要なクラスの操作 |
l 文字列を作成し扱うことができる。扱うとは、二つの文字列を結合したり、文字列の中の特定の言葉を検索したりするなどの操作のことである。 l Javaのクラス・ライブラリの中にあるStringBuilderクラスを使用して文字列データを扱うことができる。 l Javaのクラス・ライブラリの中にあるjava.time.LocalDateTime、java.time.LocalDate、java.time.LocalTime、java.time.format.DateTimeFormatter、java.time.Periodクラスを使用して日付データを扱うことができる。 l Javaのクラス・ライブラリの中にあるArrayListクラスを使用して複数のデータを扱うことができる。 l Predicate式を返す簡単なラムダ式を書くことができる。 |
これらの項目を見ると、Bronzeと比較してより高度な知識とスキルを試験されることが分かる。
Java SE 8 Gold(ゴールド)
Java SEブロンズの資格に対するオラクルの正式な呼び名は「Oracle Certified Java Programmer, Gold SE 8」である。
この認定資格は、設計者の意図を正しく理解して独力で設計どおりJavaプログラミング言語を用いてアプリケーション開発できるプログラマのための資格である。
この認定試験に合格するならば、Java言語を使用した開発を行うための汎用的なプログラミング知識だけでなく、設計者の意図を正しく理解して独力で設計どおりにアプリケーション開発できるプログラマと認定される。この資格は、Java SE 8 Programmer IIの試験に合格することにより与えられる。
ここでは、試験項目の詳細を説明することは省略する。
Java EE - Oracle Certified Expertの資格
Java EE - Oracle Certified Expertの資格は開発する対象向けの資格である。いずれもWebアプリケーションを開発するためのものであるが、次のような資格が用意されている。
- Java EE 6 Web Services Developer → Webサービス開発者
- Java EE 6 Web Component Developer → Webコンポーネント開発者
- Java EE 6 Enterprise JavaBeans Developer → 開発者
- Java EE 6 Java Persistence API Developer → 開発者
- Java EE 6 JavaServer Faces Developer → 開発者
では、この資格の中でWebアプリケーションを開発するために最初に求められる知識とスキルである資格の詳細を紹介しておこう。
Java EE 6 Web Component Developer(Webコンポーネント開発者)
Java EE 6 Web Component Developerの資格に対するオラクルの正式な呼び名は「Oracle Certified Expert, Java EE 6 Web Services Developer」である。
この認定資格はJavaプログラミング言語を使ってWebアプリケーションを開発する開発者のための資格である。WebアプリケーションをJSPとサーブレットを使用してJava EE 6アプリケーション・サーバー上に構築できる知識とスキルを持っていることが認定される。
この資格は、Java EE 6 Web Component Developer Certified Expertの試験に合格することにより取得できる。
試験項目は、以下の通りである。項目については、オラクルのホームページに掲載されているが、ここではさらに説明を加えてわかり易く紹介している。
試験項目 |
必要とされるスキル |
Java サーブレットの概要 |
l Web アプリケーションを動かす上でCGIおよびCGIによって起動されるJava プログラムの役割について説明できる。 l Java サーブレットテクノロジの利点について説明できる l 簡単な Java サーブレットを作成することができる。 l 層1をプレゼンテーション、層2をビジネス・ロジック、層3をデータ/リソース層とする3 層アーキテクチャーを理解し定義することができる。 l Model-View-Controller (MVC) アーキテクチャーを理解し定義することができる。 |
Java サーバーページの概要 |
l サーブレットだけでソリューション全体が成り立っているのではない理由を説明できる l JSP とはなにかについて主要な点を説明できる。 l MVC アーキテクチャーの基本とそれを使用する理由を説明できる。 |
MVC 設計の実装 |
l サーブレットを使ってコントローラをコーディングできる。 l JSP を使用してビューをコーディングできる。 l サーブレットから JSP に制御を転送することができる。 l 計算結果を出力するためになどに使われるEL(Expression Language)の基本を理解している。 l 簡単な MVC システムのプログラミングができる。 |
サーブレットの環境 |
l クライアントとサーバー間の通信を行うHTTP プロトコルの詳細を理解している。 l クライアントのブラウザに情報を表示するためのHTML フォームの基本を理解している。 l サーバー側でクライアントからリクエストを処理するHttpServlet および関連 API の基本を理解している。 l クライアントのセッションおよび cookie を管理するコードを作成できる。 |
サーブレットと JSP 用のコンテナ機能 |
l 開発されたJSP、サーブレットなどのソフトウエア部品をサーバー上で動作させるための設定情報を記述したデプロイメント記述子がある。このデプロイメント記述子の目的と構造を理解している。 l クライアントからのリクエストに対応して、コンテキストルートおよびサーブレットマッピングを制御することができる。 l デプロイメント記述子にコンテキストおよび初期化のパラメータを設定して使用することができる。 |
JSP ページの開発 |
l JSP(Java サーバーページ)の起源、利点、および弱点を理解している。 l JSP テクノロジ、JSP からサーブレットへの変換、および JSP のライフサイクルについて説明できる l JSP のスクリプト要素、宣言、および指示子を理解している。 l JSP の暗黙変数を使うことができる。 l JSP: タグを理解していて使うことができる。 |
以下の項目の説明は省略した。もし、関係する情報が必要であればオラクルのホームページを参照することができる。
- そのほかのビュー機能
- そのほかのコントローラ機能
- モデルのそのほかのオプション
- 非同期 Web アプリケーション
- Web アプリケーションセキュリティー
まとめ
このページではOracle社の資格について簡単にご紹介した。
今回、紹介したOracle社の資格を取得してスキルアップや就転職に繋げていただきたい。
Oracle社の資格について参考にしていただければと思う。