こんにちは。
どなたかクラスの概念を用いた
フローチャートの描き方
教えてください。
> クラスの概念を用いたフローチャート
それなんですか? どんなものをイメージすればいいですか?
# で、いまどきフローチャートっすか!?
クラスの概念(≒オブジェクト指向)を前面に押し出すなら、フローチャートのように
手続きを記述するようなモノを描くのではなく、クラス同士の関連や用いられ方を
記述するUMLあたりを描いた方がよいのではないかと思います。
# 手続きを記述するにしてもフローチャートは構造化プログラミングと相性が悪いし。
# という訳で、たまにPADを薦めたりしてるけど、広まる気配なし……
難しそう。俺が知らないだけか?
フローチャートっていうと
アルゴリズムとかの処理の流れを示すのかな。
だとするとクラスの概念はうまく入れられないような気がする。
フローチャートかどうかは関係なく図にしたいだけなら
UMLに色々あるよ。
用途別にいくつか種類がある。
シーケンス図かコラボレーション図、アクティビティ図
でも、必ずしもクラスの概念で図を描くわけでもないなあ。
無理にUMLにこだわらなくてもいいとも思う。
俺の個人的意見だけど。
dioです。様々な回答ありがとうございます。
質問の補足をしたいと思います。
今回のプログラム内容ですが、
2つのiniファイル(更新用、マスタ用)があり、これらのデータを比較、
照合し新規のファイルを作成するというものです。
更新用がマスタ用に反映されます。
iniファイル専用のAPI関数などがあったり、ひっぱってきたセクションや
キーなどの比較方法など複雑で今の私には超難関です。
力がお有りの方、おびえる子羊をお助けください。
分かりにくい点があれば補足いたします。
質問ヘタ。
結局何が/どこがわからないのかがどこにも記されていません。
質問も体裁を成していませんけど。
>2つのiniファイル(更新用、マスタ用)があり、これらのデータを比較、
>照合し新規のファイルを作成するというものです。
>更新用がマスタ用に反映されます。
すでにやりたいことの流れはつかんでるじゃないか
あとは流れにそってプログラムを書けばいい。
どうしても「クラス」って言葉をいれなくちゃいけないわけじゃないよな
>iniファイル専用のAPI関数などがあったり、ひっぱってきたセクションや
>キーなどの比較方法など複雑で今の私には超難関です。
聞きなれない用語におびえてるだけ。
たとえば、iniファイルをメモ帳で開いてみれ、ただのテキストファイルだとわかる。
>力がお有りの方、おびえる子羊をお助けください。
おびえるのは、基盤ができてないから。
言語を基礎から勉強すべき
・・・あれ、なんか自分の胸がいてーや
ようするに diff だね。
diff のライブラリは、sourceForge.jp/ にあるだろうから、探して
かっぱらってくればいい。フリーツール(ライブラリ)を使うことに
プロジェクト的に抵抗があるなら、自作しかない。
差分抽出は、上に回答してくれた方々でも結構てこずる部類のプログラム
だと思いますよ。ならお前がC++で作れって??もう忘れてしまったので
ほぼ無理ですw
マスタと更新ファイルの内容によって差分の取り方とマージのやり方が
変わってくるのでもう少し詳細な情報がほしいですね。
例えば、
マスタ・更新共以下のルールで記述される。
(1)コメントなし。
(2)カテゴリ中のメンバーの右辺に "=" が現れない。
(3)カテゴリの無いメンバーはありえない(これはどーでもいいけど)。
(4)メンバーの右辺値のクオート囲み内文字列は解析不要。
ini ファイル中のコメントまでマージ対象とすると格段に難易度がアップ
するのでここらへんをきっちり煮詰めた方がいいですね。
コメントが無ければ、単なるハッシュマップのマージですから。
コメントがあり、コメントも適宜更新する必要ある、となると、本格的な
diff と同じロジックを持ったパーサーが必要になります。
以上
diffとはちょっと違うんでないかと。
更新mapにある各(section,key):valueに対し、
マスタmap に同じ(section,key)があるならvalueを書き換える。
マスタmap に同じ(section,key)がないならマスタに(section,key):valueを追加。
だと勝手に解釈したんだが。スレ主の見解を求む。
>>力がお有りの方、おびえる子羊をお助けください。
お前ら、さっさと模範解答だしゃいいんだよ、とも受け取れる。
微妙な表現だしw、自分を卑下するようなことは書かない方がいい。
この質問は可変長リスト、ハッシュテーブル、
簡単なテキストファイルパーサーと、言語関係なしに
初心者にはうってつけの素材だと思うのですが・・・
もう少し肝心な部分の仕様を明らかにしてくれれば、
君の実績(コーディングを披露してね)を有識者の
方々皆サポート・アドバイスしてくれると思いますよ。
がんばってください。
>照合し新規のファイルを作成するというものです。
>更新用がマスタ用に反映されます。
この表現がわかりにくくて・・・
「ファイルが完全に一致していないなら、マスタ用のiniファイルを更新用と全く同じ内容にする」ということでしょうか?
もしそうなら、iniファイルなんて所詮テキストファイルなのだから、両方のファイルをテキストファイルとして読み込んで比較したり、FC.exeみたいな外部プログラムで比較して一致していなかったら
1.マスタ用のバックアップを作成
2.更新用をマスタ用に上書き(CopyFile関数など)
という力業もありなのでは?
無理矢理過ぎですかね・・・(汗)
前スレのマルチポスト先を見ました。
これならεπιστημηさんのやり方が一番妥当ではないかと・・・
本当にしたいことの質問じゃなくて
間違ったしかも関係ない質問して
更にマルチしているから答えにくいじゃないか。
話がややこしくなるから
ここは閉じたほうがいいな。
どなたか文字列照合のシンプルサーチ法か転置ファイルのフローチャートをください。本当に困っています;;お願いします!!
ツイート | ![]() |