「どのプログラミング言語を選ぶべきですか?」
「自分はプログラミングに向いていますか?」
「プログラミング入門の前に何をすべきですか?」
これが【プログラミング三大未解決命題】です。
本書は入門者が悩み続けた三番目の問いに対する私の回答です。
一般的なプログラミング入門はあたかも運転初心者が初日に車を操縦しながら交通法規を教わる様なものです。かなり無理があります。
プログラミングの挫折率は【90%】です。この比率は至れり尽くせりの環境とは無関係に不変です。
筆者はその原因を「そもそもプログラミング言語は入門用に向いていない」ことにあると見ています。
プログラミングは「共通概念」+「個別の技法」です。あらゆる学習法はそれをごちゃまぜに同時に行うのです。入門者が悩むのはコードではなく概念なのです。
〈条件分岐はIF構文を使用します〉などと聞かされても「まず条件分岐が何なのか知りません」で止まってしまいます。そこで本書はプログラミング入門者がつまづき易い概念を前もって「33項目」ピックアップして説明します。プログラミング無しなので気楽です。
「これさえ読めばプログラミングが身につく」とする書籍は無数にありますが「10%」しか恩寵を受けていません。本書は先廻りして残りの【90%】用に書かれています。本書の読了後に「あ!これって『33』に書いてあったことだ!」と少し楽に学べる【入門のその前に読む】入門書なのです。
【本書の構成】
【1】コンピューターとは?メモリーとは?五大機器とは?…関数・変数・出力・入力…プログラム用語を総ざらえします。
▶GOTO構文の様な古い知識を棄てると却って「ループ」などが理解できなくなるので敢えて原点に立ち返ります。
【2】初心者が選択する可能性の高い「C言語」「Python」「Excel VBA」「JavaScript」の基本を紹介します。これのみでとりあえず初歩のコードが書けるようになります。
サンプルプログラム:「FizzBuzz〜ユークリッドの互除法」まで
▶途中で挫折する原因になりやすい「文章課題」を八題取り上げ先の四言語で任意に解説します。
おまけでゲーム「アルファロード」もあります。
【3】趣味で百冊近い「入門書」を通読した筆者として「入門書が読みにくいのはいわゆる『理系』の人が書いているので」でしょうか。筆者は別名義(我楽竜樹)で読み易さを身上としたショートショートを「通算800作品」発表済みです。
▶そこでおまけとしてプログラミングと関わりのあるテーマを用いた『うさぎ算』を収録しました。興味のある方はご一読ください。本書も基本1センテンスで書かれているので長文の苦手な方にどうぞ。
▶本書最大の特徴は全言語共通のプログラム設計技法〈フローチャート〉の再興を願う点です。その欠点「作画が面倒」を「記号で代用する」ことで革命を起こします。
それが作者謹製の《テキストチャート》でした。
コード不要です。どの言語にも対応します。プログラミングに興味のある方はぜひ全く新しい概念を体験してみてください。
ではよき邂逅のあらんことを。
楽天Books