※本書の公式ハッシュタグは#naruhounix になります。
関連サイト
原著者による公式ページと訳者らによるサポートページがあります。
日本語版刊行によせて
Ruby は Unix の子供です。私が若い頃にはろくなプログラミング環境がなかったので、満足できるプログラミング環境をはじめて手にしたのは、大学に入学して Unix 環境を使えるようになってからです。それからずいぶん経ちましたが、いまだに Unix 環境で幸せなプログラミングを行なっています。私は Unix は現存する中で最高のプログラミング環境だと信じています。もちろん、やや古びた印象は否めませんし、別の評価軸では、もっと優れた環境が存在していることも知っていますが。
そのように Unix 環境で育った私が設計した言語である Ruby ですから、冒頭で述べた通り「Unix の子供」と言っても言い過ぎではないでしょう。Ruby のあらゆるところはUnixのシステムコールや文化・思想を反映しています。
本書は Ruby を使って Unix のプロセスをはじめとする基本的なプログラミングを解説しています。Unix について学ぶとなると、Unix における代表的言語である C を使うのが普通でしょう。しかし、そうなると、Unix そのものの考え方の他に C のリソース管理や低レベルプログラミングについても同時に学ばなければなりません。しかし、Ruby であればそのような低レベルなことは言語に任せてしまうことができます。事実、本書でも教材として取り上げられている Resqueや Unicorn はそのようにして、Ruby を使って Unix のパワーを最大限に活用するソフトウェアです。
現代のサーバーサイドの標準になっていると言っても過言ではないUnix(特に Linux)のパワーを最大限に活用するため、本書の与える知識はとても役に立つでしょう。それは Ruby 以外の言語を用いたプログラミングにおいても、みなさんがより良いプログラマーになるために有効だと心から信じています。
2013年8月 まつもと ゆきひろ
(この「日本語版刊行によせて」はクリエイティブ・コモンズの表示ー非営利ー継承によって許諾されています)
内容紹介
Ruby on Railsを使ったWebアプリケーションを開発している皆さん! きっと皆さんはRailsアプリならどんどん書けることかと思います。でもちょっと待ってください。日々の開発作業をこなしながら実は「Unixの基礎的なところがおそろかになってるなあ」と不安に感じていたりはしませんか? そこで『なるほどUnixプロセス』です。
本書では、以下のような内容を学べます:
- ファイルディスクリプタって何? どう動いているの?
- デーモンプロセスが必要な場合と、そうではない場合の判断の仕方
- fork(2)を使って子プロセスを生成する、とは?
- プロセスを終了させる方法が4つもある
- スクリプトから外部コマンドを実行する際の懸念事項とその回避方法
- プロセス生成のコストと落とし穴について
- 見よう見まねじゃない、シグナルハンドラの定義の仕方
- ResqueとUnicornの内部ではUnixプロセスをどう扱ってるか
コード例を多数掲載しているのでお手元のCRubyインタプリタで実際に試しながら学べます。オペレーティングシステムを実装するようなプログラマ向けではなくて、Unixをうまいこと使ってプログラミングできるようになりたい人向けの1冊です。
本書を読むのに必要なこと
本書は読者がUnix系OS(Mac OS X, Linux, FreeBSD など)を使っていることを前提にしています。また、コード例はRuby 1.9.xで書かれており、Rubyの基本的な知識があることも前提にしています。
書誌情報
- 著者: Jesse Storimer, 島田浩二(翻訳), 角谷信太郎(翻訳)
- 発行日: 2013-04-25
- 最終更新日: 2016-12-24
- バージョン: 1.1.4
- ページ数: 125ページ(PDF版換算)
- 対応フォーマット: EPUB, PDF, ZIP
- 出版社: 達人出版会
対象読者
自分の書いているWebアプリが動く仕組みを知る手がかりを探しているプログラマ。RubyのKernel#forkやProcessクラスの使い方の背景にある考え方を学んで練度を上げたいRubyist。
著者について
Jesse Storimer
プログラマであり哲学者。 ここ数年はRuby on Railsで開発された世界でも有数な大規模EコマースサイトShopifyにて、難問の解決にあたっている。
Unixプログラミングの世界への旅は、Webのインフラを学ぶところから始まり、順調に続いている。
カナダの田舎、オンタリオに妻と娘とともに暮らしているUnixあごひげ。ブログはjstorimer.com。
島田浩二
(株)えにしテック共同創業者兼代表取締役。一般社団法人日本Rubyの会理事。Ruby札幌発起人。著書に『Ruby逆引きレシピ』(共著、翔泳社)、『プロダクティブ・プログラマ』(監訳、オライリー・ジャパン)がある。
角谷信太郎
(株)永和システムマネジメント勤務。一般社団法人日本Rubyの会理事。著書は『アジャイルサムライ』(監訳、オーム社)、『アジャイルな見積りと計画づくり』(翻訳、マイナビ)など。エクストリームプログラミングの理念である「新たな社会構造」の実現のために自分がやれることをやるための個人事業を2013年4月からはじめました。