フツーって言うなぁ!

フツーなサラリーマンのフツーな嘆き.

最近読んだ本を晒しとく

お久しぶりです.
4ヶ月近く放置してしまいました…

とりあえずリハビリとして,読んだ本の感想とかを適当に並べてお茶を濁しておきたいと思います.

「Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)」

Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)

Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)

業務で既存のAPIを設計からリニューアルすることになったが,その過程での先輩とのディスカッションで,

先輩「どうせなら今時のイケイケなRESTful APIにしたいよね」
ぼく「あーRESTfulですね.はいはいあのRESTfulか…」

こんな感じで会話を終えた後,すぐにAmazonを検索して,名著との評価のあった本書を読むことに決めた.

タイトルだけからだと非常につかみにくいが*1,本書は,

  • 最初にWebの歴史について触れた上で,
  • HTTPの仕様とURI,HTML,JSONなどの関連技術について説明し,
  • 現時点でのWebサービス設計のベストプラクティスとされるRESTについての説明と実際の設計手法につなげる

形で論を進めている.

基本的な計算機科学とWebの知識を持っている人がWebサービスを作っていくにあたって,どのようにリクエスト/レスポンスのインタフェースを設計していけばいいのか迷った時に本書は適していると思う. また,具体的なソフトウェア(Webフレームワークなど)の実装には(歴史の説明は除いて)全く言及しておらず,非常に普遍的な視点から知識を得ることができると思った.

Junit実践入門 ~体系的に学ぶユニットテストの技法~」

JUnit実践入門 ~体系的に学ぶユニットテストの技法 (WEB+DB PRESS plus)

JUnit実践入門 ~体系的に学ぶユニットテストの技法 (WEB+DB PRESS plus)

これも,同じ案件でJunitをがっつり書く機会ができたので,ベストな方法論が知りたくて買った.

今まで「なんとなく」ユニットテストを書く機会はあったが,どのような観点でテストケースを作成すればよいのか,作成した各テストケースをどのようにクラスタリングすればよいのかについては,自分の中でまとまったものがなかった.

本書は,「なぜユニットテストを書くのか」といった基本のところから,テスト技法の紹介,4フェーズテスト(事前準備 -> テストクラス実行 -> 結果の検証 -> 事後処理)についての説明と来て,実際にJunitの機能の説明に移る.
ここまででも,今までなんとなくテストを書いていた自分には学びがあった.

機能説明の後は,テストダブル(いわゆるスタブ,モック),カバレッジについての説明から,TDDやBDDの説明が進む.
この辺については,抽象的な説明が続き,巻末の実例集を見ても,あまり実感がわかなかった.

全体的に見て,Junitの解説書としては十分な出来だと思う.
これに加えて,Mockitoの解説記事をいくつか読めば,現在のJunitを用いたシステムテストについてはほぼおさえられるのではないだろうか.

「どんどん話すための瞬間英作文トレーニング」

どんどん話すための瞬間英作文トレーニング (CD BOOK)

どんどん話すための瞬間英作文トレーニング (CD BOOK)

相変わらず英会話力に不安を抱えているのだが,最近特に気になるのが,「英語での発話(返答を含む)開始までにかかる時間」.

もともとコミュニケーションには不安があり,日本語でも「あの,えーとですね…」からしか会話を始められない私だが,英語での会話だと,それにさらに2-5秒の「言いたいことを英語に変換する時間」が追加される.
こうなると,複数人の会話に入っていけないのはもちろん,一対一の会話ですら,相手に話し続けられてしまってコミュニケーションにならない.
この時間を短縮したいと思ったのが本書を買った動機.

本書に記載してある例文と対訳は,どれも中学英語で見たことのあるものばかり.
しかし,いざこれを「3秒で訳して発音しろ」と言われると,なかなか表現が出てこない.
また,「それっぽい」表現が出てきたとしても,"Does"になるべきところが"Do"になってしまっていたり,"more smarter"なる謎英語がでてきたり,自分の中に正しい英語を落とし込めているとは言いがたい.
「まず,中学英語レベルの表現を問題なく(素早く)引き出せるようになってから,英文法書にあるような例文を練習すると良い」というようなことが本書のまえがきに書いてあり,「なるほどな」と思った.

とりあえず2周ぐらいしてみたが,まだまだ英語ペラペラは遠いと感じる.

*1:本書をちゃんと題するなら,「HTTPとRESTアーキテクチャ」が正しいように感じる