技術ブログ

組み込みソフトウェア開発でもようやく C++11 が使えるようになってきました。ARM 開発環境ベンダーの二大巨頭である Keil と IAR は、ともに C++11 コンパイラの提供を開始しています。

従来の C++ が ...

技術ブログ

今日の話題は、ソフトウェア業界を震撼させる「49日問題」です。

ここでの49日という数に重要な意味はありません。プログラマーがフリーランカウンタの取り扱いを間違えると、プログラムの起動から49日後に初めてそのバグが発動する ...

技術ブログ

C は1972年に誕生した言語です。その言語仕様からは、アセンブラと同等の融通性を持たせようという意図が感じられます。当時はアセンブラの時代でしたから、これは当然のことです。

それと同時に、セキュリティのことなどそれほど考 ...

技術ブログ

プログラミングで重視されている価値観の一つに、DRY 原則と呼ばれるものがあります。要するに「同じことを二度書くな」という意味です。

大抵はこの後、コードの重複は関数にすることで共通化して……と話が続くのですが、これは初歩 ...

技術ブログ

ソフトウェア製品であれば何であれ、エラーコードと呼ばれるものがありますね。”404 Not Found” は、世界で最も有名なエラーコードの一つです。

組み込み製品の場合は、表示部がせいぜい数桁のナ ...

技術ブログ

C++ では標準で bool 型がサポートされるようになりました。組み込み業界ではいまだ C が多く使われるので、次のようなコードを目にする機会も多いことでしょう。

#define FALSE 0#define TRUE 1

技術ブログ

クラス設計の技法の一つに、インタフェースと呼ばれるものがあります。オブジェクト指向らしい設計を実現するための、非常に重要な考え方です。

Java や C# だとこれが言語レベルで、すなわち interface というキーワ ...

技術ブログ

開発をしていて、「あの時は確実に動いてたのに、なぜか動かなくなった!」という状況、ありますよね。

本当はデバッガを使って理詰めでバグを追及できればそれに越したことはないのですが、嫌になるほど理不尽なバグというのが、組み込み ...

技術ブログ

C++ にはテンプレートという機能があります。なんとなく見た目がいびつで、長年 C だけでやってきた人を寄せ付けない雰囲気があります。

ですが実は、テンプレートは組み込み屋のために用意されたのかと思うぐらい、組み込みと相性 ...

技術ブログ

これは「Haskell が教えてくれたこと」の続きに当たる記事ですが、どちらを先に読んでいただいても構いません。

Haskell には「副作用」という概念が登場します。Haskell でプログラムを書いていると、副作用とい ...