2009-07-01から1ヶ月間の記事一覧

モデル部分でいろいろと発見があった

モデル(ドメイン領域)の処理について考えたこと // 今までこれがモデルの役目だと思っていた ※擬似コードです var model = new Model(); // パラメータをセットして model.setUser("ジョン"); model.setDate("2009/07/31"); // 実行して model.execute(); //…

そして何に気付いたか

マークアップ技術の可能性だ。 プレゼンテーション領域 HTML CSS ドメイン領域 XSL データソース領域 XML HTML CSS XML XSLといったマークアップ言語の可能性を過小評価していた、これではダメだ、思考を拡張してXAMLにつなげるのだ。マークアップ言語こそア…

出力処理 MVCのMの部分(2)

通信されるデータ構造 実際にプレゼンテーション役のHTAが受け取るのは、WSHの標準ストリーム出力から得られる文字列バッファだが、XMLファイルとして出力したのがこれだ。 debug.xml <Feed> <UserName>ジョン</UserName> <Date>2009/07/31</Date> <Menu>朝食 <Food>目玉焼き <Calorie>100</Calorie> </Food> <Food>牛乳 <Calorie>120</Calorie> </Food> <Food>トースト </food></menu></feed>

出力処理 MVCのMの部分(1)

モデル役のスクリプトコード、プレゼンテーション側からプロセス起動される。 プレゼンテーション役のHTAからフォームのパラメータを渡してもらう。アプリが何らかのパラメータをプレゼンテーションから渡してもらうのは、HTTPリクエストのPOSTとGETの概念と…

出力処理 MVCのVCの部分(3)

モデルから取得したデータをこのプレゼンテーションの為に整形する UIイベントプロシージャのOutputProcedure.js内でXSLT処理する為のスタイルシート。これはある意味処理のカプセル化といえるだろう!盲点だった。 OutputTable.xsl <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > </xsl:stylesheet>

出力処理 MVCのVCの部分(2)

プレゼンテーションのUIプロシージャコード モデルスクリプトを別プロセスで非同期に実行する。モデルの処理結果はWSHの標準ストリームからXML構造の文字列バッファとして受け取る。 OutputProcedure.js //////////////////////////////////////////////////…

出力処理 MVCのVCの部分(1)

プレゼンテーションのメインフォーム HTMLフォームパラメータをWSHに渡す役目、また同ファイルに記述されたCSSでプレゼンテーションの外観を定義している。 OutputPresentation.hta <html> </html>

出力処理をHTAとWSHでやってみた

スクリプトファイルの構造 プレゼンテーション部分が肥大している。でもそうだろう、データをどの様な表現で使用したいかを決めるのは、あくまでプレゼンテーション(ビューコントローラ)なのだ。

HTAとWSHとCOMとの連携

今更ながら、普段なにげなく使っている技術にも、それぞれに深い関連性があると気付いた。WSHはWindowsからCOMコンポーネントをドライブする、1番手軽でかつ強力な環境だ。そしてHTAはMicrosoftのTridentフレームワークを、WSHスクリプトにGUIとして提供する…

はてなダイアリーに長いプログラムコードを載せると

そのままでは縦にビロ〜ンとなって非常に読みづらい、CSSで定義してやれば縦スクロールバーが出てこの問題を解決してくれる。デザインの詳細設定のスタイルシートに以下のCSSを記述する。 .body .section pre { /* pre領域の最大高さ */ max-height: 30em; /…

そして何を学んだか

このWSHでの実装形式では各レイヤーが物理的に分割されている制約があった。 (追記)そうでもないか、モデル役を取り扱う部分だけか・・ 実装概要 プレゼンテーションからモデルへは、起動パラメータでフォーム情報を渡した。 モデル内部からデータソースの取り…

MVCのMの部分

モデル役のスクリプトコード(※長すぎ・・) InputModel.wsf * @version 1.0.0 * @since 2009.07.28 * @update 2009.07.28 */…

MVCのVCの部分(2)

プレゼンテーションのUIプロシージャコード InputProcedure.js /////////////////////////////////////////////////////////////////////////////// /** * @fileoverview MVC プロトタイプアプリ 入力UIプロシージャスクリプトです。 * InputPresentation.ht…

MVCのVCの部分(1)

プレゼンテーションのメインフォーム InputPresentation.hta <html> * @version 1.0.0 * @since 2009.07.28 * @up…</html>

MVCをWSHでやってみた

スクリプトファイルの構造 Microsoftの10年前の技術だが ある意味時代を先取りしていたと思う HTA + WSH(COM + ADO) + MDB WPF(XAML) + ADO.NET + RDB 同じ3層レイヤー構造になる、この仕組みはWPFのXAMLに繫がると思うのだ。

昨晩は地元の花火大会でした

幾重にも折り重なり、夜空に煌めく大輪の花。これは今の一瞬を大事に生きろってメッセージなんだ。ささやかな町だが、そこには笑顔が溢れていた、守り続けていくべき未来が確かにそこにあるんだ。すべての人達が、様々な役割を演じながら、一人ひとりが気づ…

はてなダイアリーにTwitterでの発言をさりげなく表示する方法

はてなダイアリーの[管理ツールトップ]→[デザイン]→[詳細]で、[ページのフッタ]部分に以下のHTMLタグを追記するとTwitterでの発言が表示される。ページのフッタ部分の最後は、こうなっているはずなので、このタグの直前に挿入する </div> </div> 以下のHTMLタグを追記す…

燃やすべき情熱

若くて情熱の塊のような男がいた。半年前までヒヨコだったその男は猛スピードで脇を駆け抜け、そして大空に舞った、ヒヨコは鷲になった。別の若人たちはヒヨコからニワトリになり、人間の為に卵を産んでいた、そんなニワトリたちが何万匹といた。人間は鷲を…

気楽に行こう

無理や背伸びはしてなくてもいい、得るものは沢山ある。毎日少しずつ、コツコツと継続することが一番大切なんだ。

RDBとXMLの違い

なんでモデル設計で迷いがあるのか分かった、想定されるシステムではデータソースが複数あり、それぞれの関連が可変であると考えているからだ。そしてデータソースにはRDBとXMLファイルを利用する。 RBDとXMLの特徴 RDB:テーブル構造でお互いが関連をもつ XM…

MVCのモデルの構築で

おかしいと思うのは次の点だ前提として、MVCにおけるモデルはビューコントローラに依存しない、しかしビューコントローラはモデルに依存する。データ入出力周りのラフ仕様図があり、表示したいデータはおおよそ判別出来たとする、だが今後、表示の仕様が変更…

Avalon未来への架け橋

WPF + ADO.NETの組み合わせは、MicrosoftのMVCアーキテクチャの最適実装の1つだ。MFCのドキュメントビュー構造の複雑さを切り捨て、ビューコントローラとモデルを完全に分離した.NET Frameworkのアーキテクチャは理に適っていて非常に美しい。 データを表現…

ビジュアル表現の意味

Googleのアクセス解析を利用している、現代を生き抜く為には情報を分析するスキルが必要不可欠だ。客観的なニーズと自身の戦略がマッチングしていく方向に自らが進んでいかなくてはならないからだ。 昨日はインドからアクセスがあった、ある程度ブログ内を眺…

ここでモデルについて疑問が

沸いている、データ入力画面とデータ出力画面がある、ここでのモデルは1つのオブジェクトにラップされるのか、複数のオブジェクトで構成されるのかという問題だ。 1つのオブジェクトにラップされる場合 メリット 最終的に管理が楽になると思う デメリット 多…

ざっくりとした外部仕様は

こんな感じだ。 データ入力画面 データ出力画面 シンプル過ぎるが良しとしよう、ここからどんどん仕様変更追加が発生するのだ。

そしてXMLファイルの構造は

1日分のデータがとりあえずこんな形式で表現される感じにしようか、 <Feed> <UserName>ジョン</UserName> <Date>2009.07.24</Date> <Menu>朝食 <Food>パン <Calorie>150</Calorie> </Food> <Food>牛乳 <Calorie>120</Calorie> </Food> </Menu> <Menu>昼食 <Food>ラーメン <Calorie>300</Calorie> </Food> <Food>餃子 <Calorie>220</calorie></food></menu></feed>

要件のER図っぽいもの

検討用プロトタイプアプリの要件です。 題目 カロリー計算システム システム概要 利用者が食べたものを入力して1日のカロリーを計算表示出来る ※適当ですが・・

C#でやりますよ

ひとまず取り掛かることなど・・ 目的 分散システムの構築方法を検討する 課題 プレゼンテーションとドメインの分離 ドメインを異なるプレゼンテーションで供用する 異なるデータソースでのドメインの供用化 データソースにRDBとXMLファイルを使用する 異なるO…

やるべきことは

ビジネスロジックをどのように実装するべきかを検討することだ。 課題は データソース(DB構造、ファイル構造)は変更される可能性あり でもプレゼンテーション層の修正は最小限に抑えたい ビジネスロジックはどこまでプレゼンテーションに操作を公開すべきか …

結局WinFormとかで

使われてきた 盲点だったこと MVCフレームワークという思想がそもそも幻想だ、なぜならビューコントローラはモデルに必ず依存してしまうから、抽象ビューコントローラ(フレームワーク)にはモデル概念は影も形も無いのが正解だ。VBとかのRADで答えは出ている…