
How to Design Programs: An Introduction to Programming and Computing(プログラムの設計法:プログラミングと計算への入門)
Matthias Felleisen; Robert Bruce Findler; Matthew Flatt; Shriram Krishnamurthi
94冊の厳選書籍を科目別に整理
短い試行課題で三冊を比べ、章を指定した六段階の順路で学び、解答付き例題と前提を変える追加問題で推論を確かめます。
三冊のアルゴリズム書を証明・参照・モデル化の目的で比較し、独自の重み付き日程問題で漸化式と制約の変化を検証します。
コンピュータサイエンスデータ構造無料の厳密な解析書、Java実装書、直感的な入門書を比較し、独自の拡張・縮小例で最悪時と償却コストを区別します。
コンピュータサイエンス機械学習と人工知能二つの無料統計学習書と総合AI書を比べ、独自の反復機器データと配備変更で行・群の分割と距離の保証を点検します。
コンピュータサイエンスコンピュータネットワーク三つのネットワーク教材を比較し、独自の送信・窓例題から、ペイロード速度、直列化、伝搬とモデルの前提を区別します。
コンピュータサイエンスオペレーティングシステム無料の概念書、小型RISC-Vカーネル、総合参考書を比べ、独自のイベント追跡と同期変更で原子性と順序を区別します。
コンピュータサイエンスプログラミング入門三冊のPython入門書を比較し、予測・関数・コレクション・ファイル・テストを六段階で練習。独自の例題でゼロと欠測の違いを確かめます。
コンピュータサイエンスデータベース設計・システム・理論の三冊を比較し、独自のSQL例でキー、欠測、未対応行と結合による重複を区別して集計を検証します。
最初の一冊を選ぶ
大学生を主な対象とし、独学にも配慮して本サイトが整理した読書の目安です。大学公式の学習計画ではありません。購入前に自分のシラバスを確認してください。版によって演習番号などが異なります。
すべての本を見る ↓プログラミングが初めてなら、授業に合った入門書で小さなプログラムを書きます。その後、アルゴリズム・データベース・OS・計算機構成などへ進みましょう。難易度と言語を確認し、一冊で分野全体を学べるとは考えないでください。
書籍は通常読まれる科目ごとにまとめ、入門から上級の順に並べています。
学習ガイド: Pythonの最初の一冊を選び、説明してテストできるプログラムを作る →
学習ガイド: データ構造:不変条件と操作コストを説明する →
学習ガイド: アルゴリズムの選書:最適化の答えを説明する →
学習ガイド: ネットワークの選書:すべての待ち時間を数える →
学習ガイド: 関係データベース:教材を選び、集計の単位を確かめる →