コンテンツへスキップ
科目

大学コンピュータ科学

ヒント

このコースは、最初のプログラムから機械学習に至る典型的なコンピュータサイエンス学位に準拠している。プログラミング基礎と離散数学から始まり、オブジェクト指向設計、データ構造とアルゴリズム、コンピュータアーキテクチャ、オペレーティングシステム、データベースとネットワークへと発展する。後半ではアルゴリズム設計、計算理論とコンパイラ、ソフトウェアエンジニアリング、AIと機械学習を扱う。

どの言語よりも重要な2つの習慣がある。第一に、毎週コードを書き実行する:解答を読むことは作成することとは異なる。第二に、コストについて考察する。大学の回答では、入力の増加に伴う実行時間の増大をBig-Oで記述し、単に一つのテストで動作しただけでなく、なぜアルゴリズムが正しいのかを説明しなければならない。

離散数学はプログラミングとは無関係に感じるかもしれない。そうではない。帰納法による証明は再帰関数が正しいことを示す方法であり、グラフは地図、ネットワーク、コンパイラの背後にある。

全語彙を練習する
  • 1

    プログラミング基礎

    • 1.1 このコースとは何か、および使い方は
    • 1.1 値、型、入出力
    • 1.2 選択: パス間の選定
    • 1.3 反復:再度行う
    • 1.4 関数:タスクを一度だけ名付けること
    • 1.5 コレクション:リスト、辞書、タプル、セット
    • 1.6 ファイルとエラー
    • 1.7 分解、テスト、デバッグ
  • 2

    離散数学

    • 2.1 論理と証明
    • 2.2 集合、関数と関係
    • 2.3 帰納法と再帰
    • 2.4 数え上げと組合せ論
    • 2.5 グラフと木
    • 2.6 離散確率
  • 3

    コンピュータシステム基礎

    • 3.1 バイナリとデータ符号化
    • 3.2 論理ゲートとデジタル構成要素
    • 3.3 プロセッサとメモリ概要
    • 3.4 機械命令
    • 3.5 オペレーティングシステムのインターフェース
    • 3.6 コンパイルと実行パス
  • 4

    オブジェクト指向プログラミング

    • 4.1 オブジェクトとクラス
    • 4.2 カプセル化
    • 4.3 合成と継承
    • 4.4 インタフェースと多様性
    • 4.5 例外処理とエラーハンドリング
    • 4.6 テストと設計品質
  • 5

    データ構造とアルゴリズム

    • 5.1 漸近解析
    • 5.2 リスト、スタック、キュー
    • 5.3 ハッシング
    • 5.4 木とヒープ
    • 5.5 グラフと走査
    • 5.6 ソート
    • 5.7 検索
  • 6

    コンピュータアーキテクチャ

    • 6.1 命令セットアーキテクチャ
    • 6.2 データパスと制御
    • 6.3 パイプライン
    • 6.4 メモリ階層
    • 6.5 入力出力
    • 6.6 並列性と性能
  • 7

    オペレーティングシステム

    • 7.1 プロセスとスレッド
    • 7.2 スケジューリング
    • 7.3 同期
    • 7.4 仮想メモリ
    • 7.5 ファイルシステム
    • 7.6 保護とセキュリティ
  • 8

    データベース

    • 8.1 リレーショナルモデリング
    • 8.2 リレーショナル代数とSQL
    • 8.3 正規化
    • 8.4 インデックスとクエリプラン
    • 8.5 トランザクションと同時性
    • 8.6 セキュリティとデータガバナンス
  • 9

    コンピュータネットワーク

    • 9.1 レイヤ化とアーキテクチャ
    • 9.2 リンク層とIP
    • 9.3 ルーティング
    • 9.4 トランスポート層(TCP/UDP)
    • 9.5 アプリケーションプロトコル
    • 9.6 ネットワークセキュリティ
    • 9.7 分散システム基礎
  • 10

    アルゴリズム設計と解析

    • 10.1 再帰式と解析手法
    • 10.2 分割統治法
    • 10.3 Greedyアルゴリズム
    • 10.4 動的計画法
    • 10.5 グラフ最適化
    • 10.6 問題変換とNP完全性
  • 11

    計算理論とコンパイラ

    • 11.1 自動機と正規言語
    • 11.2 文脈自由言語と構文解析理論
    • 11.3 計算可能性
    • 11.4 Lexical分析
    • 11.5 構文解析
    • 11.6 意味解析とコード生成
  • 12

    ソフトウェアエンジニアリング

    • 12.1 要件定義
    • 12.2 アーキテクチャと設計
    • 12.3 HCIとアクセシビリティ
    • 12.4 バージョン管理とチームワーク
    • 12.5 テストと継続的統合
    • 12.6 セキュリティとプロフェッショナルエティクス
    • 12.7 チームプロジェクト
  • 13

    人工知能と機械学習

    • 13.1 検索
    • 13.2 知識と推論
    • 13.3 確率モデル
    • 13.4 回帰と分類
    • 13.5 最適化と学習
    • 13.6 評価とリーケージ
    • 13.7 公平性と限界

ログインまたはアカウント作成

IGCSE, A-Level & AP