見出し画像

【新刊ためしよみ】『14歳からのプログラミング』はじめに/千葉滋

プログラミングを学ぶ楽しさの一つは、自分の手でいろいろなものを作れるようになることです。プログラミングを学べば、自分で考えたアイデアでゲームを作ったり、便利な Web サイトを作ったり、あるいはスマートフォンのアプリ(アプリケーション)を作ったりできます。ロボットやドローンを動かすためにもプログラミングは必要です。

プログラミングで何かを作ることは楽しいことですが、世の中にはプログラミングそれ自体が好きでそれを楽しんでいる人たちが大勢います。もしかすると世の中の素晴らしいソフトウエアは、そういうプログラミング自体が大好きな人たちが、そういう楽しみのついでに生み出している、とすら言えるかもしれません。

本書は、そういうプログラミングが大好きな人たちが知っているプログラミング自体の楽しさを紹介できれば、と思って書いた入門書です。プログラミングはプログラムを書くことですが、このプログラムとはコンピュータにやって欲しいことを指示する手順書です。実はこの手順書、同じ結果を指示するのに何通りもの異なる書き方、表現があります。

どんな書き方や表現が最もよいか、それを考えることこそプログラミングの一番の楽しさでしょう。数学の問題を解くのが好きな人たちは、数学では同じ問題にもいろいろな解き方があり、その中でもエレガントな解法を考えるのが楽しい、と言います。物語を書いたり音楽を演奏したりする人たちも、同じプロット、同じ曲でも、アイデアをこらして自分なりの表現を見つける楽しみがあると思います。プログラミングにも、そういう自分なりの表現を探す楽しみ方があります。

世の中にはたくさんのプログラミング言語があります。なぜそんなにたくさんあるのか不思議に思いませんか。それは、既存のプログラミング言語ではできない表現、書き方を思いついた人たちが、それを可能にするために、新しい言語を作ってきたからです。わざわざ新しい言語を作ってでも使いたくなるくらい、プログラムの表現や書き方は面白いし深いのです。

本書は入門書ですから、プログラミングにおけるさまざまな表現や書き方のほんのさわりの部分しか紹介できません。しかし本書を入り口にして、プログラミング自体の面白さの世界へ一歩足を踏み入れてもらえればと思います。

もしプログラミングを職業にするのなら、プロフェッショナルとして選ぶべき表現、書き方というものがあります。しかし、楽しみのためにプログラミングをするのなら、どんな表現を選ぼうとあなたの自由です。プロの目から見たら眉をひそめてしまうような表現でも、あなたが好きならそれでよいのです。

ようこそ、楽しいプログラミングの世界へ。

画像3


題材について

プログラミングを学ぶには何かをする簡単なプログラムを書いてみるのが一番です。学ぶ人の興味に合わせて題材を選ぶのがよいのですが、本書では題材として、コンピュータの画面上に簡単な絵(というか図形)を描いたり、ちょっとしたゲーム(らしきもの)を作ることを選びました。

プログラミングを学ぶことが主眼ですから、絵を描くといっても凝った絵を描くわけではありません。プログラミングで凝った絵を描こうとしたり、面白いゲームを作ろうとすると、それなりの数学的なものの考え方が必要です。本書は、おおよそ中学校ぐらいまでで学ぶ考え方ができれば読み進められるようにと思って書いてあります。

そのくらいの範囲でわかるような題材を選んでいるので、題材としては少しもの足りないかもしれません。より凝った絵を描いたり、本格的なゲームを作る話は類書に譲りたいと思います。

なお、必要なのは教科書に書いてあるような数学の知識ではなく、数を扱う感覚や論理的な考え方の方です。算数やパズルが得意な人ならば、もっと若い人でもすらすら読めように表なども多用して工夫したつもりです。このあたりの配慮は、逆に人によっては不要で余計なことと感じられるかもしれません。

JavaScript 言語について

本書では JavaScript(ジャバスクリプト)というプログラミング言語について学びます。そうは言っても JavaScript 言語の構文を網羅的に説明するわけではありません。JavaScript 言語の説明は基本的な部分に留め、JavaScript によるプログラミングを通して、多くのプログラミング言語に共通する考え方や面白さを学ぶことの方を重視しています。

また本書では、筆者が用意した本書専用のプログラミング環境を用います。これは初学者の人が最初にあまり本質的でない部分でつまずかないようにと考えたからです。またこの環境には、Scratch 言語風にブロックをつなぎ合わせてJavaScript のプログラムを組み立てる(書く)機能も用意されています。本書の中では使い方を説明しませんが、キーボードが苦手な人向けです。

本書を読み終えた後、この専用のプログラミング環境がないとプログラミングできないようでは少し面白くありません。そこで本書の最後では、このプログラミング環境を使わずに JavaScript 言語でプログラミングする方法も説明します。本書を最後まで読み通した後であれば、それを理解するのは難しくないと思います。

本書のプログラミング環境は、比較的新しい Web ブラウザさえあれば、何もアプリをインストールすることなく利用できます。Windows や Mac、あるいは Chromebook の方がやりやすいと思いますが、タブレットやスマートフォンでも利用できます。ただしキーボードはあった方がよいと思います。

対話篇について

本書を書き進めるにあたり、話の本筋からは少し外れる話題や、あるいは人によっては勘違いしやすい点の指摘などは、対話篇として本文から分離するようにしました。また対話篇は、本文の話の内容が切り替わるときの小見出しの役割ももたせています。

対話篇の登場人物は三人です。

: 友香、お願いがあるのだけど。
友: ん、何?
: 最近は小学生もプログラミングやるでしょ。あなたもやりなさい、ってママに言われて、大学生の家庭教師が来ることになったの。
: さすがお嬢の家、教育熱心。でも自分で本読めば充分じゃない? 先生必要なの?
嬢: 先生がついた方がママが安心するのよ。一人でやるの嫌だから友香も付き合ってくれない?

このような設定で対話篇を書いています。

画像1

本書「はじめに」より
文・千葉滋

画像2

書誌詳細/ご注文方法

14歳からのプログラミング 
千葉 滋 著
ISBN978-4-13-062461-9
発売日:2021年08月19日
A5判, 248頁

〈内容紹介〉
【中学校で学ぶ知識があれば大丈夫! 子どもも大人も楽しめる入門書】
プログラミングを学ぶには,簡単なプログラムを書いてみるのが一番である.図形描画や簡単なゲーム製作などを通して,楽しく学べる入門書.丁寧な説明とビジュアル解説でつまずきやすいところも簡単に理解.Scratchから本格言語への架け橋としても最適.▶東京大学出版会創立70周年記念出版

〈主要目次〉
はじめに
第1章 プログラミングを始める
第2章 小さな部品を組み合わせる
第3章 反復作業をさせる
第4章 場合分けをする
第5章 一度書いたら再利用
第6章 いろいろなやり方を試す
第7章 絵を動かす
第8章 定数と変数
第9章 変数を使って画面のクリックに反応する
第10章 文字を扱う
第11章 関数の戻り値
第12章 オブジェクトで値の組を扱う
第13章 関数とオブジェクト
第14章 たくさんの値をまとめて配列で扱う
第15章 続・たくさんの値をまとめて配列で扱う
第16章 自分の足で立ってみる



この記事が気に入ったらサポートをしてみませんか?