[ Cプログラミングコース/組込みシステム開発コース ]

コース概要

プログラミングの実践力向上,技術レベルの復習,新人の教育コース,キャリア転向補助に役立つコース設計

本コースは、実践的なソフトウェア開発技術者の育成を目指して設計しております。将来のソフトウェアエンジニア及びシステムアーキテクト・ミドルレベルへのファーストステップとして、「C-プログラミングコース」と「組込みシステム開発コース」を設定しました。

「C-プログラミングコース」は、ソフトウェア技術者の腕力(プログラミングの実践力)向上、技術レベルの復習、新人の教育コース、キャリア転向への補助に役立つことを目指して設計しております。C言語の基本構文を習得したエントリレベルの技術者からC言語による開発経験を持つ技術者までを対象とし、プログラミング技術、アルゴリズム・データ構造に対する理解と実践での活用能力の研鑽を狙います。

「組込みシステム開発コース」は、一段上流のシステム開発技術の習得を目指して設計しております。組込みシステム開発に必要なプログラム設計技術や、ドキュメンテーション、テスト、実時間OS技術等の習得を狙います。

各コースは、それぞれ6セッション、計12セッションで構成しています。

(A) C-プログラミングコース(6セッション)
(B) 組込みシステム開発コース(6セッション)

全12セッション通して受講されることをお勧め致しますが、受講される方のプログラミングスキルや興味の対象に応じて、セッションを1つずつ選択して受講していただくことが可能です。各セッションは基本的に水曜日の、9:00~17:00の7時間(昼食時間1時間)で実施します。

各セッションの関係の概要は以下のマップをご覧ください.品質の高いモジュールの設計・実装を目標として各セッションでのテーマに取り組んでいきます.

対象者

C-プログラミングコース

エントリレベルの技術者で、C 言語のプログラミング経験のある方から受講対象とします(受講以前の段階で、C 言語の主要構文(代入文、if 文、while 文、for 文、関数呼び出し等)、ごく標準的な関数群(printf、gets、scanf、malloc/free、fopen/fclose、など)の使用経験と、2 進数・16 進数などの理解は必要になります)。

例えば、以下のような方が対象になると考えております。
 
  • ソフトウェア開発技術者だが、そのリーダー格としてプログラミングの実力を向上させたい人
  • 日頃良く理解できていなかったプログラミングトピックを、機会があれば再確認したいと考えている人
  • C++やC#、Java 等のプログラミングから、少し突っ込んだプログラミングの本質を身につけたい人
  • iPhone,Android,Surface 等のアプリ開発業務にも挑戦したい人
  • 複雑で大規模なエンタープライズ系のiPad やAndroid プログラムを開発対象とする人
  • ソフトウェアとコンピューターの仕組みを理解して、トラブル等の追跡能力を身につけたい人
  • メカ・電気・電子を中心にやってきたが、ソフトウェアも交えた開発業務が必要になってきた人
  • 入社したての情報系新人で、新人教育を終えて、いざ職場スタートする人

組込みシステム開発コース

C言語あるいは他のプログラミング言語による開発経験のある技術者(またはCプログラミングコース修了者)。
 
  • テーマごとにUMLや状態遷移モデルなどを用いた演習とレビューを行います。
  • C言語等の特定のプログラミング言語を用いたコーディングは最小になっています(RTOSのセッションには簡単な演習があります)。

開催日時

C-プログラミングコース(2018)

開催日 セッション名称 主なテーマ
5/16(水) ポインタ自由自在 変数とポインタ,関数とポインタ(関数の引数,返り値として),ポインタと配列,Genericポインタ(void*)の活用
6/13(水) 関数自由自在 プロトタイプ宣言・ヘッダファイル・モジュラリティ向上のためのスコープの制御,再帰,繰り返し実装の使い分け,関数ポインタの活用
6/27(水) 構造体自由自在 構造体の基本操作(定義,宣言,初期化,操作),関数インタフェースとしての利用.シリアライズ
7/11(水) ソケットプログラミング TCP/IP, ソケット通信, セッション, 再送, エラー訂正, 3wayハンドシェイクなど
7/25(水) 設計とテスト 単体テストの設計・実装・実行,ブラックボックステスト,ホワイトボックステスト,網羅基準,同値分割,境界値分析,回帰テスト
8/8(水) リファクタリング リファクタリング,コードレビュー,回帰テスト,自動テスト,理解容易性

組込みシステム開発コース(2018)

リアルタイムOS(RTOS) [導入編],リアルタイムOS(RTOS) [実践編] の2セッションのみ火曜日開催ですのでご注意ください。
 
開催日 セッション名称 主なテーマ
10/10(水) 状態遷移モデルによる設計と検証 状態遷移モデルの設計,状態遷移テスト,状態遷移モデルに基づく設計・実装・テストプロセスとその利点と欠点
10/24(水) 組込みソフトウェア開発のためのUML基礎 構造を表現するダイアグラム(クラス図を中心として),振る舞いを表現するダイアグラム(シーケンス図を中心として)
11/6(火) リアルタイムOS(RTOS)[導入編] リアルタイムOSの概要,リアルタイムOS利用のメリットとデメリット,リアルタイムOSの同期・通信機能
11/20(火) リアルタイムOS(RTOS)[実践編] リアルタイムOSの概要,リアルタイムOS利用のメリットとデメリット,リアルタイムOSの同期・通信機能
12/5(水) 技術文書を対象としたテクニカルライティング ドキュメントの品質特性,文書の構造,ライティング・プロセス,技術文書のスタイル
12/19(水) UMLドキュメンテーションとレビュー手法 オブジェクト指向による思考・図示・設計の実践,UML導入のコスト・利点・副産物の確認,レビュー
[*] リアルタイムOS (RTOS) [導入編] と リアルタイムOS (RTOS) [実践編] は,個別に受講して頂くことも可能ですが,[実践編]を受講される方は[導入編]も受講されることを強くお薦めします.

会場

C-プログラミングコース,組込みシステム開発コース共に,下記の会場にて実施致します.

静岡大学情報学部情報科学第1実験室
〒432-8011 静岡県浜松市中区城北3-5-1
(駐車場をご用意しておりますので,お車でご来場頂けます)

受講料

C-プログラミングコース/組込みシステム開発コースの受講料は,HEPTコンソーシアム会員企業と非会員企業によって異なりますのでご注意下さい。
 
  • HEPTコンソーシアム会員企業
    • 受講1セッションにつき,1万円/1名 (税別)
  • 非会員
    • 受講1セッションにつき,3万円/1名 (税別)

教材サンプル

Quick Guide for C Programming Language

C-プログラミングコースを受講頂いた方には,C言語の文法をA3見開き(A4 4ページ)にまとめた以下の様なガイドをお渡ししています.演習中にC言語の文法や文法のサンプルを確認したい時などに利用して,効率的に受講して頂ければ幸いです.
サンプル
配布するガイドの例 と 1/4ページ(サンプルとして)

演習環境の構築方法

実際にC-プログラミングコースをご受講頂く場合には,演習環境は全てこちらでご用意いたします(演習環境を構築済のノートパソコンをご利用頂けます).

以下の資料は,受講前の予習あるいは受講中・受講後の振り返り,復習にご自宅で環境を整えたい場合にご利用ください.

C-プログラミングコースでは,開発環境として以下のソフトウェアを利用いたします(Java Runtime Environment (JRE) は,Eclipse IDE for C/C++ Developersを実行するために必要になります).下記のサイトからインストーラなどをダウンロードしてインストールしてください.Cygwin, Java Runtime Environment (JRE)にはインストーラが用意されています.Eclipse IDE for C/C++ Developers は,ZIPアーカイブで公開されていますので,適当なディレクトリに展開してください.
Cygwinのインストールにあたって必要なパッケージは以下及び依存パッケージになります(Eclipse IDE for C/C++ Developers 上で Cygwin GCC toolchains を利用するために必要なパッケージ群).
 
  • binutils
  • gcc
  • gcc-mingw
  • make
  • gdb

Eclipseを起動して新しい C Project を作成する際に,Project Type: Executable -> Empty Project (or Hello World ANSI C Project),Toolchains: Cygwin GCC を選択すれば開発環境の準備は完了です."Cygwin GCC"が選択肢に現れない場合は,Cygwinのインストールの際に環境変数pathにcygwinの実行バイナリへのパス(例:C:¥cygwin¥bin)のし忘れなど,Cygwinのインストールプロセスを再度ご確認ください.

C-プログラミング基礎コース1: ポインタ自由自在(1) 資料サンプル

C-プログラミング基礎コース「ポインタ自由自在(1)」の資料サンプルです.受講前にコースでの学習項目を確認するためにご利用ください.コースをご受講頂いた場合には会場にて資料を配布させて頂きます.

ポインタ自由自在(1) 資料サンプル[PDF:193.4KB]

募集要項・お申込み方法

募集要項

受講を希望される方は、募集要項をご確認頂き、以下のお申込みページよりお申込み下さい。
初回講座開始後、当方より請求書をお送りいたしますので、当方指定口座へ銀行振り込みにてお支払い頂きます。
また、時期・宛先などご要望等ございましたら個別に対応させて頂きます。

お申込み

お問合せ先

ご不明な点などございましたら、こちらまでお問合せください。