ラベル 自己啓発 の投稿を表示しています。 すべての投稿を表示
ラベル 自己啓発 の投稿を表示しています。 すべての投稿を表示
2016年7月10日日曜日

そろそろOCJ-PをJava8へ移行しようと決意した


猫と一緒にガジェットライフ♪ムチャです。

OCJ-Pとは「Oracle Certified Java Programmer」の略で、Javaの資格試験です。
自分はバージョン7の資格を持っているのですが、そろそろ8へのアップグレードをしようと思い立ちました。
宣言することで自分を追い込んでいきたいと思います。




OCJ-Pとは

オラクルが実施しているJavaの認定資格試験です。
Sunが実施していた頃は段階が分かりづらい体系でしたが、オラクルが買収してからデータベースのOracle Masterと同じようにBronze→Silver→Goldという3段階になりました。
Bronze、Silverは前提資格がありませんが、GoldはSilverを持っていないと認定されません。

Java8の試験は2015年5月下旬から始まっています。
しかし、BronzeとSilverの参考書はいくつか出ているものの、Goldの参考書は一向に出る気配がありません。


低空飛行な自分に新たな目標を

参考書が出たら買って受けようと思っていたのですが、 このままではJava9が出てしまいます(2017年3月予定)。

また自分はうつ病の治療をしながらSEを続けています。薬を最大量まで飲んで何とか仕事に行けていますが、行くだけで精一杯な状態です。
2015年8月に2度目の社会復帰してもうすぐ1年になりますが、実績を積み上げるのを優先でスポットな現場が多く、大した成果は残せていません。

仕事はそれほど忙しくないものの、帰っても疲れてしまって何もできず寝るという日々が続いています。ブログの更新も減ってしまいました。

このままでは沈みきってしまう・・・
もう傷病手当金をもらいきってしまって後がない自分にとっては、次休職になったら終わりです。

なので新たな目標を設定して、自分を駆り立ててみることにしました。



Upgrade to Java SE 8 Programmer 試験(1Z0-810)の範囲

自分は7のGoldを持っているので、Upgrade to Java SE 8 Programmer 試験(1Z0-810)を受ければ8へアップグレードできます。

試験範囲はJava8で追加された新機能、ラムダ式とStreamAPIが中心です。
ラムダ式
  • ネストしたクラス、静的クラス、ローカル・クラス、無名クラスなど、Javaの内部クラスを使用する
  • 関数型インタフェースを使用する
  • ラムダ式について説明する。無名内部クラスを使用したコードをラムダ式を使用するようにリファクタリングする。型推論とターゲット型付けについて説明する
  • ラムダ式を使用する事前定義済みの型の使用

java.util.function パッケージのインタフェースについて説明する
  • Function インタフェースを使用する
  • Consumer インタフェースを使用する
  • Supplier インタフェースを使用する
  • UnaryOperator インタフェースを使用する
  • Predicate インタフェースを使用する
  • java.util.function パッケージのベース・インタフェースを特殊化したインタフェースを使用する
  • メソッド参照を使用して、ラムダ式をリファクタリングする
  • ラムダ式を使用するコレクションおよびストリーム

forEach()メソッドとメソッド・チェーンを使用したコレクションの反復処理
  • Streamインタフェースとパイプラインについて説明する
  • ラムダ式を使用してコレクションをフィルタリングする
  • ストリーム上での遅延操作
  • ラムダを使用するコレクション操作

map()メソッドを使用してオブジェクトからデータを抽出する
  • findFirst()、findAny()、anyMatch()、allMatch()、noneMatch() などのメソッドを使用してデータを検索する
  • Optional クラスの特徴について説明する
  • count()、max()、min()、average()、sum() などの Stream API のメソッドを使用して計算を実行する
  • ラムダ式を使用してコレクションをソートする
  • averagingDouble()、groupingBy()、joining()、partitioningBy() などの Collectors クラス・メソッドと Stream.collect() メソッドを使用する

並列ストリーム
  • 並列ストリームを使用するコードを作成する
  • ストリームで分解とリダクションを実装する

ラムダ・クックブック
  • Collection.removeIf()、List.replaceAll()、Map.computeIfAbsent()、Map.computeIfPresent()など、Java SE 8 で改善されたのコレクション API を使用する
  • Files.find()、Files.walk()、lines()など、Java SE 8 で改善されたファイル I/O を使用する
  • flatMap() を使用する
  • Arrays.stream() および IntStream.range() などを使用してストリームを作成する

メソッドの強化
  • static メソッドをインタフェースに追加する
  • インタフェースのデフォルト・メソッドを定義および使用する。デフォルト・メソッドの継承ルールについて説明する

Java SE 8 の Date/Time API を使用する
  • LocalDate、LocalTime、LocalDateTime、Instant、Period および Duration を使用して日付と時刻を単一のオブジェクトに結合するなど、日付に基づくイベントと時刻に基づくイベントを作成および管理する
  • 複数のタイムゾーンで日付と時刻を操作する。日付と時刻の値の書式設定など、夏時間による変化を管理する
  • Instant、Period、Duration および TemporalUnit を使用して日付に基づくイベントと時刻に基づくイベントを定義、作成および管理する


ラムダ式とStreamAPIは勉強しているものの、もう一つの新機能のDate/TimeAPIがやっかいそうです。
これまで貧弱だった日付の扱いを改善するために追加されたのですが、機能が多い分覚えることが多そうです。


受験料は楽天のIT試験ドットコムがお得

受験料は26600円。高いので不合格はあり得ません(;´∀`)
試験を実施するピアソンVUEのサイトでカード払いもできるのですが、楽天ユーザーならば「IT試験ドットコム」でチケットを買うのが良いです。
ポイントを使えますし、購入でポイントがたまります。

ただしチケットには有効期限が設定されているので、「とりあえず買っとけ」みたいなのは危ないです。



おしまいのひとこと

というわけで単に宣言なので何も情報はないのですが(;´∀`)
これから勉強したことは記事にしたいと思います。

もしサボっていたら喝を入れてやってくださいw

それではみなさまよきガジェットライフを(´∀`)ノ


本はこの辺↓を使おうと思っています。

2014年5月11日日曜日

Upgrade to Java SE 7 Programmer [1Z0-805] 受験記

2014-05-10 20.45.57

猫と一緒にガジェットライフ♪ムチャ(@mutoj_rdm821)です。

約2年前にJavaの認定資格が改訂されました。その時のことは記事にしています。

昨日ついにその資格を受けて合格してきました。今回は試験の概要やどのように勉強したかをご紹介したいと思います。



オラクルJava認定資格制度

State Machine Diagram

Javaのバージョン7から、従来の資格体系から変更になっています。

オラクルマスターのように、Bronze→Silver→Goldと段階制になりました。BronzeとSilverの認定は1つの試験を受ければ大丈夫ですが、GoldはSilverの認定を受けていないといけません。

また、従来のオラクル(サン)認定Javaプログラマを持っている場合は、「1Z0-805 Upgrade to Java SE 7 Programmer 試験」を受ければいきなりGoldの認定を受けられます。今回はこれを受験しました。




1Z0-805 Upgrade to Java SE 7 Programmer 試験概要

試験の内容は以下の通りです。勉強したので、いずれ個々に記事を書きたいと思ってます。

  1. 言語の拡張(ProjectCoin)
  2. 設計パターン
  3. データベースアプリケーションとJDBC
  4. 並列処理
  5. ローカライズ
  6. 新しいファイルIO(NIO2)

1. 言語の拡張(ProjectCoin)

ざっとあげると、以下のような内容です。

  • switch文で文字列を指定可能に
  • 2進数リテラルと整数リテラル区切り文字
  • 例外のマルチキャッチと安全な再スロー
  • ジェネリクスの省略記法(ダイアモンド演算子による型パラメータの省略)
  • try-with-resource(リソースの自動クローズ)



どれも重要です。

自分が間違えたのは(たぶん)整数リテラルの区切り文字です。これは100万を表すときに「1000000」ではなく「1_000_000」のように書けるというものです。

ルールがいくつかあって、連続使用は可、リテラルの先頭/末尾は不可、0x等の進数を表す指定の直後は不可(8進数の先頭0の直後だけ可)、小数点の前後は不可です。

2.設計パターン

以下のパターンについて、「このパターンではどうあるべきか」や「このコードはどのパターンに該当するか」などが出題されます。

  • シングルトンパターン
  • コンポジションパターン
  • ファクトリパターン
  • DAOパターン

それぞれのパターンの特徴を覚えておく必要があります。

3. データベースアプリケーションとJDBC

JDBC4.0、4.1での新機能(ドライバ自動ロード、RowSet)や、JDBCを使ったコーディングに関する問題が出ます。

4.並列処理

スレッドに関するそもそもの知識、java.util.concurrentにある並列コレクション、アトミック変数、Executorsとスレッドプール、Fork/Joinフレームワーク等が出題されます。concurrentパッケージはほとんど使ったことないので1から勉強しました。

5.ローカライズ

LocaleとResourceBundle、NumberFormat/DateFormatに関する問題が出ます。この辺は従来からある仕組みですが、細かいレベルまで(Lcaleの生成方法など)は覚えてなくてつまずきました。

6.新しいファイルIO(NIO2)

従来のFileクラスの欠点を埋める新たなファイルI/Oのインタフェースが追加されています。Pathクラスの機能、FileVisitorを使ったディレクトリのトラバーサル処理、ファイルシステム固有の属性値の取得方法、ファイル監視方法といった物があります。ちょっとややこしく、従来のAPIと絡めて出題されたりするので、しっかり違いを理解していないといけません。

勉強方法

「徹底攻略 Upgrade to Java SE7 Programmer 問題集」をひたすら読みました。今のところ1Z0-805試験に対応した参考書はこれしかないと思います。(アップグレードじゃない試験のはいくつか出ています)

問題集なので、構成は先に問題があってその後に解説という風になっています。そのため、知らない分野は問題自体解けないので、最初から飛ばして解説を見ながら理解を進めました。

わかりにくい所はググるかAPIドキュメントを見たり、実際にコードを書いてみたりしました。

APIドキュメント(日本語)→ 概要 (Java Platform SE 7)

時間の捻出ですが、通勤時や帰宅後はやる気にならなかったので、昼休みを利用して進めました。参考書は自炊してタブレットに入れ、ポイントを手帳にまとめておき、家でEvernoteに書き起こすという流れでした(会社でEvernoteにアクセスできれば楽だったのですが、1ステップ踏むことで理解度が上がるのでこれはこれで良かったです)。

合格してみて

2014-05-10_16h53_06

この手の試験は何度も受けていますが、「これは違うな」と思う選択肢を右クリックすると取り消し線を引いてチェックできる機能がありました。いつ頃からあったのでしょうか・・・。試験中に気づいてけっこう便利に使いました。

あと、従来は試験結果は終了と同時に出ていましたが、今回はすぐには分からず、別途オラクルの「CertView」というサイトに登録したメールアドレスに後で通知が来るという流れでした。

オラクルの試験を受ける方は、事前に登録しておくと良いと思います。

CertView へのログイン

試験の方ですが、どれも重要な機能で勉強して損はないと思いました。特に前バージョンの資格を持っている方は、アップグレード試験で一気にGold認定になるので、ぜひ受けた方がいいです。新しい機能に関する知識の補完もできます。

そしてJavaは既にバージョン8がリリースされています。目玉のラムダ式を初めとして、色々な機能が追加されているようなので、勉強は終わりません・・・。頑張らなくてはいけませんね。

受験料ですが、27000円弱とかなりお高めです。個人で受ける場合、ピアソンVUEのサイトでクレジットカードや振込などで支払うのですが、お勧めは楽天にある「IT試験ドットコム」というお店でチケットを買うことです。値段は一緒ですが、楽天のポイントは貯まるので、買い回りキャンペーンなどを併用するとおトクです。自分は以前のスーパーセールの時に買いました。

今だと、「Java SE 7 Programmer II(1Z0-804-JPN)」および「Upgrade to Java SE 7 Programmer(1Z0-805-JPN)(日本語)」で利用できる、一度落ちても再度使える再受験可能チケットが売られています。チケットの有効期限は2015年2月28日とのことなので、受ける予定のある方はお気に入りに入れておいて、キャンペーン時に買うと良いですよ。

申込時は「-JPN」が付いている方を選びましょう。英語版もリストに出てくるのでご注意を(;´∀`)

それではみなさま良きガジェットライフを(´∀`)ノ

2013年12月30日月曜日

来年の手帳はこれだ!フランクリンプランナー バインダータイプ180(ワンエイティ)

r-DSC02287



猫と一緒にガジェットライフ♪ムチャ(@mutoj_rdm821)です。

今年ももう終わりですね。ここ数年、紙の手帳ブームが来てるように思いますが、2013年末はさらに盛り上がってるように思います。
自分は今年「フランクリンプランナー オーガナイザー A5サイズ」を使っていました。綴じ手帳です。


手帳を使うのは初めてだったので、あえて大きめのサイズ、そして綴じ手帳にすることで存在感を出し、生活の中で手帳を中心にすることを狙いました。確かにいろいろ書き込むことでメリットはあったのですが、ちょっと重すぎました(;´∀`)
それを踏まえ、いろいろ吟味した上で、来年の手帳はバインダータイプにしてみました。一緒に購入したリフィルも合わせてご紹介します。


<目次>

  1. なぜフランクリンプランナーか
  2. 買った物
  3. 自分の使い方
  4. まとめ

1.なぜフランクリンプランナーか

手帳というと、今はものすごい種類があります。ぱっと思いつくのは「ほぼ日手帳」です。自分の知っている方では、ほぼ日手帳を使っている方が一番多い気がします。
ほぼ日手帳のポイントは、1日一ページで、あまりフォーマットが決められて無く自由に書き込めるところ、ではないかと思います。
自分はまだ手帳に慣れておらず、自分流の使い方を確立できていないので、少しフレームワークが用意されている方がいいと思っています。
また、最近新たに完訳版が発売された「7つの習慣」を読んで感銘を受けたというのもあります。


バインダータイプを一式揃えるとだいぶお高いのですが、「投資した分取り返さないといけない」というのも活用するための動機として、購入しました。
フランクリンプランナーはサイズが3種類あり、大きい物から「クラシック」、「コンパクト」、「ポケット」があります。普通のシステム手帳とは微妙にサイズが違うため、リフィルも専用のものが必要です。サイズについては以下をご覧下さい。


クラシックがA5に近いサイズです。今年A5版のオーガナイザーを使っていてちょっと大きかったので、今回は「コンパクトサイズ」にしました。


2.買った物

バインダー:180(ワンエイティ)カーボン柄レザーバインダー/BLACK

r-DSC02288
フランクリンプランナーのバインダーというと、大きな金属製のリングを備えたがっちりしたものを思い浮かべる方も多いと思います。ちょっとあれはごつすぎるな~という方向けに、金属製リングではなく、薄いバーで綴じるタイプがあります。それが「180(ワンエイティ)」というシリーズです。
r-DSC02289
買ったのが少し前で、まだあまり種類が無く、今年使っていたオーガナイザーと同じカーボン柄です。今は「ボンデットレザー」「ライトレザー」「ファスナー付き」があります。


r-DSC02290
開けるとこんな感じです。金属リングではないのでスッキリしています。その分綴じられる枚数は少なめです。(40枚程度)
r-DSC02291
厚みもこんな感じ。
r-DSC02293
今年のA5版オーガナイザーと比較。ちょっと分かりづらいですね(;´∀`)

保管用バインダー

r-DSC02292
綴じられない分は補完しておく必要があるので、これも買いました。これを入れておくケースも買うんだった・・・

7つの習慣・デイリー・リフィル (日本語版) 1日2ページ

r-DSC02295
リフィルもいろいろあるのですが、個人的にはやっぱりデイリーです。しかも1日2ページにしました。1日を大切にしたいという思いからです。他にも1日1ページのデイリーと、ウィークリーがあります。マンスリーという名称でのラインアップはありませんが、月間カレンダーリフィルがあるのでそれが使えそうです。


r-DSC02296
デイリーリフィルですが、マンスリーページも入っています。おそらくウィークリーにも入ってるかと・・・。
r-DSC02297
デイリーページはこんな感じです。左はタスクリストとスケジュール、右はフリーです。
7つの習慣リフィルでは、上部に7つの習慣の内容と名言が書かれています。7つの習慣の内容を振り返ることができます。
r-DSC02298
マンスリーページの裏はインデックスとマスタータスクリストを書く欄があります。
r-DSC02299
デイリーページの月の始まりにもインデックスページが。
r-DSC02300
マンスリーページは普通です。
r-DSC02302
7つの習慣の概要がしっかり付いてきます。
r-DSC02303
さらに使い方ガイドも入っています。

7つの習慣演習フォーム、第8の習慣演習フォーム

r-DSC02304
オーガナイザーの方は演習なども入っていたのですが、上記リフィルだと入ってないので、別途買いました。「第8の習慣」という本も出ていて、入手してまだ読んではいないのですがそちらも。
演習を進めていくと、効果的に7つの習慣、第8の習慣を実践できるようになる・・・と思います(まだやってません(;´∀`)

ページリフター

r-DSC02305
下敷きにしようと思ったんですが、よく見ると「リフィルの保護用」と書いてありました(;´∀`)
r-DSC02308
下敷きとしてもご使用いただけますと書いてありますが、写真で見ると分かるように、穴が閉じているんですよね。なのでこれは最初と最後のページに入れて保護用にして、下敷きは別途買いました。

スケール付き下敷

r-DSC02556
こちらは穴が閉じてなくて、すぐ外せる下敷きです。
r-DSC02557
中身はこんな感じ。

1週間コンパス、コンパス・ポーチ・ページファインダー

r-DSC02306
フランクリンプランナーの特徴の1つ、1週間コンパスです。
r-DSC02307
その1週間、自分の持ついろいろな役割において、何をすべきかを書いて実践していくための用紙です。ポーチはこれを入れておくと同時にしおりにもなります。
この辺のリフィルは単体で揃えたのですが、一通りのリフィルがセットになった「スターター・パック」もあります。これを買えば良かった・・・。さすがに演習フォームは入ってないですが、価値観やミッションを記入する用紙は入ってます。内容物はリンク先をご覧下さい。

バインダーもセットになったキットもあります。金属製リングのバインダーしかないですが、お得です。


ベルト付きペンポーチ B6W

r-DSC03130
ちょっと大きめの、手帳ベルトが付いたペンケースです。これにフリクションスリムを全色入れて持ち歩こうと思ってます。


3.自分の使い方

あまりお見せできる感じでは無いので文章だけで・・・(;´∀`)

基本的に、自分の仕事は常駐のSEなので、出張や対外的な打ち合わせはほとんどありません。そのためスケジュール欄は大抵何も書かず。

オーガナイザーには、7つの習慣に出てくる「第2領域の活動(緊急では無いが重要)」を書く欄があって、そこには「ブログ書く」「腕立てする」などを毎日書いてチェックを入れるということをしてました。残念ながらリフィルの方には用意されてないんですよね・・・タスク欄で代用しようと思います。

自由欄には、起きた時間、あったこと、気づいたことなど何でも書いてました。自分はうつ病の治療中なので、体調なども記録して、病院で相談するときに利用しています。

後はどこか行ったときの入場券を貼ったりですかね。

他の方の使い方で、その日起きたニュースで気になったものを書いているというのは、自分も真似したいと思いました。

今年が終わったら、ばらしてスキャンして保存しておくつもりです。これもバインダーなら楽になります。


4.まとめ

全部揃えると2万円ほどとかなりお値段になってしまうのですが、その分「使いこなしてやろう」という気になるので自分としては良い買い物と思ってます。
(もちろん楽天のセールを狙ってポイントはがっつりゲットしましたw)

手帳は使い方が人によっていろいろ違って面白いです。人の手帳の使い方をみるのが好きという方は多いのでは無いでしょうか。自分も以下の本買って読んだりしました。

なにげに堀さんやべっく(北真也)さんも出ていておおっと思いました。
正月は演習をやって一年を有意義にできるようにしたいと思います。自分の場合は体調と相談なのですけどね・・・。

それではみなさまよきガジェットライフを(´∀`)ノ

▼こちらの記事もどうぞ

▼ブログを気に入っていただけたらRSS登録をお願いします!
▼ブログランキング参加中!応援よろしくお願いします。

スポンサーリンク