サイト内検索

詳細検索

ヘルプ

セーフサーチについて

性的・暴力的に過激な表現が含まれる作品の表示を調整できる機能です。
ご利用当初は「セーフサーチ」が「ON」に設定されており、性的・暴力的に過激な表現が含まれる作品の表示が制限されています。
全ての作品を表示するためには「OFF」にしてご覧ください。
※セーフサーチを「OFF」にすると、アダルト認証ページで「はい」を選択した状態になります。
※セーフサーチを「OFF」から「ON」に戻すと、次ページの表示もしくはページ更新後に認証が入ります。

新規会員70%OFFクーポン

  1. hontoトップ
  2. 電子書籍
  3. コンピュータ・IT・情報科学
  4. プログラミング言語
  5. 技術評論社
  6. WEB+DB PRESS plus
  7. APIデザインケーススタディ ――Rubyの実例から学ぶ。問題に即したデザインと普遍の考え方
  • みんなの評価 5つ星のうち 4.6 4件
  • あなたの評価 評価して"My本棚"に追加 評価ありがとうございます。×
  • カテゴリ:一般
  • 販売開始日: 2018/11/14
  • 出版社: 技術評論社
  • ISBN:978-4-7741-7802-8

読割 50

読割50とは?

読割50とは?

hontoネットストアおよび、丸善・ジュンク堂・文教堂の提携書店にて対象の紙書籍を購入すると、同一の電子書籍が紙書籍の購入から5年間、50%OFFで購入できるサービスです。
購入時点で電子書籍が未発売でも、紙書籍の購入時期にかかわらず、電子書籍の発売後5年間、50%OFFで購入できます。

または読割50のアイコンがついている商品が対象です。

一部、対象外の出版社・商品があります。商品ページでアイコンの有無をご確認ください。

  • ※ご利用には、honto会員登録が必要です。
  • ※書店店頭でのお買い物の際は、会計時にレジにてhontoカードをご提示ください。
  • ※hontoが提供するサービスで、販売価格の50%OFFを負担しています。

読割50について詳しく見る

一般書

電子書籍

APIデザインケーススタディ ――Rubyの実例から学ぶ。問題に即したデザインと普遍の考え方

著者 田中 哲

(概要)Rubyを題材に,APIデザインの各種事例を取り上げた技術解説書。実用のための言語のAPIデザインには,使いやすさ,一貫性,速度,互換性など,さまざまな点でバラン...

もっと見る

APIデザインケーススタディ ――Rubyの実例から学ぶ。問題に即したデザインと普遍の考え方

税込 3,058 27pt

ワンステップ購入とは ワンステップ購入とは

ほしい本に追加(値下がりすると通知がきます)

ご利用中のデバイスが対応しているかご確認ください

  • iOS
  • Android
  • Win
  • Mac

対応デバイスごとのコンテンツタイプやファイルサイズヘルプ

オンライン書店e-honとは

e-hon

hontoは「オンライン書店e-hon」との連携を開始しました。
「e-hon」は書籍、雑誌、CD、DVD、雑貨といった多岐に渡る商品を取り扱う総合オンライン書店です。130万点以上の取り扱い点数、100万点以上の在庫により、欲しい商品を買い逃しません。honto会員向けにお得なキャンペーンを定期的に実施しています(キャンペーンに参加するにはMy書店をhontoに設定して頂く必要があります)。
・まだe-honの会員ではない方
下記リンクからe-honへ遷移し会員登録する際に自動でhontoがMy書店に設定されます。
・既にe-honをご利用いただいている方
「マイページ」-「会員情報の変更」-「My書店の変更」に進み、検索窓に「honto」と入力し、検索結果画面で会員登録ボタンを押すことでMy書店がhontoに設定されます。

e-honで紙の本を探す

※外部サイトに移動します。

対応デバイス毎のコンテンツタイプやファイルサイズ

対応デバイス コンテンツタイプ ファイルサイズ
iOS EPUB 10.7MB
Android EPUB 10.7MB
Win EPUB 10.7MB
Mac EPUB 10.7MB

APIデザインケーススタディ Rubyの実例から学ぶ。問題に即したデザインと普遍の考え方 (WEB+DB PRESS plusシリーズ)

税込 3,058 27pt

予約購入とは

まだ販売されていない電子書籍の予約ができます。予約すると、販売開始日に自動的に決済されて本が読めます。

  • 商品は販売開始日にダウンロード可能となります。
  • 価格と販売開始日は変更となる可能性があります。
  • ポイント・クーポンはご利用いただけません。
  • 間違えて予約購入しても、予約一覧から簡単にキャンセルができます。
  • honto会員とクレジットカードの登録が必要です。未登録でも、ボタンを押せばスムーズにご案内します。

予約購入について詳しく見る

ワンステップ購入とは

ワンステップ購入とは、ボタンを1回押すだけでカートを通らずに電子書籍を購入できる機能です。

こんな方にオススメ

  • とにかくすぐ読みたい
  • 購入までの手間を省きたい
  • ポイント・クーポンはご利用いただけません。
  • 間違えて購入しても、完了ページもしくは購入履歴詳細から簡単にキャンセルができます。
  • 初めてのご利用でボタンを押すと会員登録(無料)をご案内します。購入する場合はクレジットカード登録までご案内します。

キャンセルについて詳しく見る

商品説明

(概要)
Rubyを題材に,APIデザインの各種事例を取り上げた技術解説書。実用のための言語のAPIデザインには,使いやすさ,一貫性,速度,互換性など,さまざまな点でバランスの良さが求められます。それらの点で,長きにわたり定評がある言語の一つは「Ruby」ではないでしょうか。本書ではRubyの事例をベースに,APIデザインの過程と考え方を丁寧に解説。言語の中核機能を担う「I/O」「ソケット」「プロセス」「時刻」「数,文字列」をカバーし,APIデザインの核心に迫ります。熟達のRubyコミッタによる全面書き下ろし。

(目次)

第1章 I/O

  • 1.01 RubyのIOクラスとC言語のstdioライブラリ ――プログラマが知っている名前を利用する
  • 1.02 feof関数とIO#eof?メソッド ――過去にEOFに出会ったのか,それとも今現在EOFなのか
  • 1.03 IOバッファが空でなければsysreadは例外 ――明らかに危険で役に立たない動作は禁止する
  • 1.04 EOFフラグの除去 ――モードで挙動が変化するのは良くない
  • 1.05 0バイト読んだときに何を返す? ――用例を探して良い挙動を判断する
  • 1.06 selectとstdioのバッファ ――無理をしても使いやすくする
  • 1.07 readpartial ――I/Oを多重化したときに適切なメソッド
  • 1.08 ノンブロッキングI/O ――モードで挙動が変化するのは良くない
  • 1.09 ノンブロッキングI/Oメソッドの導入 ――read_nonblockやwrite_nonblock
  • 1.10 PTY.open ――ptyを利用するためのプリミティブ
  • 1.11 IOによるエンコーディング変換 ――正しく処理すべだが,速度も重要
  • 第2章 ソケット

  • 2.01 Addrinfoクラスの導入 ――関連して扱う情報をまとめてオブジェクトにする
  • 2.02 Socketクラスの勧め ――使いやすく,かつ,低レベルな操作も可能
  • 2.03 Socket.ip_address_list ――自ホストのIPアドレスを正しく簡単に得る
  • 2.04 ソケットオプション ――関連して扱う情報をまとめてオブジェクトにする
  • 2.05 send_ioとrecv_ioによるfd passing ――ポータブルで引数の少ないAPI
  • 2.06 recvmsgとsendmsg ――多機能なシステムコールを工夫して提供
  • 2.07 getpeereid ――簡単確実なユーザ認証
  • 第3章 プロセス

  • 3.01 プロセス起動プリミティブspawnメソッド ――ポータブルで高機能で簡単なプロセス起動
  • 3.02 close-on-execフラグ ――意図しないfdの継承を防止する
  • 3.03 Open3.popen3の修正 ――互換性を保って問題を解決する
  • 3.04 open3における標準エラー出力の扱いと
  • 3.05 open3のパイプラインサポート ――パイプで接続したプロセス起動
  • 3.06 双方向popenのソケットによる実現 ――ソケットペアによる実装の失敗
  • 3.07 forkは他のスレッドを子プロセスに残さない ――用途に適した挙動が重要
  • 第4章 時刻

  • 4.01 POSIXの時刻機能とRubyのTimeクラス ――プログラマが知っているPOSIXの機能を提供する
  • 4.02 Time.utcと閏秒 ――POSIXが提供していなくても必要なら提供する
  • 4.03 Time#monとTime#ydayの範囲 ――実際の用法を検討してAPIをデザインする
  • 4.04 時刻に関するOSの制限 ――本質的でない制限を取り除く
  • 4.05 localtimeの逆関数 ――mktimeに依存しない
  • 4.06 localtimeの外挿 ――2038年問題への対応
  • 4.07 UTCからの時差と夏時間 ――対象を確実に表現するデータ構造
  • 4.08 UTCからの時差を指定 ――メンテナンスを増やさない範囲で表現を広げる
  • 4.09 秒未満の表現 ――有理数による表現
  • 4.10 タイムゾーンの略称 ――問題が多過ぎるので避ける
  • 4.11 time.rbが提供するメソッドの意図 ――正しい方が簡単になるようにしておく
  • 4.12 Time.localとTime.utcの引数順 ――あからさまに奇妙だが互換性のために残っている
  • 第5章 数,文字列

  • 5.01 Math.gammaのメソッド名 ――慣習は無視することもある
  • 5.02 Integer#nonzero?の返り値 ――意外な動作だけど役に立つ
  • 5.03 有理数のビット演算 ――一貫性を拡張するのは無理かもしれない
  • 5.04 Integer#bit_lengthメソッド ――用途と前例を調べる
  • 5.05 文字列中の式展開構文の一貫性 ――一貫性を優先
  • 5.06 URI.encode_www_formとURI.decode_www_form ――間違いにくいAPI
  • 関連キーワード

    あわせて読みたい本

    この商品に興味のある人は、こんな商品にも興味があります。

    前へ戻る

    • 対象はありません

    次に進む

    この著者・アーティストの他の商品

    前へ戻る

    • 対象はありません

    次に進む

    小分け商品

    前へ戻る

    • 対象はありません

    次に進む

    この商品の他ラインナップ

    前へ戻る

    • 対象はありません

    次に進む

    みんなのレビュー4件

    みんなの評価4.6

    評価内訳

    • 星 5 (2件)
    • 星 4 (2件)
    • 星 3 (0件)
    • 星 2 (0件)
    • 星 1 (0件)

    2015/12/13 16:34

    投稿元:ブクログ

    レビューを見る

    2015/12/30 22:52

    投稿元:ブクログ

    レビューを見る

    2016/05/21 15:11

    投稿元:ブクログ

    レビューを見る

    2017/05/04 23:49

    投稿元:ブクログ

    レビューを見る

    ×

    hontoからおトクな情報をお届けします!

    割引きクーポンや人気の特集ページ、ほしい本の値下げ情報などをプッシュ通知でいち早くお届けします。