JavaScriptで学ぶ関数型プログラミング

[cover photo]
TOPICS
Web , JavaScript
発行年月日
PRINT LENGTH
352
ISBN
978-4-87311-660-0
原書
Functional JavaScript
FORMAT
Print PDF EPUB
Ebook
3,300円
Ebookを購入する
Print
3,300円

本書はJavaScriptを使って関数型プログラミングを学ぶ書籍です。関数型言語としてJavaScriptを理解し、使用することにより、コードがより洗練され、美しく、そして読みやすいものになることを目的としています。JavaScriptビルトインのデータ型を上手に利用するための基本知識やJavaScriptにおける関数の持つ特性など、関数型プログラミングの技術とその考え方について解説します。また実際のJavaScriptコーディングに関数型プログラミングのエッセンスを加えるポイントをサンプルを使って丁寧に説明します。関数型プログラミングに精通した著者が書き下ろした本書はテクニックを増やし、コーディングのイマジネーションを広げたいエンジニア必携の一冊です。

目次

Jeremy Ashkenasによるまえがき
Steve Vinoskiによるまえがき
訳者まえがき
はじめに

1章 関数型JavaScriptへのいざない
    1.1 JavaScriptに関する事実
    1.2 関数型プログラミングを始めるために
    1.3 Underscoreについて
    1.4 まとめ

2章 第一級関数と作用的プログラミング
    2.1 第一級要素としての関数
    2.2 データ思考
    2.3 まとめ

3章 JavaScriptにおける変数のスコープとクロージャ
    3.1 グローバルスコープ
    3.2 静的スコープ
    3.3 動的スコープ
    3.4 関数スコープ
    3.5 クロージャ
    3.6 まとめ

4章 高階関数
    4.1 引数として関数をとる関数
    4.2 他の関数を返す関数
    4.3 すべてを結集:オブジェクトバリデータ
    4.4 まとめ

5章 関数を組み立てる関数
    5.1 関数合成の基礎
    5.2 変異は低レイヤーでの操作
    5.3 カリー化
    5.4 部分適用
    5.5 並べた関数を端から端までcompose関数でつなぎ合わせる
    5.6 まとめ

6章 再帰
    6.1 自身を呼ぶ関数
    6.2 再帰多すぎ!(トランポリンとジェネレータ)
    6.3 再帰は低レイヤーでの操作
    6.4 まとめ

7章 純粋性、不変性、変更ポリシー
    7.1 純粋性
    7.2 純粋と不純を分離する
    7.3 不変性
    7.4 変更コントロールのポリシー
    7.5 まとめ

8章 フローベースプログラミング
    8.1 チェーン
    8.2 パイプライン
    8.3 データフロー対コントロールフロー(制御構造)
    8.4 まとめ

9章 クラスを使わないプログラミング
    9.1 データ指向
    9.2 Mixin
    9.3 }).call("Finis");

付録A 世の中の関数型JavaScript
    A.1 JavaScriptの関数型ライブラリ
    A.2 Functional JavaScript
    A.3 JavaScriptをターゲットにした関数型プログラミング言語

付録B 注釈付き参考書目
    B.1 書籍
    B.2 プレゼンテーション
    B.3 ブログ
    B.4 論文

付録C 本書に登場するUnderscoreの関数

索引