概要
原書『The Self-Taught Programmer: The Definitive Guide to Programming Professionally』の翻訳図書である。邦題が原題には無いプログラミング言語「Python」の名を冠している為、Python教本の一種と誤解され易いが、これに関して訳者は、
本書は、Pythonを学ぶ本ではありません。Pythonを使ってプログラミングを紹介していますが、伝えたい内容はPythonに限らない、プログラミング全般の知識です。
本書「訳者あとがき」より引用
と弁明している。詳細は後述する。
本書の主旨は、前述の引用文にもある通り、コーディング以外のことを含む「プログラミング全般の知識」を学ぶことである。これは章立てからして一目瞭然である。したがって、プログラミング初学者は勿論、ベテランのプログラマーにとっても知識体系の整理等に有用な本である。
とはいえ、本書がPython前提である点には留意しておく必要がある。つまり、Python特有の用語や機能も登場する。例えば、Pythonの「リスト」や「辞書」に相当するものは、他のプログラミング言語では「配列」や「連想配列」と表現されることもあろう。又、Pythonの「continue」文に相当するものは、Luaには存在しない。訳者の謳う「伝えたい内容はPythonに限らない、プログラミング全般の知識」というのは、意味合いとしてはあくまで大まかなものである。
章立て
- イントロダクション
独学の強み、プログラムを書くと良いこと - さあ、はじめよう!
プログラミングってなに?、Pythonってなに?Pythonのインストール、対話シェル、プログラムを保存する、例題プログラムを実行する - プログラミング入門
コメント、出力、行、キーワード、スペース、データ型、定数と変数、構文、エラーと例外、算術演算子、比較演算子、論理演算子、条件文、文 - 関数
関数を定義する、組み込み関数、関数を再利用する、必須引数とオプション引数、スコープ、例外処理、ドキュメンテーション文字列、必要なときだけ変数を使おう - コンテナ
メソッド、リスト、タプル、辞書、コンテナの中のコンテナ - 文字列操作
三重クォート文字列、インデックス、文字列はイミュータブル、文字列は足し算、文字列はかけ算、大文字小文字変換、書式化、分割、結合、空白除去、置換、文字を探す、包含、エスケープ文字、改行、スライス - ループ
forループ、range、whileループ、break、continue、入れ子ループ - モジュール
重要な組み込みモジュール、ほかのモジュールをインポートする - ファイル
- 知識を1つにまとめる
- ハマったときの助け
- プログラミングパラダイム
手続き型プログラミング、関数型プログラミング、オブジェクト指向プログラミング - オブジェクト指向プログラミングの4大要素
カプセル化、抽象化、ポリモーフィズム、継承、コンポジション - もっとオブジェクトプログラミング
クラス変数 vs インスタンス変数、特殊メソッド、is - 知識を1つにまとめる
- Bash
コマンド、最近使ったコマンド、相対パス vs 絶対パス、作業ディレクトリの変更、フラグ、隠しファイル、パイプ、環境変数、ユーザー - 正規表現
シンプルな一致、前方一致と後方一致、複数文字列との一致、数値との一致、繰り返し、エスケープ - パッケージ管理
パッケージ、pip、仮想環境 - バージョン管理
リポジトリ、プッシュとプル、前のバージョンに戻す、差分 - 知識を1つにまとめる
HTML、Googleニュースをスクレイピングする - データ構造
スタック、スタックを使って文字列を逆順にする、キュー、チケット行列 - アルゴリズム
FizzBuzz、線形探索、回文、アナグラム、出現する文字列を数える、再帰 - プログラミングのベストプラクティス
コードを書くのは最後の手段、DRY、直交性、どのデータも1カ所で定義しよう、1つの関数には1つのことだけをさせよう、時間がかかりすぎるなら、たぶん何か間違えている、最初に良い方法で実装しよう、慣例に従おう、強力なIDEを使おう、ロギング、テスト、コードレビュー、セキュリティ - プログラマーとしての最初の仕事
- チームで働く
- さらに学ぼう
古典で学ぶ、オンライン授業で学ぶ、ハッカーニュース - 次のステップ
メンターを見つけよう、本質を探る努力をしよう、アドバイスを得よう
邦題の「Python」
原題に無かった「Python」の文言が邦題に入ったが故に、本書がPython教本の一種と看做され易くなり、訳者が本書の「訳者あとがき」部分で弁明している旨は前述の通りである。しかしながら、原題に無かった「Python」の文言が邦題に入った理由についての言及は無い。不気味である。察するに、「Python」入りの邦題は訳者ではなく出版業界の意向であろう。「Python」の文言(キーワード)を入れれば売れるという出版業界の戦略・思惑がはたらいたのであろう。その戦略・思惑が功を奏したのか、本書はベストセラーとなった。
類似の事例として、『世界標準MIT教科書 Python言語によるプログラミングイントロダクション第2版: データサイエンスとアプリケーション』(原題: Introduction to Computation and Programming Using Python: With Application to Understanding Data)がある。こちらは原題にも「Python」の文言がある為、字面だけでは特に違和感は無いが、邦題の方の表紙では「Python」の文言部分が強調されている。
基本情報技術者試験のソフトウェア開発分野で扱うプログラミング言語にPythonの追加が予定されている[1]ように、Python需要は今後益々拡大して行くと思われる。出版業界が便乗するのも当然であるといえよう。
関連項目
- プログラミング関連用語の一覧
- プログラミング
- プログラム
- インストール
- シェル
- 正規表現
- パッケージ
- バージョン
- テスト
- レビュー
- セキュリティ
- 統合開発環境/IDE
- ソフトウェア開発
- 基本情報技術者試験
外部リンク
- 本書「補章:継続して学ぶために」の中で紹介されているWebサイト
- 本書で紹介されたもの以外のプログラミング学習サービス
脚注
- 0
- 0pt