はじめに
組み込みアプリケーション開発、特にセットトップボックス(STB)やデジタル家電、携帯電話などそれなりのUIを要求される製品の開発では、Webブラウザを搭載しユーザーインターフェース(UI)をHTML+JavaScriptで構築することがあります。この手法のメリットとして以下のようなことが挙げられます。
- UIとロジックの分離
家電製品に搭載するような画面の動きをプログラマが全てコードで記述しようとすると大変です。UIをHTML(+CSS)で記述できれば画面作成はデザイナーにお願いし、プログラマーはロジックに集中できます。最後のUIとロジックの結合作業はプログラマー側に残りますが…
- 開発工数の削減
UIをHTMLで記述できれば、C/C++やJavaで記述するのに比べて開発効率の向上が見込まれます。それに伴い、工数削減、開発期間短縮が期待出来ます。
- 豊かな表現力、操作性の実現
ブラウザがFlashなどのプラグインを使用できれば高度な視覚効果を比較的簡単に実現出来ます。
本記事では、これらのメリットをPC上のアプリケーションにも適用することを目指し、サンプルアプリケーションの作成を行います。
Read the rest of this entry »
Posted
January 28th, 2010 in S34 Lab
|
1 Comment »
Graphvizとは
AT&T研究所が開発したグラフ描画ツールです。
ただし、折れ線グラフや棒グラフみたいなExcelで作成するようなグラフではなく、ダイヤグラムや有向グラフなどが対象となります。
Graphvizの公式サイト
Graphvizを使うことにより、高品質な有向グラフを作成することが出来ます。どんなグラフを作成できるかは、Graphviz公式サイト 生成したグラフのサンプルを参照して下さい。
ソフトウェア技術者の方にとっては、Graphivizの使い方はそれほど難しくありませんし、ネットで検索すれば多くの解説記事が見つかります。
そのため本記事ではGraphvizの説明は最低限に留め、Graphvizをどのように活用していくかに焦点を当てていきます。
Read the rest of this entry »
Posted
January 13th, 2010 in S34 Lab
|
Comments Off
抽象データ型とは…
をオブジェクト指向の三本柱などと称しています。その中でも抽象データ型(あるいはデータの抽象化)はオブジェクト指向の最も基本的で重要な概念ではないかと考えます。
"データを抽象化する"とは、データをそれに対して適用できる操作の集合で定義することです。
簡単な例として"カウンタ"を考えてみましょう。カウンタには3つの操作:
- +1する (increment)
- -1する (decrement)
- 現在値を取得する
を提供させることにします。
さて、このカウンタをCで実現するとどうなるでしょうか…
Read the rest of this entry »
Posted
April 2nd, 2007 in article
|
No Comments »
はじめに
Cではsizeofによって構造体がメモリ上で占める大きさ(バイト数)を知ることができます。
struct s{
int x;
int y;
};
...
cout << sizeof(s) << endl;
僕の愛用する処理系、Visual C++ 6.0では 8が得られました。intひとつにつき4byteを消費するからでしょう。
それではC++でのclassの大きさはどうでしょう。内包するメンバ変数それぞれの占めるバイト数の総和になるのでしょうか。
Read the rest of this entry »
Posted
April 2nd, 2007 in article
|
No Comments »
従来のキャストの問題点
異なる型への変換において、C/C++ではキャストが用いられます。
// intからlongへのキャスト
int ival;
int lval = (long)ival;
ご存知のとおり、キャストは非常に危険です。 本来ならば型の不一致によるコンパイルエラーをねじ伏せるのですから。
Read the rest of this entry »
Posted
April 2nd, 2007 in article
|
No Comments »
Posted
April 14th, 2006 in reference
|
No Comments »
Posted
April 14th, 2006 in reference
|
No Comments »
Posted
April 14th, 2006 in reference
|
No Comments »
Posted
April 14th, 2006 in reference
|
No Comments »
Posted
April 14th, 2006 in reference
|
No Comments »