よくわからないことを調べて解説してみるブログ。
2017
・テレスコーピングコンストラクタ
コンストラクタに初期化パラメータをすべて引数にとる実装方式。
必須のパラメータが可変である場合、可変パターンごとにコンストラクタに用意する必要がある。
クラスが持つ初期化対象の変数がN個だとしたら、N!の数だけコンストラクタを必要とする可能性がある。
・JavaBeansパターン
new オブジェクト後に、パラメータごとに用意したsetメソッドで初期化する。
メリット
パラメータが大量でも必要分だけの記述で対応可能。
デメリット
コードが分断される。
setメソッドは実装上publicになるため、初期化時のみの利用というような制限ができない。
・ビルダーパターン
クラスの内部にstaticなビルダークラスを用意する。
Builderクラスは、必須パラメータを引き受けるコンストラクタを持ち、
任意パラメータに対する初期化メソッドを持つ。
この初期化メソッドは返却型にBuilderクラスを指定する。
初期化例
Car car = Car.Builder(100, 120).setMaxSpeed(110, "Km/h").setHoyeel(4).build();
//雑ですみません。
メリット
テレスコーピングコンストラクタパターンと
JavaBeansパターンのデメリットを解消する
デメリット
パラメータ数が少ないときにはあまり効果的ではない(しかし、パラメータの拡張性に富んでいるため間違いになることはないだろう)。
コンストラクタに初期化パラメータをすべて引数にとる実装方式。
必須のパラメータが可変である場合、可変パターンごとにコンストラクタに用意する必要がある。
クラスが持つ初期化対象の変数がN個だとしたら、N!の数だけコンストラクタを必要とする可能性がある。
・JavaBeansパターン
new オブジェクト後に、パラメータごとに用意したsetメソッドで初期化する。
メリット
パラメータが大量でも必要分だけの記述で対応可能。
デメリット
コードが分断される。
setメソッドは実装上publicになるため、初期化時のみの利用というような制限ができない。
・ビルダーパターン
クラスの内部にstaticなビルダークラスを用意する。
Builderクラスは、必須パラメータを引き受けるコンストラクタを持ち、
任意パラメータに対する初期化メソッドを持つ。
この初期化メソッドは返却型にBuilderクラスを指定する。
初期化例
Car car = Car.Builder(100, 120).setMaxSpeed(110, "Km/h").setHoyeel(4).build();
//雑ですみません。
メリット
テレスコーピングコンストラクタパターンと
JavaBeansパターンのデメリットを解消する
デメリット
パラメータ数が少ないときにはあまり効果的ではない(しかし、パラメータの拡張性に富んでいるため間違いになることはないだろう)。
PR
2017
2016
OCJP Gold 7(Java SE Programmer Ⅱ)に合格しました。
無料キャンペーンを利用して、4回受けていました。
なのであまりえらそうなことは書けません。
利用したのは下記の本です。
問題演習はやっておいて損はないです。
絶対に合格するなら、
テスト範囲の標準APIについて、
・JavaDocを読み込んでいること
概要説明の記述を見て何のクラスのことか思い浮かべればベスト。
・クラス図を描けること
CollectionAPIやDBアクセス周りのクラス構成の理解。
これをやっておくと、~Setに対する理解が非常に深まりますし、
Javaそのものの考え方にも触れることが出来ます。
・一連のメソッドの動作仕様の理解
クラスの責務を果たすメソッドの複数回実行。
クラスの責務を補佐するメソッドの実行後の責務を果たすメソッド実行時の挙動。
・各メソッドの矛盾した利用による動作
例えば、
resultSet.absolute(1);
resultSet.next();を2回実行したときの挙動は?
なぜ8ではなく7かというとラムダに苦手意識があるためです・・・。
いずれUpdate試験は受ける予定です。
無料キャンペーンを利用して、4回受けていました。
なのであまりえらそうなことは書けません。
利用したのは下記の本です。
問題演習はやっておいて損はないです。
絶対に合格するなら、
テスト範囲の標準APIについて、
・JavaDocを読み込んでいること
概要説明の記述を見て何のクラスのことか思い浮かべればベスト。
・クラス図を描けること
CollectionAPIやDBアクセス周りのクラス構成の理解。
これをやっておくと、~Setに対する理解が非常に深まりますし、
Javaそのものの考え方にも触れることが出来ます。
・一連のメソッドの動作仕様の理解
クラスの責務を果たすメソッドの複数回実行。
クラスの責務を補佐するメソッドの実行後の責務を果たすメソッド実行時の挙動。
・各メソッドの矛盾した利用による動作
例えば、
resultSet.absolute(1);
resultSet.next();を2回実行したときの挙動は?
なぜ8ではなく7かというとラムダに苦手意識があるためです・・・。
いずれUpdate試験は受ける予定です。
2016
public class Main { public static void main(String[] args) { A a = new A(); Thread aThread = new Thread(a, "AThread"); Thread bThread = new Thread(a, "BThread"); System.out.println("aThread.getState() :" + aThread.getState()); aThread.start(); System.out.println("aThread.getState() :" + aThread.getState()); try { aThread.join(); } catch (InterruptedException e) { // TODO 自動生成された catch ブロック e.printStackTrace(); } System.out.println("aThread.getState() :" + aThread.getState()); aThread.start(); } }実行結果
aThread.getState() :NEWaThread.getState() :RUNNABLEaThread.getState() :TERMINATEDException in thread "main" java.lang.IllegalThreadStateExceptionat java.lang.Thread.start(Thread.java:705)at thread.joinToStart.Main.main(Main.java:18)
上記のとおり、
new Thread():NEW
start() : RUNNABLE
join() 後 :TERMINATED
となり、再度start()することはできない。
new Thread():NEW
start() : RUNNABLE
join() 後 :TERMINATED
となり、再度start()することはできない。
2016
ITIL Foundationに合格いたしました。
勉強時間は20時間以下。
自社内では5時間以下の天才から30時間オーバーまで。
私は8割程度教科書を読みこみ、残りは2割は受験先に行く際の電車で読み込みました。
この資格は開発経験の有無が勉強必要時間に関係していると思います。
開発経験が無い場合は、活動の具体的なイメージがつきにくい方もいるかもしれません。
Foundationレベルなら丸覚えでもいけるかもしれません。
ITIL自体の有用性は非常にあると思います。
保有資格を増やすためだけに取るというより、今、将来にかけて、
今の現場や理想的な現場であるべき姿を追うために、どんな情報をどのタイミングで、管理・運用すべきなのか、を目指すために利用していきたいところです。
ITILが浸透した組織では、運用・管理自体が洗練され、そのうえコミュニケーションコストも低減してくものと思われます。体系的な基盤を持った組織におけるコミュニケーションは無駄が排除されているはずだからです。
勉強時間は20時間以下。
自社内では5時間以下の天才から30時間オーバーまで。
私は8割程度教科書を読みこみ、残りは2割は受験先に行く際の電車で読み込みました。
この資格は開発経験の有無が勉強必要時間に関係していると思います。
開発経験が無い場合は、活動の具体的なイメージがつきにくい方もいるかもしれません。
Foundationレベルなら丸覚えでもいけるかもしれません。
ITIL自体の有用性は非常にあると思います。
保有資格を増やすためだけに取るというより、今、将来にかけて、
今の現場や理想的な現場であるべき姿を追うために、どんな情報をどのタイミングで、管理・運用すべきなのか、を目指すために利用していきたいところです。
ITILが浸透した組織では、運用・管理自体が洗練され、そのうえコミュニケーションコストも低減してくものと思われます。体系的な基盤を持った組織におけるコミュニケーションは無駄が排除されているはずだからです。
次のページ忍者ブログ [PR] * Template by TMP
>>
プロフィール
HN:
たんてーくん
性別:
非公開
最新記事
(03/29)
(03/29)
(06/26)
(05/21)
(04/23)
カテゴリー
最新CM
[09/25 http://2017.bblbuy.com]
[09/24 http://www.japanform.com]
[09/23 http://www.japanform.com]
[09/22 http://www.japanform.com]
[09/21 http://2017.bblbuy.com]
ブログ内検索