Home

それはBooks

テスト駆動JavaScript

テスト駆動JavaScript
タイトル
テスト駆動JavaScript
著者
Christian Johansen (著), 長尾高弘 (翻訳)
出版社
アスキー・メディアワークス
hamasyou's おすすめ度

JavaScript のテストに関して書かれた、体系的な本がやっと出た!という感じにまとめられています。

本書では、JavaScript にスポットを当て、テストしやすい JavaScript のコードとはどんなものか、実際にテスト駆動で JavaScript のコードを書くにはどういう手順で進めていけばよいかについて書かれています。

本書は大まかに、次の4部に分けて解説されています。

  • 第1部: テスト駆動開発
  • 第2部: プログラマのためのJavaScript
  • 第3部: JavaScriptテスト駆動開発の実際
  • 第4部: テストのパターン

第1部では、一般的な自動テストやテスト駆動開発(TDD)の概念を説明しながら、JavaScript 用の単体テストフレームワークを紹介しています。

第2部では、JavaScript という言語をおさらいしながら、大きな特徴である関数クロージャプロトタイプ継承ECMAScript 第五版控えめなJavaScript機能検出(クロスプラットフォーム)について説明を掘り下げています。

第3部では、実際に小さなプロジェクトを開発しながらテスト駆動による JavaScript の開発を体験できるようになっています。AjaxComet によるデータストリーミング、Node.js によるサーバサイド JavaScript、これらを使ったチャットプログラムの作成を体験できるようになっています。

第4部では、モックスタブといったいわゆる単体テストのテクニックや、優れた単体テストを書くためのテスト名の付け方や、振る舞いのテストを書くときにはどう書いたらよいか、わかりやすい単体テストコードを書くためのテクニックが説明されています。

テスト駆動JavaScript』の名にふさわしい内容で、他の言語でも共通する単体テストのお作法も学べる本書は、TDD難民の人にオススメです。

続きを読む - テスト駆動JavaScript

7つの言語 7つの世界

7つの言語 7つの世界
タイトル
7つの言語 7つの世界
著者
Bruce A. Tate (著), まつもとゆきひろ (監訳), 田和 勝 (翻訳)
出版社
オーム社
hamasyou's おすすめ度

本書は、はじめてプログラミングを知ったときに楽しさを思い出させてくれるものです。紹介されているプログラミング言語は7つ。

  • Ruby
  • Io
  • Prolog
  • Scala
  • Erlang
  • Clojure
  • Haskell

単なる言語紹介の本ではなく、言語を知る本です。

本書を読むことで、各言語の長所、短所、原理、思想を知ることができます。プログラマとして一皮向けたい人に、おすすめです。

禅の指導者は、数学ができるようになりたければラテン語を勉強せよと言うだろう。プログラミングでも同じだ。オブジェクト指向プログラミングの本質を深く理解するには、論理プログラミングや関数型プログラミング(FP)を勉強する必要がある。関数型プログラミングに上達したければ、アセンブラを勉強する必要がある。

本書序文より

プログラミングとは結局、理解することであり、理解できるかどうかはどれだけアイデアの引き出しがあるかにかかっている。したがって、新しい言語を直接体験することは、プログラミングが何たるかをより深く理解するために欠かせない。

本書序文より

続きを読む - 7つの言語 7つの世界

cocos2dで作る iPhone&iPadゲームプログラミング

cocos2dで作る iPhone&iPadゲームプログラミング
タイトル
cocos2dで作る iPhone&iPadゲームプログラミング
著者
Steffen Itterheim (著), 畑 圭輔 (監修), 坂本 一樹 (監修), 加藤 寛人 (監修), 高丘 知央 (監修), 株式会社 クイープ (翻訳)
出版社
インプレスジャパン
hamasyou's おすすめ度

待望の、cocos2d 詳細解説本がでました! 本書を読めば、cocos2d のすべてが分かると言ってもいいんじゃないかというぐらい幅広く詳しく cocos2d のことが書いてあります。

本書は、cocos2d を使ってゲームアプリをつくりながら、cocos2d の機能や cocos2d を使ってゲームアプリを開発する際の手順、こういうふうに設計したら cocos2d ではうまくいくというような事を解説しています。

cocos2d は Objective-C で書かれていて、ゲームアプリも Objective-C を使って作ります。cocos2d が内部に OpenGL-ES を隠してくれているので、すごく簡単に 2D ゲームを作ることができるようになります。

iPhone 用のゲームアプリを作ってみたいがどうやって作ればいいのかわからない人、どのフレームワークを使えばいいか迷っている人に、特におすすめです。

僕の持っている版は cocos2d のバージョン 0.99.5 が解説されています。

参考

cocos2d for iPhone

続きを読む - cocos2dで作る iPhone&iPadゲームプログラミング

プログラマが知るべき97のこと

プログラマが知るべき97のこと
タイトル
プログラマが知るべき97のこと
著者
和田 卓人 (監修), Kevlin Henney (編集), 夏目 大 (翻訳)
出版社
オライリージャパン
hamasyou's おすすめ度

本書は、「プログラマ」の、「プログラマ」による、「プログラマ」のための本です。

  • プログラマとして成功したい!
  • プログラミングの腕を上達させたい!
  • ソースコードの質を向上させたい!
  • メンバーと上手くやりたい!

こういった願いを持つ人のために、世界中でよく知られた著者陣のエッセイがまとめられています。

何か壁にぶち当たっている人、成功したプログラマはどんなことを考えていたのか知りたい人、どういうことを考えてプログラムを書けば質が上がるのか知りたい人。

すべての「プログラマ」におすすめの一冊です。

参考

プログラマが知るべき97のこと - Wikisource

続きを読む - プログラマが知るべき97のこと

Titanium Mobileで開発するiPhone/Androidアプリ (Smart Mobile Developer)

Titanium Mobileで開発するiPhone/Androidアプリ (Smart Mobile Developer)
タイトル
Titanium Mobileで開発するiPhone/Androidアプリ (Smart Mobile Developer)
著者
北尾 雅人
出版社
翔泳社
hamasyou's おすすめ度

本書は、スマートフォンアプリ開発に使う開発ツールを探している人、Titanium Mobile という名前を聞いたことがあるけど実際にどういうものかを知りたい人、Titanium Mobile を使って開発を始めたけどこういう書き方で合っているのか不安な人向けの、概要書兼リファレンスブック的な位置づけにあたります。

Titanium Mobile

Titanium Mobile - Appcelerator

Titanium Mobile を開発、提供している Appcelerator が用意してくれている Web 上のドキュメントは、Titanium Mobile を始めたばかりの人には分かりづらく、「こういうことがしたいんだけどどう書けばいいの?」という時には使いづらいのです。

本書は、そんな Titanium Mobile のドキュメントの弱さを補い、Titanium Mobile とはどういうふうに動作しているのか、こういうことをするときはどう書けばいいのかを学ぶのに最適な本です。

iPhone、Android 向けスマートフォンアプリとはいえ、プラットフォーム SDK が備える機能はとても豊富です。これらの SDK を JavaScript から扱えてしまう Titanium Mobile をよくここまでまとめたなぁという印象の良書です。

スマートフォン開発は、Windows や Mac などの GUI アプリケーションと同様、イベントドリブンモデルの開発になります。そのため、GUI アプリ開発の経験がない人には Titanium Mobile を使って JavaScript で開発を行うと、どうしても戸惑うことが出てくると思います。

本書をとりあえず読んでみて、Titanium Mobile 上で JavaScript で GUI 開発(スマートフォンアプリ開発)ってこういうふうにするんだというのを体感してもらい、リファレンスとしてのお供にされるといいと思います。

本書の対象者は、Titanium Mobile を使って開発を始めたい人、実際に開発を始めたがまとまった情報がほしい人です。Titanium Mobile を使ってとにかく何か作ってみたいひとは、本書内のサンプルを写経してみるといいと思います。

Titanium Mobile を使って開発をしてみたものの、不安が残っている人に最適な一冊です。

続きを読む - Titanium Mobileで開発するiPhone/Androidアプリ (Smart Mobile Developer)

俺のコードのどこが悪い?―コードレビューを攻略する40のルール

俺のコードのどこが悪い?―コードレビューを攻略する40のルール
タイトル
俺のコードのどこが悪い?―コードレビューを攻略する40のルール
著者
藤原 克則
出版社
秀和システム
hamasyou's おすすめ度

本書は、プログラミング後のコードレビューを行う視点で、どういった点を確認すれば良いのかを教えてくれるものです。

ソースコードレビューの目的については本書では触れられていませんが、僕が考えるソースコードレビューの目的は、コードの品質を高めるためです。

テストではソースコードの品質は高められません。単体テストはあくまでも、コードが意図したどおりに書かれているかを確認するものになります。品質は、ソースコードを書くこと(書き直すこと)でしか高められません。

他人の目から見ることで複雑なところがわかる

自分でコーディングしているときは気づきにくい、処理の複雑な部分が他人の目によって明らかになる

他人の経験を生かせる

リファクタリングが必要な部分や、もっとシンプルで効率のよいコードに直せるところを指摘してもらえる

本書では、こういった他人の目から見たコードの注意点を勉強できるものになっています。

続きを読む - 俺のコードのどこが悪い?―コードレビューを攻略する40のルール

WEB+DB PRESS Vol.61

WEB+DB PRESS Vol.61
タイトル
WEB+DB PRESS Vol.61
著者
WEB+DB PRESS編集部
出版社
技術評論社
hamasyou's おすすめ度

Titanium Mobile で始める、iPhone / Android アプリ開発!

はてなの倉井さん(r_kurain)マウントポジションとで特集『実践!Titanium JavaScriptでiPhone/Android本格アプリ開発』を書かせていただきました。Titanium の特集です。

iPhone / Android でアプリを作りたいけど二の足を踏んでいた方、最近 Titanium という言葉をよく聞くけど何なんだろう?と思っていた方、おすすめです!

続きを読む - WEB+DB PRESS Vol.61

[Web開発者のための]大規模サービス技術入門 ―データ構造、メモリ、OS、DB、サーバ/インフラ

[Web開発者のための]大規模サービス技術入門 ―データ構造、メモリ、OS、DB、サーバ/インフラ
タイトル
[Web開発者のための]大規模サービス技術入門 ―データ構造、メモリ、OS、DB、サーバ/インフラ
著者
伊藤 直也 (著), 田中 慎司 (著)
出版社
技術評論社
hamasyou's おすすめ度

大規模サービスの運営、大変だということは分かっていても、じゃあ実際にどういうふうに大変なのか。実際に体験してみないとこの大変さはわからないと思います。

でも、実際に大規模サービスの開発・運営に携わることになったら!?

本書は、はてなで実際に運用されているサービスを元に、大規模サービス技術のノウハウを解説しています。実際にはてなのインターンシップで講義資料として使われているものがベースになっているので、分かりやすくかつ、実用的です。

Web サービスはいつユーザ数が爆発するかわからないという面白さがある一方、きちんとサービスのノウハウがないとシステムダウンにすぐに繋がってしまうという怖さがあります。

すべてのWeb サービス開発エンジニアにおすすめです。本書で本質的な知識を得て、準備万端にしておくと良いと思います。

続きを読む - [Web開発者のための]大規模サービス技術入門 ―データ構造、メモリ、OS、DB、サーバ/インフラ

iPhoneのオモチャ箱 iPhone SDKプログラミング

iPhoneのオモチャ箱 iPhone SDKプログラミング
タイトル
iPhoneのオモチャ箱 iPhone SDKプログラミング
著者
徳井 直生 (著), 岡村 浩志 (著), 笠谷 真也 (著), 深津 貴之 (著), 青木 太臣 (著), 大宮 聡之 (著), 瀬尾 浩二郎 (著), バスケ (著), 宮川 義之 (著)
出版社
ワークスコーポレーション
hamasyou's おすすめ度

本書は、iPhone アプリを実際に作っている著者の方が、実体験やノウハウをもとに執筆されたものが集まっています。

iPhone とはなんなのか、iPhone アプリはどういうもので、どうあると面白いのか、自分たちはどう考えるのか、こういう機能をもったアプリを作るときはこうやって自分たちは作った。そういう話がたくさん載っています。

実際に iPhone アプリを始めて見たい人は、本書の姉妹本である『ユメみるiPhone ―クリエイターのためのiPhone SDKプログラミング』から読み始めると良いと思います。それから実際に自分で手を動かしてみて、「アレ?こういう機能ってどうやって実装したらいいのかな?」という疑問が湧いてきたら本書を読むと良いと思います。

章ごとに筆者が違うし、紹介している技術やライブラリも違うので、iPhone アプリ開発を体系的に学ぶのには適していませんが、こういうことがしたい!という目的がある人は、本書に解決の糸口を見出しすことができるかもしれません。

読みやすいですし、チュートリアル的に書かれているところもあり理解しやすいです。なかなかオススメの一冊です。

続きを読む - iPhoneのオモチャ箱 iPhone SDKプログラミング

Rubyベストプラクティス -プロフェッショナルによるコードとテクニック

Rubyベストプラクティス -プロフェッショナルによるコードとテクニック
タイトル
Rubyベストプラクティス -プロフェッショナルによるコードとテクニック
著者
Gregory Brown (著), 高橋 征義 (監訳), 笹井 崇司 (翻訳)
出版社
オライリージャパン
hamasyou's おすすめ度

本書は、Ruby プログラミングの中級者向け指南書のようなものです。様々なコーディングテクニック(例えば、順序付き引数の使いどころ、ブロックの使い方、メソッド名のつけ方、メタプログラミング、関数型プログラミングテクニック、プロジェクトでRubyを使う際の慣習などなど)が満載です。

さすがオライリーといえる深い内容になっていて、Ruby を始めたばかりの人よりは、一通り Ruby でプログラミングをしたことがある人、Ruby を使いこなせているのか不安な人が読むと良いと思います。

今すぐ使えるテクニック!とはちょっと違うかもしれませんが、Ruby の動的な振る舞いや柔軟な拡張性を理解してさらに Ruby を使いこなすための一冊になると思います。

なお、Ruby1.9に対応していますので、サンプルコードは Ruby1.9で動きますし、最新 Ruby ではどうするの?を一発で解決できるようになっています。

続きを読む - Rubyベストプラクティス -プロフェッショナルによるコードとテクニック

メタプログラミングRuby

メタプログラミングRuby
タイトル
メタプログラミングRuby
著者
Paolo Perrotta (著), 角征典 (翻訳)
出版社
アスキー・メディアワークス
hamasyou's おすすめ度

Ruby が人気のあるプログラミング言語である理由のひとつに、強力なメタプログラミングがあると思います。Ruby の本当の力を知るのは、このメタプログラミングを理解したときだとも思います。

本書は、Ruby の内部動作をきちんと説明した上で、メタプログラミングの説明をしてくれます。とても丁寧な説明で、少しでもプログラミングの知識があれば理解できる文章になっています。

プログラミング能力を高めるひとつの方法に、良いソースコードを読むことというのがあります。Ruby で書かれたフレームワークやライブラリのソースコードを読むと、なんでこんな動作になるんだろう?という疑問や、どうしてこんな風に書けるのだろう?という疑問が湧いてきます。

本書を読むと、そういった疑問の一つ一つが本当に紐を解くように理解できるようになります。Ruby の基礎を勉強した初級者が中級者になろうと思ったときに、ぜひ読むべき本だと思います。

続きを読む - メタプログラミングRuby

mixiアプリをつくろう!OpenSocialで学ぶソーシャルアプリ

mixiアプリをつくろう!OpenSocialで学ぶソーシャルアプリ
タイトル
mixiアプリをつくろう!OpenSocialで学ぶソーシャルアプリ
著者
神部 竜二 (著)
出版社
ソーテック社
hamasyou's おすすめ度

本書は、mixiアプリを作りながら OpenSocial プラットフォームを学ぶ入門書です。日本でソーシャルアプリといえば、mixi、モバゲー、GREE などが挙がりますが本書ではその中でも mixi アプリ開発の手順や作り方、作る際のポイントなどを解説しています。

ソーシャルアプリ開発というとまずは SNS (ソーシャル・ネットワーキング・サービス)を立ち上げ無ければならないと考えがちですが、mixi、モバゲー、GREE などの SNS ですでに成功しているところから、これらの SNS で動くアプリケーションを開発するための API や開発環境などが提供されています。

本書は、ソーシャルアプリケーション開発が初めての人やソーシャルアプリって何ができるの?という人向けになっています。そこそこボリュームのあるサンプルを作りながら、ソーシャルアプリってこんなことができるんだ!?ということを学んでいける用になっています。

続きを読む - mixiアプリをつくろう!OpenSocialで学ぶソーシャルアプリ

今まで書評を書いた本(165冊)


Index of all entries

Home

Search
Feeds
access

access counter

Return to page top