C言語でBluetoothスタックを叩きたい人のBluetooth開発入門その2




Bluetoothを扱うソフトウェアエンジニアにとって必要な知識は段階があると思う。
私は色々と遠回りをしてしまったので、二の足を踏む人が少しでも減ればと思い今回の記事を書く。

私が初めにとった学習方針は「いきなり完璧を目指す」ものだった。
というのも先輩に進められるがままこちらの本を借りて読んでみたのだ。





、、、意味がわからなかった。
というのも、こちらの本は情報の粒度が細かすぎて私の知りたいコトの要点がぼやけてしまうという問題があった。

ただ、先輩がこの本を薦めてくれたのには理由がある。
日本語の本で技術的に正確なことを記載しているものは実質この本だけだったからだ。
著者はBluetoothの仕様を策定したericsson社のエンジニアが書いたからだ。
確かに正しいし必要な知識はすべて書いてある。

だが、必要な知識を効率よく収集することには向いていない。
ブラックボックスをなくすことは徹底すべきだと思うが、
最終的にものづくりを目標としているソフトウェアエンジニアにとっては、
いい学習方法とはいえない。

私が経験的に学んだ学習のステップは
「ソフトウェアスタックを上から下にたどること」
Bluetooth/USBでいうと、
アプリ/テスト開発 => ライブラリ開発 => デバイスドライバ開発 => デバイス開発といった流れだ。

まずはAPIを手順通り呼んだらとりあえず実装できることを体験する。
動作を見つつ自分なりに使えるミドルウェア・ライブラリを書いてみる。
なれたところでデバドラのソースコードを見てみる。
デバイスを作ってみる

こんな感じで理解を深めていければいいんじゃなかろうか。
ちなみに私は現在USBのライブラリ開発をして、
USBとはなんぞやを学んでいます。
USBについては日本語で有用な書籍がたくさんあるのでBluetoothより学習し易い環境でしたー

コメント

このブログの人気の投稿

Callback関数を知らん人がまず理解すべきことのまとめ。

C言語でBluetoothスタックを叩きたい人のBluetooth開発入門その1

C++プログラミング入門(1) // 倉庫番プログラムの実装