SDOTECK HOME

  • ご参考になりましたか?
    SDOTECKブログでは、みなさんからのフィードバックをお待ちしています。 説明が解らなかったり、もっと詳しく解説してほしいポイント・テーマがありましたら、お気軽にsudoteck@gmail.com までメールくださるか、記事にコメントして下さい。
  • -

RF PowerAMP なら

  • RF AMP DESIGN

HEX calc pro 1.00

  • HEX calc pro ver1.00
    エンジニア向けの16進と浮動小数点を混在して入力出来る計算機 。 Version 1.00 高機能な 16進電卓や科学計算電卓はありますが、いちいちモードを切り替えなければならず、最大の問題は16進数と小数点値を同時に使用出来ないことです。
    詳しい説明はここ
    iTunes ではここまで

ATT calc

  • ATT calc ver2.00
    iPhone 用 RF アッテネーター計算ソフトです。  RF開発エンジニアに必要な、 dBm - W 換算機能をはじめ、π型やT型の ATTを 設計する上で、必要な dB値から抵抗値を算出する機能と、 E24系列の抵抗値を 使用したときの減衰量(dB)と整合インピーダンス(Ω) が表示されますので、どの 抵抗値の組み合わせがよいか検討できます。  また、正確な値を必要とする場合に2個のE24系列抵抗を並列接続して理想の値を 求める計算機能も持っています。  操作はピッカーホイールを回すだけですので、実験中でも片手で簡単に操作 できます。

FIL Calc

  •  LPF 計算機
    RFエンジニア向けフィルター計算ソフト LPFやHPFの設計をするときに、いちいちパソコンを起動してフィルタを設計、結果をプリントアウトして、実験室に行ってネットワークアナライザで測定・実験、ちょっと修正したい時にまたパソコンの所にもどって、再計算...というのが結構面倒で、手軽にiPhone で計算できるといいいなと思って作りました。

iPhone APP

  • ATT calc ver2.00
    SDOTECK が開発した iPhone APP の紹介です。 NEWS---SWRproリリース

Amazon

  • AMAZON Books

RAKUTEN

  • RAKUTEN

mujic.jp

  • music.jp
    music.jp

サイト内検索には?

  • -------------------------------
    ◆下の検索機能でこのブログのすべての関連項目を検索出来ます。是非使ってみて下さい。
サイト内検索
ココログ最強検索 by 暴想

SCHEMATICS

BOSE

  • BOSE
    クワイアットコンフォート20
無料ブログはココログ

Google

  • Google

« 情報サイトの限界 | トップページ | 差動アンプのはなし »

2012年6月27日 (水)

オブジェクト指向のプログラミングのはなし

オブジェクト指向とは
 現在のオブジェクト指向言語とはまた違っているかも知れませんが、今から20年前ぐらいに輸出用衛星受信機のソフトの話です。当時は組み込みCPUの NEC 78K シリーズを使って、受信機の様々なパラメーターを設定するのに、テレビの画面に表示する「オンスクリーン・ディスプレイ」メニューが主流でした。Osd
 リモコンでカーソルをアップダウンさせたり、左右のカーソルボタンで項目を選択して、+/-ボタンで値を修正っていうインターフェイスでした。当時はアッセンブラーからC言語に移行したころで、なんとかソースを見やすく機能的に構成したいが、メニューについては輸出用であることから、英語・フランス語・イタリア語・ドイツ語・スペイン語で切り替わることが当たり前で、メニューの表示文字の長さも変わるし、数値の単位も変わってくることがしばしばです。おまけに仕向け別にちょっとずつ機能が違うので、メニューにない項目があったりで、このメニューのプログラミングには大変苦労していました。
ハード的には
 当時はまだフラッシュP-ROMなど一般的で無く、ソフトはガラス窓がついた EPROMというメモリーにプログラムして、ソケットに刺すことが普通でした。それで、ちょっとでもバグがあれば、現地に行ってROM交換したり、生産中に変更があると書き換え・交換が必要なバグが出ないようにと、プログラマーは大変なプレッシャーになっていました。
ソフト的には
 当時、メニューは表示項目がCストリングの配列になっていて、言語によって最初のテーブルアドレスを切り替えて呼び出していました。表示の長さによって1画面に入りきれないと、次のページに移るのですが、表示すべきラインが一番下にあるのかどうかで次のページを表示するか判断し、戻って来るときは現在のライン位置が一番上に無ければページは移動しなくて良い。などプログラミングが大変複雑になっていました。数値編集ルーチンも、整数5桁のものから、単なる ON/OFF 、小数点以下2桁表示があるなど、表示・変更するルーチンも変数だけ変えれば同じように使えるものがあったりして、ROM容量節約のためにもできるだけ共用したいのも実情でした。
 そこで、考え出したのは、メニューを構造体の配列にしたことです。そのなかで、メニューの1ラインの内容を、
1.表示文字列
2.ページ番号
3.操作対象の変数アドレス
4.操作ルーチンのアドレス
5.表示単位
6.表示長さ
などを定義して、現在のページと表示すべきラインのページが異なっていたらページを再表示すること。そのラインで編集すべき変数と、設定ルーチンをメニューの構造体に持っておくことで、メニューを書き換えることによるトラブルとか、変数内容の修正に対応できる構造にしました。
 この考え方は、「オブジェクトが自分の名前、値、変更方法を自分で持って管理する」という現在のオブジェクト指向に近いもので、いくつかのトラブルの経験からたどり着いたとはいえ、正しい方向ではなかったかと思うのです。
 その後、デジタル衛星放送の時代になると、CPUは モトローラのCold-Fireになったり、Flash-Promにプログラムできるようになったりしましたが、やっぱりユーザーインターフェイスの部分が大変なのは今も昔も変わらないってことでしょうか?

« 情報サイトの限界 | トップページ | 差動アンプのはなし »

パソコン・インターネット」カテゴリの記事

コメント

Great article and your blog template is so cool.
This is a well written post. It is very informative and clear. genius

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/556493/55065900

この記事へのトラックバック一覧です: オブジェクト指向のプログラミングのはなし:

« 情報サイトの限界 | トップページ | 差動アンプのはなし »