お問い合わせを送信いただきありがとうございます!当社のスタッフがすぐにご連絡いたします。
予約を送信いただきありがとうございます!当社のスタッフがすぐにご連絡いたします。
コース概要
はじめに
- Cの特徴と応用の概要
開発環境の準備
- IDEの選択
- コンパイラの設定
サンプルプログラムの作成
- 問題の定義
- 要件に沿ってコーディングする
Cプログラムでの変数と関数のスコープの定義
- スコープ、可視性、ライフタイムの理解
- auto, extern, register, staticなどのストレージクラスの使用
Cプログラムでのデータ管理
- 基本データ型以上のもの
- 構造体、リンクリストなど高度なデータ型の使用
- 同じメモリ位置に異なるデータ型を格納する
変数のプロパティの変更
- 型修飾子以上のもの
- const, volatileなどの型限定子の使用
Cでのビット操作
- 1バイト未満のデータの扱い
- ビット操作演算子の使用
プログラムの流れの制御
- シーケンス以上のもの
- goto文の使用
データの読み込みと書き込み
- 入出力関数の概要
- 出力の可読性の向上
クロスプラットフォームコードの開発
- コンパイラディレクティブの理解
- 条件付きコンパイル
プログラム性能の向上
- マクロと関数の比較
- プログラム断片を実行するためのマクロの定義
メモリの動的割り当て
- ポインタを使用する利点:実行速度
- 関数へのポインタ
- メモリアクセスとアドレス操作
Cプログラムのデバッグ
- エラーのチェック、検出、訂正のための高度な技術
- gdb(Gnu Debugger)の使用
静的ライブラリの作成
- 実行ファイルに静的ライブラリがリンクされる仕組み
- 静的ライブラリの作成
共有ライブラリの作成
- 静的ライブラリと共有ライブラリ(動的ライブラリ)の比較
- 実行時に共有ライブラリがリンクされ、メモリに読み込まれる仕組み
- 共有ライブラリの作成
プログラムでのデータの抽象化
- インターフェース、仕様、実装の概要
- 抽象データ型の作成
- 抽象データ型のリグレッションテスト
データの検索とソート
- 配列の線形検索、二分探索などの検索方法
- 選択ソート、挿入ソート、バブルソートなどで配列をソートする
プロセス間通信とシグナル
- プロセス、ソケット、シグナルの理解
- 共有ファイル、共有メモリ、パイプ、メッセージキュー、ソケット、セマフォなどのIPCの実装
Cプログラムを並列で実行する
- マルチスレッドによるプログラムの異なる部分の並列実行
- スレッドの書き方
高度なネットワークプログラミング
- TCP、UDP、IPなどの主要プロトコルの概要
- 複数ポートへのサービス提供、突然のネットワーク障害の対処など
- 強力なソケットAPIの書き方
高品質コードへ向けて
- ピアレビューと並列プログラミング
- 反復的なコーディング(リファクタリング)の重要性
まとめと結論
要求
- Cプログラミング経験
対象者
- プログラマ
- 開発者
28 時間
お客様の声 (2)
演習とメソドロジー
Javier MIllan Rios - si
コース - Advanced C Programming
機械翻訳
興味深く、幅広い範囲
Maciej Perkowski - Nordic Semiconductor
コース - Advanced C Programming
機械翻訳