クラスのフローチャート


dio  2007-05-10 00:46:51  No: 65073

こんにちは。

どなたかクラスの概念を用いた
フローチャートの描き方
教えてください。


επιστημη  URL  2007-05-10 01:00:50  No: 65074

> クラスの概念を用いたフローチャート

それなんですか? どんなものをイメージすればいいですか?
# で、いまどきフローチャートっすか!?


yoh2  2007-05-10 08:36:51  No: 65075

クラスの概念(≒オブジェクト指向)を前面に押し出すなら、フローチャートのように
手続きを記述するようなモノを描くのではなく、クラス同士の関連や用いられ方を
記述するUMLあたりを描いた方がよいのではないかと思います。

# 手続きを記述するにしてもフローチャートは構造化プログラミングと相性が悪いし。
# という訳で、たまにPADを薦めたりしてるけど、広まる気配なし……


wclrp ( 'o')  2007-05-10 09:18:09  No: 65076

難しそう。俺が知らないだけか?

フローチャートっていうと
アルゴリズムとかの処理の流れを示すのかな。
だとするとクラスの概念はうまく入れられないような気がする。

フローチャートかどうかは関係なく図にしたいだけなら
UMLに色々あるよ。
用途別にいくつか種類がある。

シーケンス図かコラボレーション図、アクティビティ図
でも、必ずしもクラスの概念で図を描くわけでもないなあ。
無理にUMLにこだわらなくてもいいとも思う。
俺の個人的意見だけど。


dio  2007-05-10 14:39:41  No: 65077

dioです。様々な回答ありがとうございます。

質問の補足をしたいと思います。

今回のプログラム内容ですが、
2つのiniファイル(更新用、マスタ用)があり、これらのデータを比較、
照合し新規のファイルを作成するというものです。
更新用がマスタ用に反映されます。

iniファイル専用のAPI関数などがあったり、ひっぱってきたセクションや
キーなどの比較方法など複雑で今の私には超難関です。

力がお有りの方、おびえる子羊をお助けください。

分かりにくい点があれば補足いたします。


επιστημη  URL  2007-05-10 18:08:45  No: 65078

質問ヘタ。

結局何が/どこがわからないのかがどこにも記されていません。
質問も体裁を成していませんけど。


Ryo  2007-05-10 21:30:41  No: 65079

>2つのiniファイル(更新用、マスタ用)があり、これらのデータを比較、
>照合し新規のファイルを作成するというものです。
>更新用がマスタ用に反映されます。
すでにやりたいことの流れはつかんでるじゃないか
あとは流れにそってプログラムを書けばいい。

どうしても「クラス」って言葉をいれなくちゃいけないわけじゃないよな

>iniファイル専用のAPI関数などがあったり、ひっぱってきたセクションや
>キーなどの比較方法など複雑で今の私には超難関です。
聞きなれない用語におびえてるだけ。
たとえば、iniファイルをメモ帳で開いてみれ、ただのテキストファイルだとわかる。

>力がお有りの方、おびえる子羊をお助けください。
おびえるのは、基盤ができてないから。
言語を基礎から勉強すべき

・・・あれ、なんか自分の胸がいてーや


mあ  2007-05-10 21:55:39  No: 65080

ようするに diff だね。
diff のライブラリは、sourceForge.jp/ にあるだろうから、探して
かっぱらってくればいい。フリーツール(ライブラリ)を使うことに
プロジェクト的に抵抗があるなら、自作しかない。

差分抽出は、上に回答してくれた方々でも結構てこずる部類のプログラム
だと思いますよ。ならお前がC++で作れって??もう忘れてしまったので
ほぼ無理ですw
マスタと更新ファイルの内容によって差分の取り方とマージのやり方が
変わってくるのでもう少し詳細な情報がほしいですね。
例えば、
マスタ・更新共以下のルールで記述される。
(1)コメントなし。
(2)カテゴリ中のメンバーの右辺に "=" が現れない。
(3)カテゴリの無いメンバーはありえない(これはどーでもいいけど)。
(4)メンバーの右辺値のクオート囲み内文字列は解析不要。

ini ファイル中のコメントまでマージ対象とすると格段に難易度がアップ
するのでここらへんをきっちり煮詰めた方がいいですね。
コメントが無ければ、単なるハッシュマップのマージですから。
コメントがあり、コメントも適宜更新する必要ある、となると、本格的な
diff と同じロジックを持ったパーサーが必要になります。

以上


επιστημη  URL  2007-05-10 22:04:10  No: 65081

diffとはちょっと違うんでないかと。

更新mapにある各(section,key):valueに対し、
マスタmap に同じ(section,key)があるならvalueを書き換える。
マスタmap に同じ(section,key)がないならマスタに(section,key):valueを追加。

だと勝手に解釈したんだが。スレ主の見解を求む。


mあ  2007-05-11 02:38:10  No: 65082

>>力がお有りの方、おびえる子羊をお助けください。

お前ら、さっさと模範解答だしゃいいんだよ、とも受け取れる。
微妙な表現だしw、自分を卑下するようなことは書かない方がいい。

この質問は可変長リスト、ハッシュテーブル、
簡単なテキストファイルパーサーと、言語関係なしに
初心者にはうってつけの素材だと思うのですが・・・

もう少し肝心な部分の仕様を明らかにしてくれれば、
君の実績(コーディングを披露してね)を有識者の
方々皆サポート・アドバイスしてくれると思いますよ。

がんばってください。


どら  2007-05-11 03:55:08  No: 65083

>照合し新規のファイルを作成するというものです。
>更新用がマスタ用に反映されます。

この表現がわかりにくくて・・・
「ファイルが完全に一致していないなら、マスタ用のiniファイルを更新用と全く同じ内容にする」ということでしょうか?

もしそうなら、iniファイルなんて所詮テキストファイルなのだから、両方のファイルをテキストファイルとして読み込んで比較したり、FC.exeみたいな外部プログラムで比較して一致していなかったら

1.マスタ用のバックアップを作成
2.更新用をマスタ用に上書き(CopyFile関数など)

という力業もありなのでは?
無理矢理過ぎですかね・・・(汗)


どら  2007-05-11 09:01:35  No: 65084

前スレのマルチポスト先を見ました。
これならεπιστημηさんのやり方が一番妥当ではないかと・・・


wclrp ( 'o')  2007-05-11 16:51:25  No: 65085

本当にしたいことの質問じゃなくて
間違ったしかも関係ない質問して
更にマルチしているから答えにくいじゃないか。

話がややこしくなるから
ここは閉じたほうがいいな。


ちちしぼり  2008-12-12 22:04:51  No: 65086

どなたか文字列照合のシンプルサーチ法か転置ファイルのフローチャートをください。本当に困っています;;お願いします!!


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加