本書はRubyを使ったメタプログラミングについて解説する書籍です。メタプログラミングとは、プログラミングコードを記述するコードを記述することを意味します。前半では、メタプログラミングの背景にある基本的な考えを紹介しながら、動的ディスパッチ、ゴーストメソッド、フラットスコープといったさまざまな「魔術」を紹介します。後半では、ケーススタディとしてRailsを使ったメタプログラミングの実例を紹介します。今回の改訂では、Ruby 2とRails 4に対応し、ほぼすべての内容を刷新。Rubyを使ったメタプログラミングの魔術をマスターし、自由自在にプログラミングをしたい開発者必携の一冊です。 『メタプログラミングRuby 第2版』目次 読者の声 序文 はじめに Ⅰ部 メタプログラミングRuby 1章 頭文字M 1.1 ゴーストタウンと市場 1.2 メタプログラマのボブの物語 1.2.1 ボブの最初の試
機能毎にプロセスを分割し、それらを別個の権限のもとで実行することで、脆弱性があった場合の影響を抑え込むというのは、一定以上の規模をもつプログラムでは、しばしば見られるデザインパターンです。 qmailは、そのような設計がなされたメール配送デーモンとして名高いですし、OpenSSHもまた、認証プロセスと通信プロセスを分離することで、外部との通信を担当するコードにバグがあったとしても、ルート権限が奪われないように設計されています(参照: Privilege Separated OpenSSH)。 一方で、OpenSSLにはそのような権限分離は実装されていません。Heartbleedの際にサーバの秘密鍵が漏洩したのも、秘密鍵の取り扱いと、その他の通信の取り扱いを同一のメモリ空間の中で行っていたからだと考えることができます。 ないのなら、自分で作ればいいじゃない…ということで作りました。それが、N
子どもの話を聞いてあげたい。子どもの気持ちをくみ取ってあげたい。 そういう思いはあるものの、忙しくてつい「あれやったの?」「これやったの?」という殺伐とした会話ばかりだったり、「早くしなさい!」「何回言ったら分かるの!?」と感情的になってしまったりすることはありませんか? 心理コンサルタントとして、母親向け講座などで活躍する根本千里さんは、1枚の紙と鉛筆で子どもと心を通わせる「図解子育て」を推奨しています。たった5分で子どもと心を通い合わせ冷静にコミュニケーションが取れるようになる1枚の「図」や、その使い方について、2回に分けて紹介します。 1枚のチャートを順番に埋め合わせするだけ 「図解子育て」は図解を使って子どもとコミュニケーションすることで、お互いにどう思っているのかを整理して伝え合い、お母さんにとっても子どもにとっても心地よい選択を導き出すことをサポートする方法です。 子どもに何回
» 【衝撃レシピ】どん兵衛をレンジで加熱するとほぼ生麺になる! モッチモチのツ〜ルツルでマジ凄い!! 特集 『人間は、道具を使う動物である』これはイギリスの有名な思想家「カーライル」が残した言葉だ。今回は人類の偉大な発明品を使って、カーライルもビックリな 「どん兵衛」の調理法をご紹介したいと思う。 この方法で「どん兵衛」を調理すると、麺は生麺の様なモッチモチのツ〜ルツルに、油揚げはしっとりふっくらし、まるで別次元の仕上がりになるのだ! 調理に必要なものは「どん兵衛」「どんぶり」「熱湯」そして人類の偉大な発明品「ラップ」と「電子レンジ」のみ。作り方は以下のとおり。 ・レンジにかけるだけでほぼ “生” に ご紹介する調理法は “熱湯を入れて500Wのレンジで3分間加熱する” 非常に簡単なもの。これだけで「どん兵衛」がほぼ “生” のような仕上がりになる。ただ、いくつかポイントがあるので説明しよ
https://github.com/google/kati kati について、ドキュメント書こう…と思っていたのですがなかなか進まないので、とりあえず日本語で書いてみることにしました。何書くかがあまり明確じゃないテーマなので、何書くか考えるのと英語考えるのを両方同時にやるのが少し大変で。 動機 kati は GNU make のクローンです。いずれ完全なコンパチになると嬉しいですが、なかなか難しいだろうと個人的には諦めています。用途に対して実用的ならば良いかなと。 動機としては、 Android platform のビルドシステムが、なかなかシュールな GNU make 黒魔術で構成されていて、 make が実際になんかしはじめるまでが遅かったので、そこを高速化したいというものでした。 ビルドシステムが遅いという時、まずだいたいヌルビルドとフルビルドの2点を考えます。ヌルビルドてのは生
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く