出版社内容情報
関数型プログラミングの基本的な考え方から教えます!
関数型プログラミングに関する書籍は、これまでいくつか出版されています。その中でも本書は、下記の2点を特長とし編纂しました。
・初心者にもわかりやすいように、多くの誌面を割いた。
・関数型プログラミングを、多くのユーザに使われているJavaScriptで動作を解説。
本書は、何らかのプログラミング経験のある読者を想定しています。JavaScript で簡単なプログラムを書いたことがある人ならば、問題なく読み進めることができるでしょう。またJavaScript を知らなくても、他の言語を使ったことのある人であれば、読み進めていくうちに本書で紹介したコードは理解できるでしょう。
関数型プログラミングは、SwiftやKotlin(コトリン)など最近注目されているライトウェイトな開発言語では、必須の技法となっています。
是非、本書を契機に新しいプログラミング手法を身につけてください。
第?部 関数型プログラミングの基礎
第1章 「計算」とは
1.1 「計算」のモデル
1.2 命令型モデル
1.3 関数型モデル
第2章 なぜ関数型プログラミングが重要か
2.1 プログラミング言語における関数の特徴
2.2 関数型プログラミングの特徴
2.3 関数型プログラミングの利点
第?部 JavaScriptによる関数型プログラミングの実践
第3章 心の準備
3.1 DRY原則
3.2 抽象化への指向
3.3 セマンティクスを意識する
3.4 テストに親しむ
3.5 JavaScriptと関数型プログラミング
第4章 データの種類と特徴
4.1 型とは何か
4.2 基本型
4.3 合成型
4.4 変数とデータの関係
4.5 参照透過性の仕組み
第5章 プログラムをコントロールする仕組み
5.1 条件分岐の種類と特徴
5.2 反復処理の種類と特徴
5.3 再帰による反復処理
第6章 関数を利用する
6.1 関数の基本
6.2 関数と参照透過性
第7章 高階関数を活用する
7.1 高階関数とは何か
7.2 カリー化で関数を返す
7.3 コンビネータで関数を組み合わせる
7.4 クロージャーを使う
7.5 関数を渡す
7.6 モナドを作る
第8章 関数型言語を作る
8.1 プログラミング言語の仕組み
8.2 抽象構文木を作る
8.3 環境を作る
8.4 評価器を作る
第?部 付録
第9章 JavaScript環境を準備する
9.1 実行環境を準備する
9.2 テスト環境を準備する
立川察理[タツカワアキミチ]
長瀬嘉秀[ナガセヨシヒデ]
内容説明
「古くからあったけど、なかなか理解できなかった技法」=「関数型プログラミング」を、その基本的な考え方から応用まで丁寧に解説。
目次
第1部 関数型プログラミングの基礎(「計算」とは;なぜ関数型プログラミングが重要か)
第2部 JavaScriptによる関数型プログラミングの実践(心の準備;データの種類と特徴;プログラムをコントロールする仕組み;関数を利用する;高階関数を活用する;関数型言語を作る)
第3部 付録(JavaScript環境を準備する)
著者等紹介
長瀬嘉秀[ナガセヨシヒデ]
株式会社テクノロジックアート代表取締役。1986年、東京理科大学理学部応用数学科卒業。朝日新聞社を経て、1989年に株式会社テクノロジックアートを設立。OSF(OPEN Software Foundation)のテクニカルコンサルタントとしてDCE(Distributed Computing Environment)関連のオープンシステムの推進を行う。OSF日本ベンダ協議会DCE技術検討委員会の主査を務める。現在、株式会社テクノロジックアート代表取締役、トランスコスモス株式会社技術顧問
立川察理[タツカワアキミチ]
東京大学法学部、長崎大学医学部卒業。精神科医。2011年から2014年まで、東京大学医学部医療情報学教室にて多施設共同型電子カルテシステムの研究開発に従事。医師としての業務のかたわら、関数型プログラミングの書籍を執筆(本データはこの書籍が刊行された当時に掲載されていたものです)
※書籍に掲載されている著者及び編者、訳者、監修者、イラストレーターなどの紹介情報です。