Oriental Code Talk ── επιστημηが与太をこく、弾幕とは無縁のシロモノ。
著作とお薦めの品々は
著作とお薦めの品々は 東方熱帯林へ。
わんくま
CodeZine
@IT
AWARDS
Microsoft MVPfor Visual Developer - Visual C++
Wankuma MVPfor いぢわる C++
Nyantora MVPfor こくまろ中国茶
Xbox
Links
CodeZineに載っけた「StateパターンでCSVを読む」なんですけどね、10日足らずでPVが9,000ほどに達しました。
なにがウケたんだろう。- CSVを読むって身近なネタだから?- デザパタを実装レベルで解説したから?- CSVを「ちゃんとパースする」コードってじつはそんなに多くない?- CSVはどっこいまだまだバリバリ現役?- excelデータをどーにかしたいって需要?...わかんないすー
投稿日時 : 2010年12月23日 18:37
私も拝読しました。 PDF に変換してまったりと。 > -デザパタを実装レベルで解説したから これがありがたかったです。来年も楽しみです。 2ページ目に3箇所ほど Typo がありました。 書けない(desabled)状態 状態がdesabled/enabledの2つだけだし class Stateは状態:disabled/enabed
どもですー # typo修正しました。タレコミありがとです。 「よーするにどぉ書きゃいぃのよ?」を実際のアプリケーションで見せたのがマル、と。 デザパタの解説はあちこちにあるけど、多くがサンプルどまりですからねー。 > 来年も楽しみです。 「お題」を頂戴できませんかしら。 こんなネタをこんな切り口で、みたいな。 次回はこのパターンきぼーん、とか。
- デザパタを実装レベルで解説したから? - CSVを「ちゃんとパースする」コードってじつはそんなに多くない? かなと思ってます。 >デザパタの解説はあちこちにあるけど、多くがサンプルどまりですからねー。 耳が痛いっすf(^^;
>「お題」を頂戴できませんかしら。 おお。では遠慮なく希望するだけしてみます。 WPF の設計パターンに MVVM というのがあるらしいのですが WPF を用いない MVVM の実装記事をお願いします。 木構造的な何か。AVL Tree や Left Leaning Red Black Tree の模範実装をお願いします。 デザインパターンだと Composit、Visitor あたりの使いどころをお願いします。 マージソート、ヒープソートの記事を執筆していらっしゃるので、次にシェルソートはいかが でしょうか。ドナルド・シェルの考案したソート。ドナルドソートをお願いします。
> 耳が痛い ぃゃぃゃぃゃぃゃ、実働レベルでデザパタ語るのは難しいから。 実物になるといろんなパターンこき混ぜることになるのでフォーカスがボケるやろし、そもそも"しんどい"し。 > WPF を用いない MVVM の実装記事をお願いします。 あー、本家マーチン・ファウラーのModel-View-PresentationModelみたいなもんかな。 書けるかも。ちょびっと考えてみますわ。 あとはTreeとSortすか。 データベースで使われるB-Treeとかね。 ShellSortもいいけどCombSortはどうだろう...って、記事になるほどのボリューム稼げないって^^;
記事拝見しました。 csvはまだまだ現役だと思います。(少なくとも私の業界では) 実装はVBのTextFieldParserを使うのが一番手っ取り早いですが、自作パーサーをMVPが作るとどうなるかってのはやはり気になりますね。 応援していますので来年も良質なコードをたくさん投稿してください。
> VBのTextFieldParser デスヨネー いや、MVPだからってびうちほーわんだほーなコード書くわけじゃなく、 あたしゃむしろオーソドックスな渋ぅいスタイルじゃないかしらん。 今回はStateパターンで実装したんだけども、RFC4180には文法をBNFで 定義してあっからyacc/lex使った方が楽だったかもです。
僕も記事拝見しました。 > - デザパタを実装レベルで解説したから? > - CSVを「ちゃんとパースする」コードってじつはそんなに多くない? これが目的でした。表題通りの内容で大満足です。特にデザパタ。 聞いてはいましたが何に使えるのか府に落ちていなかったので。 > 「実装の漏れは起こりえません(定義をサボるとコンパイルエラー)」 これで府に落ちました^^ 同じような機能を持った古いソースを、コピペして使い回していた人間にとって、 非常に見通しがよくなる予感がしました。 早速、何種類かあるCSVファイルの取り込み&更新処理を、 デザパタ(Strategy?)使ったソースに統一してみました。ありがとうございます。 以前の「マージ・ソート : 巨大データのソート法」もそうでしたが、 自分のような情報システム部に所属している人間(=まわりに聞ける人がいない)にとって、 「説明がわかりやすい(=適切な例題あり)」「オーソドックス(=定石?)」な記事は得難いです。
> コンパイルエラー 実はこのご利益、「後付け」です(ホホホ 僕の本番(?)では全部書かんと動き出さないのはヤなので Stateのハンドラは純粋仮想関数ではなく例外をthrowさせてます。 ありえない状態/事象のペアに対する処理が書きやすいし。 # 「お題」くださいー♪
Powered by: Copyright © επιστημη