ISBN 9784798168326
つくって楽しいJavaScript入門 身近な不思議をプログラミングしてみよう
概要
自然現象のシミュレーションを通じてJavaScriptの基礎を身につける
想定読者
プログラミング未経験で、Webアプリ開発よりも自然・生き物のしくみに興味を持つ学習者。「何を作ればいいかわからない」段階にいる入門者。
こんな人には向いていない
- すでにJavaScriptの基本文法を習得済みで、実務的なフレームワーク活用を求める読者には内容の対象外となる
- WebサイトやSPAの制作スキル習得を目的としている読者は、本書のテーマ(物理シミュレーション・音声・感染モデル)と目的が合いにくい
- 数学・理科の背景なしに即戦力スキルを短期間で身につけたい社会人には進行ペースが合わない可能性がある
読了後にできるようになること
- JavaScriptの変数・条件分岐・ループ・関数といった基本文法を実際に動くプログラムを通じて習得できる
- Canvasを使って雪の結晶や紅葉などのグラフィック描画プログラムを自分で組み立てられる
- カメラ映像から色を判別するプログラムを通じて、リアルタイムデータ処理の概念を理解できる
- 物理法則(放物線運動)をコードで再現し、数値シミュレーションの考え方を実践的に学べる
- 感染症拡散のシミュレーションを実装しながら、確率的モデリングのプログラミングへの応用を体感できる
- 完成したプログラムを改造するレシピが提供されており、好奇心ドリブンで学習を継続するループを作れる
本書のキー概念(章解説)
- 第 1 章 プログラミングって何だろう? — 本書専用のビジュアル環境「Croqujs」の使い方を含む。セットアップと最初の動作確認まで丁寧にガイドされる
- 第 2 章 プログラミングに触れてみよう — Canvas描画の基本操作。抽象的なコード練習ではなく「絵が描ける」という即時フィードバックが動機づけになる
- 第 3 章 JavaScriptの基本を知ろう — 変数・データ型・条件分岐などの文法説明章。ここが本書で最も「教科書的」な部分。先に4章を眺めてから戻ると意図が掴みやすい
- 第 4 章 雪の結晶を描くプログラム — 再帰的な描画ロジックに触れる最初のテーマ。フラクタル的な構造を視覚確認しながらループと再帰の違いを体感できる
- 第 5 章 木の葉を紅葉させるプログラム — 色変化を時間軸で制御する演習。アニメーションの仕組みとタイマー処理を学ぶ章
- 第 6 章 カメラに映った色を判別するプログラム — WebRTC・Canvas APIを組み合わせてリアルタイム入力を処理する。6テーマの中で最もハードウェアに近い内容
- 第 7 章 人の声を再現するプログラム — Web Audio APIを使った音声波形の生成。視覚だけでなく聴覚フィードバックがある点で学習モチベーションを刺激しやすい
- 第 8 章 放り投げたボールの動きを再現するプログラム — 物理法則を数式からコードへ落とし込む演習。STEM的な観点でプログラミングを捉えたい読者に響く章
- 第 9 章 ウイルスが拡散する様子を観察するプログラム — 確率・乱数を使ったモンテカルロ的シミュレーション。社会問題をモデル化するプログラミングの応用可能性を体感できる最終章
ハイライト
- 「雪の結晶ができるしくみ」「感染症が拡がるしくみ」など、知っているようで知らない「身近な不思議」を再現するプログラムを作りながら、JavaScriptプログラミングを楽しく学ぶことができます。(本書の独自性が最も端的に示されている箇所。従来の「Webアプリを作る入門書」との差別化軸がここにある)
- プログラミングをはじめてみたいけれど、「何をつくればいいかわからない」「アプリやウェブサイトにはあんまり興味が持てない」という人はぜひ本書を手に取ってみてください。(本書が想定する読者像を著者自身が明示している部分。購入判断の基準として最も直接的)
編集メモ
Qiita言及記事0件 / 累計likes 0。楽天ランキング情報なし。シグナルが少ないため補完的な選択肢として位置づける。ただし書誌内容の独自性は高く、自然科学・STEM文脈の入門書として差別化された一冊
読む前に押さえておきたいこと
- 特別な前提知識は不要。PCとWebブラウザが使えれば始められる設計になっている
- 中学数学程度の理科・数学知識があると、物理シミュレーション章(8章)や感染モデル章(9章)の理解が深まる
学習のコツ
- 3章(JavaScript基本文法)は読み飛ばしても4〜9章のプログラムは動かせる。詰まったときに3章に戻る逆引き活用が効率的
- 各テーマの末尾に掲載されている「改造レシピ」は必ず試すこと。パラメータを変えた動作確認がそのままデバッグ力の訓練になる
- 6テーマはそれぞれ独立しているため、興味のあるテーマから着手してよい。「感染症シミュレーション」など社会的関心が高いテーマを先に実装すると継続動機が上がりやすい
- 本書に登場するCroqujs環境はブラウザで完結するため、インストール作業のつまずきがない。環境構築で挫折しやすい入門者にとって大きな利点
出版社による内容紹介
自然・生き物のしくみを再現しながら プログラミングを楽しく学ぼう! 本書は、これまでの入門書や教科書とは一味違う、 「自然」や「生き物」のしくみをテーマにしたプログラミング入門書です。 「雪の結晶ができるしくみ」「感染症が拡がるしくみ」など、 知っているようで知らない「身近な不思議」を再現するプログラムを作りながら、 JavaScriptプログラミングを楽しく学ぶことができます。 作成するプログラムは全6テーマ。 ●雪の結晶を描くプログラム ●木の葉を紅葉させるプログラム ●カメラに映った色を判別するプログラム ●人の声を再現するプログラム ●放り投げたボールの動きを再現するプログラム ●ウイルスが拡散する様子を観察するプログラム プログラミングの基礎知識や、JavaScriptの基本文法も 丁寧に説明しているので、未経験から学びはじめる人でも安心です。 プログラミングをはじめてみたいけれど、 「何をつくればいいかわからない」 「アプリやウェブサイトにはあんまり興味が持てない」 という人はぜひ本書を手に取ってみてください。 興味や知的好奇心を刺激するテーマが見つかり、 プログラミング学習の一歩目を楽しく踏み出すことができるはずです。 ■楽しく学べるポイント ・キャラクターがやさしくガイド →つまずきやすい所でヒントをもらえます ・プログラムの改造レシピも掲載 →自分なりにアレンジしたプログラムが作れます ・誰かに話したくなる「雑学」「豆知識」も紹介 →自然・生き物についてもちょっぴり詳しくなれます ■こんな人におすすめ!対象読者 ・プログラミングを楽しく学びたい人 ・入門書を読んだあと、何をすればいいかわからない人 ・ウェブサイトやアプリの制作にあまり興味が持てない人
この本がどの学習段階で役立つかは、 関連する ロードマップ から確認できます。