その本の「はじめに」には、著者の「伝えたいこと」がギュッと詰め込まれています。この連載では毎日、おすすめ本の「はじめに」と「目次」をご紹介します。今日は中植正剛さん、鴨谷真知子さんの『 Pythonで学ぶプログラミングとアルゴリズムの基本 』です。
【はじめに】
本書は、Pythonの基礎を身につけながら、問題解決の手順であるアルゴリズムを学ぶための本です。筆者らはこれまで、小学生向けの遊びを通したプログラミング学習から、大人向けの本格的な学びまで、様々な場面で多くの方々のプログラミング学習を支援してきました。その中でいつも思い出していたのは、筆者自身が何度もプログラミング学習で挫折した経験でした。説明と説明の間にロジックの飛躍があり、途中を自分で推測しなければわからないことがありました。一方で、説明を聞いただけではピンとこなくても、実際に手を動かしてみると「あ、そういうことか!」と理解できることも多々ありました。本書は、そうした体験を活かし、ロジックの飛躍を避けて丁寧に説明し、実際に手を動かして実践できるような構成で、読者のそばについて教えるような気持ちで執筆しました。
プログラミングの力を身につけるためには、厳選された本質的で基礎的な内容を一つひとつ地道に理解し、実際に自分で手を動かして実践すること、そして、良質の練習問題をたくさんこなしてトレーニングを積むことです。本書は、そうしたアプローチを意識しながら、読者の皆さんが一歩一歩実力をつけ、読み終わった後も自学を進めていけるような内容にしています。
また、実際に研究や業務でソフトウェア開発をされている方々から、「最初からアルゴリズムをしっかり学んでおけばよかった」という声をよく耳にします。本書では、伝統的なアルゴリズムを厳選して掲載しました。重要なポイントで立ち止まり、考えを深められるような構成にしているため、無理なく学びを深められるはずです。
いきなり「ゲームを作ろう!」といったような派手な内容ではありませんが、プログラムが動く喜びや、考えた通りに仕組みが働く面白さをじわじわと体感できるような工夫をしています。
本書の対象
高校生・大学生~大人
いままでプログラミングを全く(またはほとんど)されたことがない初心者を想定しています。次に何をやるのかの指示を載せたり、説明をとても丁寧にしているので、一人で学べる内容になっています。
● 高校生の方:学校の教科「情報」で触れるPythonをより深く学び、実際にプログラミングできる力を身につけます。これからの進路や将来に役立つスキルとして、ぜひ挑戦してみてください。
● 大学生~大人の方:研究や実務での活用につながるプログラミングの基礎を学べます。「いつか学びたい」と思っていた方にとって、これがその「最初の一歩」です。本書をきっかけに、データサイエンス、AI(人工知能)、業務自動化など、関心のある分野の学びに挑戦するための基盤となる内容となっています。
● 中学生の方:高校生以上を想定した本ですが、自分で学ぶ力があれば、プログラミングの基礎をしっかり学べます。後半に少し難しい数学の内容が出てくる個所もありますが、学校の先生やご家族に助けてもらいながら進めてみてください。
前提スキル
パソコンでファイルやフォルダーの整理やインターネットの検索ができる、文字入力の半角・全角を切り替えることができる、タイピングができるといった程度の、基礎的なパソコンスキルとインターネットスキルがあることを前提としています。
学習の目的
1.将来の学びに活かせるように、Pythonの基礎知識と基礎的スキルを固める。
Pythonの多機能さと幅広い応用範囲から、どの本であっても一冊ですべてを網羅するのは難しいものです。本書では、初心者が次のステップに進むために必要な基礎を厳選して学べる内容になっています。書籍の最後では、次のステップへの入口となるテーマにも触れています。
2.デザインやアルゴリズムの学習を通して、自分でプログラムを作成する力を身につける。
プログラムのデザインやアルゴリズムの基本を学びながら、自分でプログラムを設計・作成する力を養うことを目指しています。複雑な問題を小さく分けて整理しながら進めることで、初学者でも無理なく取り組めます。また、重要なポイントでは一旦立ち止まり、設計やアルゴリズムの意味を考える時間を設けることで、プログラムを自分で作成する力を確実に身につけられる構成にしています。
学習の構成
本書は、序章、4部構成の第1章~第11章、まとめの第12章で構成されています。
● 序章:Pythonを学ぶための準備とPythonの基本知識を学びます。
● 第1部・第2部:Pythonの文法の基本や基礎的なプログラミングのポイントを学びます(第1章~第5章)。
● 第3部:基本的なアルゴリズムを学びます。伝統的な定番アルゴリズムを、詳しい解説とともに実際に動かして学びます(第6章~第9章)。
● 第4部:さらに進んだPythonプログラミングの学習に向けて、オブジェクト指向プログラミングや外部ライブラリー、パッケージについて学びます(第10章~第11章)。
続く第12章には、全体のまとめと、今後さらにPythonプログラミングを学び続けるための学習の指針を記しています。
本書を使ったプログラミングの学び方
① いまから学ぶことを確認する:各章の最初に、その章で学ぶことの簡単な説明とポイントをまとめて掲載しています。実際に学ぶ前に、そもそも何を学ぶのかを知ることが学習効率を高めます。
② サンプルと解説で学ぶ:サンプルのプログラムを実際に作りながら、Pythonの基礎とアルゴリズムを学んでいきます。説明にわからない個所があっても、実際にプログラムを作ってみると理解が進むことが多いので、頭と手をバランスよく動かして学びましょう。サンプルのプログラムを実際に入力するときは、単に写すだけでは学びが少ないので、将来独り立ちして自分のプログラムを作ることをイメージしつつ、動作の仕組みを意識しながら入力しましょう。
③ チャレンジ:チャレンジのコーナーでは、練習問題を用意しています。知識を確かめるクイズや実際にプログラムをする問題です。練習問題を解きながら、学んだことが理解できているかどうか、力がついているかどうかを確認しましょう。
プログラミングは、あなたのアイデアを形にする魔法のような力です。最初は小さな一歩でも、それを積み重ねることで、自分の考えた仕組みが動き出す感動を味わえるようになります。本書は、その魔法を使いこなす旅の始まりです。それでは、序章から一緒に学んでいきましょう!
本書の見方・使い方
各章の冒頭に、これから学ぶことをまとめています。
【目次】









