【感想】『速習React』/『速習TypeScript』
夏休み終了!そして恐怖の熱中症危険日!
ひとつ前の記事、はてなブックマークに載ったこともあり多数のアクセスありがとうございました。
最近は画像ソフトのAffinity Designerを導入して試しにアイキャッチ画像を作ったりしているのですが、ネタを仕込んだ甲斐がありました……(おい)
夏・イケてるフロントエンドエンジニアの気分に
しばらく夏季休暇があったので、ずっと在宅テレワークが続いているのでなんかあまり差がない感じですが、3日ほどは平日普通に過ごしました。JavaScript完全に理解した……のお気持ちになったのでこの流れに乗って、UdemyでReactの講座をやったりしてみました。
【はむ式】フロントエンドエンジニアのための React ・ Redux アプリケーション開発入門 | Udemy
会社で契約しているUdemy for Businessから受けられる講座の範疇だったのでタダです。いえーい。
この講座『フロントエンドエンジニアのための React ・ Redux アプリケーション開発入門』はベストセラーになっている有名なやつですが、一通りReactアプリを作れて結果もGitHubに上げていきます。達成感も得られてけっこうお勧めです。
いまさら感満載ですが、長らく草が一本も生えていない大荒野だった自分のGitHubリポジトリにやっと草が生えました。これを検知してくれた LAPRAS のスコアも上がっておトクです。
GitHubにものが上がるとちゃんと説明やREADMEを書こうという気になったり、なんだかんだ達成感がありますね。なるほど、人はこうやって草を生やしていくものなのか……
上の講座は2018-2019年のものなので、Reactの実体はクラスコンポーネントで実装、状態遷移のステートはreact-reduxと関連ライブラリを使った定番的な構成になっています。
2019年末~2020年現在になるとまた大きな変化があって、クラスはやめて関数型コンポーネントで実装+React Hooksでステートの問題を解決、が今のReact開発のトレンドだそうですね。このへんは商業本には載ってないのでWebの資料で理解しました。このへんもそのうち試しに作ってみるか、Udemyの講座でやってみようかと思っています。
この流れで一緒に読んだのが次のリファレンス本でした。
『速習 React』
電子版のみの本を購入。フロントエンドJavaScriptフレームワークの最有力候補、Facebook謹製のReactの要点をまとめた短いリファレンス本です。2018年の本です。著者は技術書では安心のWINGSプロジェクトの山田祥寛さん。
151ページの薄い本なので簡潔に書いてあってよいですね。Reactの基本部分はだいたい一式も裏されています。フォーム内のHTML要素とプログラム側のデータの同期、繰り返しの一覧表示処理なんかは同じくJSフレームワークのVue.jsのほうが若干きれいに書けるかなあと思ったり。
最後の方にはReactのライフサイクルメソッドとルーティングの話もあります。簡潔に書いてあるのでリファレンス用に良いですね。
React関連の本
有名な割に商業本だと、昔の本はけっこうあるけど最新の定番本が意外に見当たらない感じのReact関連。設計や関連ライブラリなどプロユース向けの一式載った本だと最新は、2018年の『React開発 現場の教科書』でしょうか。
2018年の『React入門 React・Reduxの導入からサーバサイドレンダリングによるUXの向上まで』はフロントエンドに入門した時に目を通したのですが、今見るとAmazonでは誤植が多いとの感想が多いです。
技術同人誌なら、有名なものだとくるみ割り書房さんの『りあクト!』シリーズがなんとシリーズ3千部の快挙。変化が速いフロントエンド界隈は、同人誌を追った方が速いのかもしれませんね。
Reactでなくクロスプラットフォーム開発のRaect Nativeなら、2020年4月に最新の『React Native ~JavaScriptによるiOS/Androidアプリ開発の実践』が出ています。
『速習 TypeScript 第2版』
こちらもついでに購入。電子書籍のみのリファレンス本ですが700円と安いし短いので手軽に読めます。こちらも安心のWINGSプロジェクトの山田祥寛さんの本。
TypeScriptというと必ず出てくる主要JSフレームワークの話は対象外、あくまでTypeScriptの仕様に特化した本になっています。最新のTypeScript3.8に対応、JavaScript自体がある程度わかる人なら引っかかることなく読めます。巻末にはTS開発でデファクトなVSCodeでの使い方、設定ファイルのtsconfig.jsonのリファレンスもあり。
2020年3月に出た最新の本なので、実際の開発の横に置いておくのにおすすめです。
JavaScriptのスーパーセットであるTypeScript言語については、サマリは別の本などで見ていましたが着実に進化を続けているなと思いました。型でもany型の他に今はunkown型というのもあるのですね。JavaScriptを書く時にちょっとめんどいなーと思いつつ念の為チェックを入れていたnullやundefined周りをよろしくやってくれる ?
や ??
構文もあります。クラス記法もスコープでprivateやpublicも書けるし、privateでさらに #
という書き方もあって面白い。列挙型の定数クラスも書けます。
JSがES2015以降も進化を続けていても、安定したサーバーサイド(≒バックエンド)の言語に比べてちょっと痒い所に手が届かない的な感じだったところが、なんかもうTypeScriptを使うと全部うまいことやれるんじゃないか?という感じになってきました。
特に他の言語でしっかりクラス設計をして活用できるレベルの人、アーキテクチャを検討してチーム内に展開できるレベルの人がチームメンバーにいると、ある程度の規模があるJS開発の現場ならTypeScript導入によってかなり改善するじゃないかな?と思いました。
Microsoftのお墨付きだけあってVSCodeでの開発体験がかなり快適なのはよく聞きますし、フレームワークを使った開発ではReact+TypeScriptのパターンはよく聞きます。もうすぐリリースされるはずのVue.js3.0でもTypeScriptサポートは強化されるとのこと。そろそろ何かで試してみようかな。
TS関連の本
きちんとした厚い本なら、オライリー本がついに翻訳された『プログラミングTypeScript ―スケールするJavaScriptアプリケーション開発』が2020年3月。英語版の原著は2019年5月。
こちらは物理本だけとなっています。Twitterでよく購入報告を見かけます。
プログラミングTypeScript ―スケールするJavaScriptアプリケーション開発
- 作者:Boris Cherny
- 発売日: 2020/03/16
- メディア: 単行本(ソフトカバー)
表紙がファンタジー物の洋ゲーパッケージっぽい『実践TypeScript』が2019年6月。ディー・エヌ・エーの現場のフロントエンジニアの方によるガッツリした本です。
他は商業本だと古いものがちょっとあるぐらいですね。TS関連も技術同人誌だと賑やかなので、そちらを追うのも面白いと思います。