ホーム » 2005 » 4月 (ページ 2)

月別アーカイブ: 4月 2005

2005年4月
 12
3456789
10111213141516
17181920212223
24252627282930

検索・リンク

構造体によるオブジェクト指向

他学科OBの受講生を考慮し、構造体の説明を行う。 この説明の中で、オブジェクト指向の用語を多数取入れる。 これにより、電子情報OBの学生にはオブジェクト指向の入口を理解してもらう。

C言語で、オブジェクト指向もどきのプログラミングの例

struct Person {
char  name[ 30 ] ;
int   age ;
float height ;
} ;
void set_Person( struct Person* this , char s[] , int a , float h )
{
strcpy( (*this).name , s ) ;
(*this).age = a ;
(*this).height = h ;
}
void print_Person( struct Person* this )
{
printf( "%s %d %f\n" , (*this).name , (*this).age , (*this).height ) ;
}
void main()
{
struct Person saitoh ;
set_Person( &saitoh , "t-saitoh" , 40 , 172.3 ) ;
print_Person( &saitoh ) ;
}

この例のプログラムの例では、 set_Person , print_Person 関数により、 手続き抽象 となっている。 また、main の処理の内部には、データ構造の内容が一切記載されていないため、 データ抽象 ができている。これにより、処理とデータ構造の隠蔽化ができる。 これにより、 データ構造を擬人化してとらえ 『データ構造に命令する』 というイメージでプログラムが作れるので直観的 となる。

他学科OBのために、この話しの前に、関数への値渡し・ポインタ渡し・C++での参照渡し を説明する。上記プログラム例では、沢山の演算子の説明を防ぐために、 アロー演算子は最初の段階では説明を行わない。

恒例の学科紹介

恒例の新入生歓迎会でした。 例年の学生による教員紹介は時間の都合により自己紹介に留まりました。 トリを飾るは例年の堀井さん。

2005-04-19-00.jpg 2005-04-19-01.jpg

ガイダンス+制御構文

今年度のシラバスの説明の後、C言語の復習として、制御構文の説明。 while,for,do-while,if,switch までを確認。 switchの例で、case ラベルの定数のみと、 switch式に実数を使うと丸め誤差で動かない場合がある等を紹介

システム設計演習の方針説明

システム設計の演習の半期予定を大雑把に説明し、 テーマ案を考えやすいように、こちらで考えているテーマ案を紹介。 学生への配布資料を示す。 最後の30分程は、各自グループ決めやテーマ案を考えるための討論時間とする。

Symantec Anti Virus 9.x のインストールに失敗する。

学校にて導入している、Norton AntiVirus Corporate Edition 7.6 が、ライセンス切れ となり、同社 Symantec Anti Virus Corporate Edition 9.0 に更新することに なっている。 自分のマシンは、すでに更新を行っていたが、学科の演習室のパソコン群を 一括して更新する。しかし、新規に導入した2台のパソコンだけ、 「InstallShield Wizard 完了-ウィザードは、 Symantec AntiVirus Corporate Edition のインストールを完了する前に 中断されました。 」と表示され、インストールに失敗する。 同メッセージにて、Google にて調べると、以下の処理が必要みたい。

手動アンインストール

うーん、でもダメじゃん。

対外向け DNS のトラブル

センターより『学外からメールが届かない』というトラブル報告が届く。 自宅より調べると、対外向けの DNS が動いていないことが判明。 DNS 関連のソフト・ハードの再起動を試みるが効果無し。 しかたがないので、対外 DNS の named.conf を、部分的に消しながら、 原因を探る。その結果、正引き zone ファイルのみ機能していないことが判明。 そこで、named-checkzone コマンドで、調べると警告が表示された。

CNAME の設定ミス

よくよく調べると、自分自身も以前に設定を間違えた事のある CNAME 関係。

≪ 間違った設定 ≫
hoge IN A      xxx.xxx.xxx.xxx
IN CNAME alias.foo.bar.jp
; CNAME を設定するホスト名では、アドレス指定を書いてはいけない。
; 逆引き時に混乱の元になるからだろう。アドレス指定は、
; 本当の名前の所にだけ書くこと。

設定を直し動作が確認できたが、問題は zone ファイルを書き換えたのは3ヵ月程前の話し。 SOA の Serial もちゃんと修正してるし、 Expire 期間も 1ヵ月程なので、 この2ヵ月ほどトラブルなく動いていたことが、逆に不思議。
# なぁ〜ぜぇ〜♪

Debian パッケージ upgrade を行う。

初回ガイダンス、処理速度の見積り

情報構造論の最初として、講義の目標を説明する。 特に、速度・メモリ・プログラムが簡単かという3つのポイントの、 トレードオフ状態を説明する。

処理速度の見積りの実例として、単純サーチ・2分探索の2つについて、 ループを回る回数を一般式化して示し、データ数が多い場合の見積り について説明を行う。 次週には、2重ループなどの事例を話した後で、オーダ記法に進む予定。

ガイダンス+OOPの歴史

オブジェクト指向プログラミングの授業にあたり、シラバスを配布し、 概要を説明する。説明にあたり、最初にオブジェクト指向の考えの歴史を紹介。 Simula,Smalltalk,C,C++,Java,C# 等を順序を追って説明を行った。 特に、Smalltalk において、GUI プログラミングに向いていた点として、 MVC モデル(Model,View,Controller)の概要なども交えて説明を行う。 概念としては、(1)抽象化,(2)カプセル化,(3)継承についておおまかに説明を行う。

最後に、時間が余ったので、電子情報卒以外の学生向けに、構造体の説明を行う。

M科 OB が 2名が参加となった。最後まで聞いてくれることを目標に頑張ろう。

夏期実習資料を掲示

夏期実習の資料(昨年度実績・昨年度の報告会資料・ 今年度技科大のオープンキャンパス資料)を教室に掲示する。 さっそく、学生が資料に群がっている。

システム

最新の投稿(電子情報)

アーカイブ

カテゴリー