2012年9月28日金曜日

「Javaプログラマであるかを見分ける10の質問」に答えてみた

以下のリンク先の質問に答えてみた。
http://d.hatena.ne.jp/shuji_w6e/20110305/1299288660
間違えている気がするのであまり参考にしないでください(´・ω・`)

1. インスタンスそのものが同一かどうかと、インスタンスの示す値が同一かどうか。
2. 前者は裏でStringBuilderが動くためコストが高い。連結前提なら初めから後者を使うのが良い。
3. 複数の型を混在させないことで、コレクションを扱いやすくする。
4. オブジェクトの参照がどの変数にも格納されていない状態になった時。
5. 前者はException継承クラスで、catchブロックが必要。後者はRuntimeException継承クラスで、catchする必要は無い。
6. カプセル化のため(意図しない値の読み込み、書き込みを防ぐため)。
7. 参照型変数がnullだったとき。
8. 前者は引数の異なる同名メソッドを定義すること。後者はサブクラスにてスーパークラスのメソッドを再定義すること。
9. インスタンスを生成すること。
10. クラスの仕様を予め決めておき、その通りに実装してもらう場合。

うーん、微妙な気がする(特に4)。50文字以内っていうのも難しいw
前回Javaプログラマ試験に合格したよって言ったけどまだまだだなw

2012年9月21日金曜日

川崎でよく食べに行くお店

川崎に住んでいて、よく周辺にあるお店で食事を済ましているのだが、最近川崎近くに越してきた人が「おススメの飲食店を教えて欲しい」と頼まれたのでここに書いておく(`・ω・´)
ちなみにリンクはそのお店の場所をGoogle Mapで表示します。

・・・ラーメンが多いかしら・・・


ラーメン二郎
名前の通り。京急川崎から京急大師線沿いに歩いて7,8分のところにある。二郎の中では初心者向けかしら

萬○屋
京急川崎駅から歩いて5分もしないところにある銀座街のラーメン屋。特別おいしいわけじゃないけど、夜遅くまでやってるからついつい寄っちゃう。

リンガーハット
長崎ちゃんぽん。銀座街にあるお店。

大戸屋
定食食べたかったらココ。銀座街にあるお店

モスバーガー
「川崎駅前東」交差点の近くにあるお店。マックとモスどちらが好きかといえばモス

ひもの屋
銀座街じゃなくて銀柳街にあるお店。お魚(特にひもの)が出る。昼は定食、夜は居酒屋。

おかしのまちおか
ひもの屋の隣にあるお店。飲食店じゃないけど、いろんなお菓子が売っている。

東京チカラめし
銀柳街にあるお店。松○より肉が分厚く、濃い味付け。

赤備
銀柳街にあるつけ麺屋

やよい軒
銀柳街からちょっと外れた所にある定食屋。大戸屋に飽きたらこちら?

屯ちん
川崎モアーズのレストラン街にある東京しょうゆ豚骨ラーメン屋。池袋にある本店には行列が出来ていたが、こちらはいつでも入れるw

かつや
かつどんのチェーン店。京急川崎駅から5分もしない。

とんかつ和幸
川崎アゼリアにあるとんかつやさん。とんかつ定食が食べたかったら、かつやよりこっち。

ペッパーランチ
川崎アゼリアにある低価格のステーキやさん

餃子の王将
名前の通り。けっこう行列できてる。

なんつっ亭
川崎BE地下1Fにある「ラーメンシンフォニー」あるお店の1つ。ラーメンシンフォニーの中では一番おいしいと個人的には思ってる。

麺家 徳
川崎BE地下1Fにある「ラーメンシンフォニー」あるお店の1つ。量も種類もいろいろある。


お店は他にもいろいろあるが、まだ行ったことのないお店が圧倒的に多いな(´・ω・`)


[受験報告]Javaプログラマ(OCJ-P)に合格しました


Oracle認定Javaプログラマ(OCJ-P(1Z0-851))合格しました。

本当はこの上位にあるWebコンポーネントディベロッパ(OCJ-WC(1Z0-858))を取得したいのだが、前提条件にOCJ-Pを取らないといけないという・・・


受験日             : 2012/09/21
合否                : 合格
受験科目          : 1Z0-851(旧310-065)
受験言語          : 日本語
試験時間          : 150分

問題数             : 60
合格点             : 61%
取得点             : 90%(60問中54問正解)
勉強期間          : 2週間

受験目的          : お勉強
勉強形態          : 独学
実務経験          : あり(4年)
何度目の挑戦か : 1回目


某サイト様のテンプレっぽく書きましたm(_ _)m
ちなみに、試験番号が2012/06/01から変わっているので注意

勉強
知ってる人は知っているんですが、病気で入院して、今は自宅療養中ということもあり、時間はありました。勉強期間は2週間ほどですが、1日あたり4~6時間取り組みました。仕事しながらの勉強だと期間は倍の4週間くらい見積もった方がいいかも。

問題集は徹底攻略Javaプログラマ問題集を使用。試験番号が古いままですが、問題に変わりはなさそうなのでこれでいけると思います。いずれ、新版が出ると思いますが(´・ω・`)

チケット
受験しようと思った日の2日前にIT試験ドットコム楽天支部で購入。ちなみに、NECインターナショナルで買うのが一番安いが、試験を予約するまでに2週間~4週間かかるっぽいので注意。

当日の様子
試験会場に30分ほど前に到着。身分証明書2種(僕の場合はパスポートと保険証)を提示して、開始まで問題集を読みながら待ち。時間になったら指定のPCの前に座り、マウスをカチカチ押しながら解く。全部解いた後に結果が表示され、受付でレポートをもらっておしまい(`・ω・´)

所感
実務でずっとJavaを触っているが、細かい知識はこの受験勉強で養った感じ。とはいえ、Java6に関することを広く出題されると思っていたが、Java5から導入されたアノテーションに関する問題が1問も出なかったのがちょっと気になる(たまたま出てない?)。他にも出題されてないものってあるかしら。試験代が高いので落ちたら(´;ω;`)ブワッってなってたかも。

細かいルールを知っているかを問われるが、「そもそも、細かいところまで書かれているJava本あったかな?」と思って本屋に行って探したら、わかりやすいJavaにけっこう書いてあった。これは初心者でもおススメかと。codezineのJava入門ブックガイド(入門編) よりよき入門書と出会うためにでも取り上げられてますね。

その他
実はJava7試験が発表されている。機会があればアップグレード試験を受けたいが、Java7の内容を含んだ本が今のところこれくらいしか無い気がする


参考
OCJ-P(旧SJC-P)を取りましょう
Oracle認定Javaプログラマ(OCJ-P(1Z0-851))合格しました

2012年9月4日火曜日

JavaScriptのslice()とsubstring()とsubstr()

JavaScriptには、部分文字列を取得するメソッドが3つある。slice()とsubstring()とsubstr()である。
なんで似ているメソッドが3つもあるのか不明だけど、整理する意味でちゃんと書いておく。

  • String.prototype.slice (start, end)
引数startから引数endまでの部分文字列を新しい文字列値で返す。
endは省略でき、その場合は末尾を指定したのと同様になる。
負数の場合は末尾からのインデックス値となる。
'0123456789'.slice(2, 8);       // 234567
'0123456789'.slice(2);          // 23456789
'0123456789'.slice(-5, -2);     // 567
  • String.prototype.substring (start, end)
引数startから引数endまでの部分文字列を新しい文字列値で返す。
endは省略できない。
負数の場合は0に置き換わる。
'0123456789'.substring(2, 8);       // 234567
'0123456789'.substring(-5, 2);      // 01
  • String.prototype.substr (start, length)
引数startからlength数の新しい文字列値を返す。
lengthは省略でき、その場合は元の文字列の末尾まで指定したのと同様になる。
startが負数の場合は0に置き換わる。lengthが負数の場合は・・・不明?
'0123456789'.substr(2, 8);       // 23456789
'0123456789'.substr(2);          // 23456789
'0123456789'.substr(-5, 2);      // 56

これら3メソッドはJavaScriptの仕様であるECMA262にちゃんと載っている。
  • 15.5.4.13 String.prototype.slice (start, end)
  • 15.5.4.15 String.prototype.substring (start, end)
  • B.2.3 String.prototype.substr (start, length)
substr()だけ付録のページに載っているのだが、サブ的な扱いなのかしら?

EGitとassemblaの相性が悪い気が・・・

gitホスティングサービスで有名なのがgithubだが、完全プライベートなリポジトリは使えないようなので、assemblaというサービスを利用している。

だが、このassemblaとEclipseのgitプラグインであるEGitとの相性が悪い(´・ω・`)

PC起動後、EGitでリモートリポジトリにアクセスしようとしても認証エラーでアクセスできない。
ただし、TortoiseGitなど別のGitクライアントでアクセスした後は、EGitでもアクセスできるようになる。

おそらく、認証周りがおかしいと思うのだが、原因よく分からず・・・誰か知っていたら教えてくださいm(_ _)m


assemblaじゃなくて、bitbucketに変えようかな・・・プライベートリポジトリ使えるみたいですしおすし