ASAHIネット(
[URL] )のjouwa/salonから。
---
「Reactビギナーズガイド」のお買い上げがあって、JavaScriptのReact(いろんなReactがあるので、ReactJSと書くことにする)関係、そして、Reactive Programming関係をまとめようと思ったが、ReactJS関係は、昨年から今年にかけて、洋書は、あまりに出すぎて、情動失禁状態。\(^O^)/
なので、ReactJSは、股の機械にして、今回は、もっと原理的、根本的、本質的なところ、データフローやReactive Programmingの解説本を。
原理的、根本的なところ、本質的なところが理解できれば、ReactJSなんてのは、小手先の話なので、すぐ理解できるはず。\(^O^)/
なお、ReactJSの数少ない日本語書籍は、いずれも、オライリー・ジャパン。
[URL]
Reactビギナーズガイド ―コンポーネントベースのフロントエンド開発入門 単行本(ソフトカバー) 〓 2017/3/11
Stoyan Stefanov (著), 牧野 聡 (翻訳)
オライリー・ジャパンにある紹介。
[URL]
Reactビギナーズガイド
――コンポーネントベースのフロントエンド開発入門
[URL]
入門 React ―コンポーネントベースのWebフロントエンド開発 大型本 〓 2015/4/3
Frankie Bagnardi (著), Jonathan Beebe (著), Richard Feldman (著), Tom Hallett (著), Simon HOjberg (著), Karl Mikkelsen (著), 宮崎 空 (翻訳)
オライリー・ジャパンにある紹介。
[URL]
入門 React
――コンポーネントベースのWebフロントエンド開発
さて、原理的、根本的、本質的な話のこと。
関数型言語のブーム(Functional Programming, FP)があり、一昨年くらいから、
リアクティブプログラミング(Reactive Programming, RP)
関数型リアクティブプログラミング(Functional Reactive Programming, FRP)
が、話題になってきて、RxJSやRxJavaもあちこちで紹介されるようになった。
それで、当時、気になって、調べた。
ぼくの結論は、
「Reactive Programmingは、データフローマシンのソフトウェア版」
「Reactive Programmingは、データフローマシンのソフトウェアによる再発明」
いずれにせよ、データフローのサブセット、一部の概念。
データフローという、Reactive Programmingより、もっと原理的、根本的、本質的で広い概念のうち、一部を取り出して、ソフトウェアで実装したものが、Reactive Programming。そして、ReactJSになると、さらにその中で、ウェブアプリのフロントエンド部分に絞って使ったもの。というのが、ぼくの理解。
要は、原理的、根本的、本質的な部分である、データフローがわかれば、ほかは、一丁上がり。\(^O^)/
原理的、根本的、本質的な話として、今から35年から40年くらい前、1970年代から1980年代、ぼくの学生時代、非ノイマンアーキテクチャのマシンや、Lispマシン、Prologマシンといった高水準言語マシンの研究が盛んだった。
そういう研究の中に、データフローマシンもあった。
関連:
[URL]
IBMのワトソン(Watson)も、Prologで動いている\(^O^)/
[URL]
超漢字、英語、エスペラント語対応キット無償提供。映画「TRON LEGACY」
データフローマシンは、クロックで同期するマシンではなく、非同期動作のマシン。クロックレスコンピュータとも言われていた。
研究の背景は、クロックを上げて高速化する手法は、いずれかの将来、クロック周波数の上限によって、性能が頭打ちになる。だから、クロックがない非同期動作のマシンが必要になるというわけ。
セコメントをする