ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

形式的な共通化により、意味が見えなくなる場合の対応

2008-11-25 13:27:26 | Weblog

さっきの形式的な共通化と意味的な共通化の話。まとめると、

業務に結びついている部分を共通化する場合(自衛隊と一般公務員の給与計算の共通化など)を
  意味的な共通化と、ここではよぶ。
  これは、アルゴリズムを共通化しているようなものである。

業務とは関係ない、計算システムへの落とし込みを共通化する場合(画面はStrutsでなど)を
  形式的な共通化と、ここでは呼ぶ。
  これは、アルゴリズムの実装を共通化しているようなものである。




 で、ここで、形式的な共通化を利用する場合(フレームワークなどもそう)、意味部分を考えないため、意味部分の情報を捨象して、共通化を行う。

 具体的には、Strutsの画面などで、各画面、それぞれ違いがあるけど、これを共通的にしないといけないので、ActionFormという中に入れている。
 VO(バリューオブジェクト)、カオル姫方式のハッシュマップに値をいれるのや、XMLで引数をわたすのや、HTTPの引数としてのURLエンコーディングや、InterStageのCBMMsgとか・・・挙げるとキリがないので、この辺でやめるけど、引数をなにかにいれるのが、これになる。

 プロセスのほうもそうで、Strutsの場合もActionに入れたりするけど、こちらのほうは、Javaだとリフレクションを使えばいいし、Cだと、関数をポインタにいれて、そいつを起動するなどできるので、引数のようにあえて共通化する変数・クラスとかは作らないけど、おんなじように、意味部分(給与計算とか受注とか)を捨象して、共通化する。

 これにより、画面やDBなど、実装部分は、形式的に操作できる。




 この結果、形式的な共通化により、意味が見えなくなることになる。
 引数をハッシュマップで渡してしまうと、引数の値は、わからない。
 共通のVOクラスを継承したものを引数とする場合、わたってきたクラスは、(VOを継承していることは分かるけど)実際に、どのクラスで、変数(フィールド)は何なのか、はわからない

 この場合は、共通の形式→意味変換が必要になる。

 具体的に言うと、

public void exec(HashMap arg)


と共通化され、引数がハッシュマップに入っていて、その属性と値が知りたいのなら


String[] argKeyList = (String[])(arg.keySet().toString(new String[0]));

でハッシュマップのキーを取得。あとは、arg.get(argKeyList[i]);

みたいな感じで、それぞれの値を得る。


引数が、あるクラスに入っている場合、Javaなら、かならず、Objectは継承しているはずなので、

 arg.getClass()で、クラスを取得でき、クラスのgetName()で、クラス名、
 クラスのgetField()でフィールドを取得し、そのフィールドに対して、getName()で、フィールド名

みたいな感じで、それぞれの値を得る。




 こういった、共通手続きで、意味的情報が取得できることはありがたいが、これらの情報は、動かしてみないと入手できないこともある。なので、共通化するときは、このような機能の有無にかかわらず、ドキュメントを残しておく必要がある(けど、ドキュメントも共通化すれば、もっと効率が上がるのよね)


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

形式的な共通化と意味的な共通化

2008-11-25 10:28:54 | Weblog

 あるプログラムやシステムを共通化すると言った場合、形式的な共通化と意味的な共通化がある。

 たとえば、給与計算を共通化するといったとき、
    自衛隊の給与計算も、外務省の給与計算も、人事院の給与計算も共通化するというのは、
         意味的な共通化といえる
    →つまり、業務に結びついている

 一方
    画面はStruts,DBアクセスはHibernateでORマッピング、
    その他設定ファイルはXMLでDom読み込み
      っていうのは、形式的な共通化といえる
    →つまり、業務に直接結びついていない

業務に結びついている部分の共通化は、そもそも、業務が共通化できるかどうかが必要である。
なぜなら、コンピューターシステムは、業務を計算モデルでシミュレートしているにすぎないわけで、
業務的には、不可能だけど、コンピューターで適当にやってよ!といっても、どう計算モデル
(=アルゴリズム→プログラム)をつくればよいのか。。。(^^;)

 一方、形式的なものは、業務にかかわらず、統一しやすい。
 画面の内容(=業務)にはかかわらず、表示方法、入力方法(アルゴリズムの実装)にかかわっているからだ。




 つまり、もっとはっきり言ってしまうと、

 意味的な共通化=アルゴリズム自体の共通化
 形式的な共通化=アルゴリズムの計算システムへの帰着(実装)レベルでの共通化

 といえる。アルゴリズム自体は万能性があるように作るのだから、そのうち、ある言語に帰着させる形式的な共通化は、ある意味、出来て当たり前といえるかもしれない。それに対して、アルゴリズムを共通化させるというのは、本質的に、そのアルゴリズム(まあ、業務?)に共通部分がないと出来ない。
 そこで、この、共通部分の担保の取り方(=共通部分であると、なぜ言い切れるのか?)が問題になる。




 ただし、形式的な共通化をしようとしたときに、意味的な共通化が入ってきてしまうときがある。
 その場合の問題などなどを、(このシリーズの?)次に書こうと思う。



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

児童ポルノサイトの閲覧制限、総務省が実証実験へ

2008-11-24 12:15:40 | Weblog

ここのニュース
児童ポルノサイトの閲覧制限、総務省が実証実験へ
http://headlines.yahoo.co.jp/hl?a=20081124-00000008-yom-soci

によると(以下斜体は上記サイトより引用)


 総務省は、児童ポルノサイトの閲覧を制限する技術の実証実験を行う方針だ。

 同省の研究会が26日にまとめる報告書案に方針を盛り込み、来年度にも実施する。


ほー、でその方法なのだが

 実験対象の技術は、閲覧を制限するサイトのリストを作成し、利用者が該当サイトのURLを入力した際に閲覧禁止の文言を表示するページなどへ誘導するというものだ。


閲覧禁止の文言見たさにアクセスする人が・・・
とおもったけど、そっか、相手にIPアドレスがばれてしまうので、会社からうかつに「閲覧禁止」の文言を見に行くことはできないと・・・


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

「C/C++でFlashアプリが開発できるAdobe Alchemy」ってまじ!。。。

2008-11-23 23:24:51 | Weblog

ここの記事
C/C++でFlashアプリが開発できるAdobe Alchemy
http://slashdot.jp/developers/08/11/23/0717231.shtml

によると(以下斜体は上記サイトより引用)

C/C++で開発されたコードをFlash Playerで動作させる「Alchemy」というプロジェクトが、プレビュー版ツールキットを公開している。


うぉー。。。
そーすると、Flashのグラフとか、Cでつくれるの??
期待わくわく・・・

とりあえず、URLをメモメモ。
Alchemy
http://labs.adobe.com/technologies/alchemy/

英語なので、こんどゆっくりみて、ダウンロードしよっと!



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

これぞ中国クオリティ?中国の3大エンジンの“パクリサイト”

2008-11-22 19:02:47 | Weblog

ここの記事
ネットユーザー大絶賛!新たに出現した“パクリサイト”、その名も…―中国
http://news.livedoor.com/article/detail/3909971/

によると(以下斜体は上記サイトより引用)


2008年11月20日、中国に出現した新たな検索エンジンの存在が、ネットユーザーの話題をさらっている。その名も「baigoohoo」。中国の3大エンジン「Baidu(百度)」「Google」「YAHOO」の“パクリサイト”だ。


トップページから(^^;)

でも、そーやってかいたら、普通の感覚だと・・・

はいはい、3つのサイトをマッシュアップしてだす、よくあるパターンよね・・

って思うでしょ・・・

うんにゃ、中国は、あなたの期待?を裏切らないみたいよ・・

実際にキーワードを入れて検索してみると、画面が3つに分かれ、それぞれ「本物」の検索結果が現れるという仕組みだ。


単純に3つ表示するだけかい(@_@!)

なんというか、想像のななめ上をいく手抜きさ。
期待、裏切りません(^^;)
これぞ、中国クオリティ??

P.S なお、このサイトを見る人に注意です。
ここ
◇写真中国/百度・Google・Yahooの無許可合体サイト「BaiGooHoo」
http://izasmile.iza.ne.jp/blog/entry/806298

によると、そのbaigoohooのトップページに悪質広告が含まれているそうです。
どの位置の広告かは、上記リンク先に書いてあります。
またbaigoohooのURLもそこにあるので、見たい人は、まず、上記サイトに行って、悪質広告を確認してから、トラップにはまらないようにして、いってくださいませ。。

P.P.S
でも「BaiGooHoo」 っていう名前なのに、Gooは無視されているのね(^^;)



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

<ノキア>携帯電話事業に参入へ 端末メーカーで国内初

2008-11-22 13:20:28 | Weblog

ここのニュース
<ノキア>携帯電話事業に参入へ 端末メーカーで国内初
http://news.livedoor.com/article/detail/3911247/

によると(以下斜体は上記サイトより引用)

携帯電話端末世界最大手のノキア(本社・フィンランド)は09年2月にも国内で携帯電話通信事業に参入する。NTTドコモから通信回線を借り、MVNO(仮想移動体通信事業者)として、独自の通信サービス事業を始める。

ほー。でも、これだけでは、どんな特徴があるのかわかんないので、
いいのかどうかわかんないけど・・・

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

IT企業に勤務している人の転職検討状況-全体の44.8%の人が転職を考えている

2008-11-21 10:20:17 | Weblog

以下の記事
社員が離れる会社、社員を活かす会社、その特徴は?- NTTデータ経営研調査
http://news.goo.ne.jp/article/mycom/business/it/20081120-n08-mycom.html

によると(以下斜体は上記サイトより引用)


IT企業において、社員の能力開発や必要スキル明示に業績向上が関係する実態が、NTTデータ経営研究所調査で明らかになった。


そうな。ちなみに対象は

gooリサーチ登録モニターのうち、通信・IT関連サービス企業の勤務者を対象にした「IT人材のプロフェッショナル意識調査2008」で、有効回答数は1,199人。


その結果

IT企業に勤務している人の転職検討状況を見ると、「転職を考えており、志望企業や人材仲介会社と接触している、または予定がある」が5.9%、「転職を考えており、転職に向けた情報収集を始めている」が13.5%、「転職を考えているが、具体的な行動は起こしていない」が25.4%であり、全体の44.8%の人が転職を考えている。実際に具体的な行動や情報収集をしている回答者は19.4%に上る。


おお、半分の人が転職を考えている。。。
他の業界では、どうなんでしょうね。。。
ただ、このままの景気だと、

転職を考える

という、上から目線でなく、

転職を余儀なくされる

という、上からカットされる可能性のほうが、高いかも・・・

そーいう意味でも、転職をあらかじめ検討しておくという自衛策が必要なのかもしれませんね。


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

UMLの図、手書きで描くのに便利そう!コクヨの「東大合格生のノート」

2008-11-20 16:51:21 | Weblog

やばい、このノート欲しい!
コクヨS&T、東大合格生のノートから生まれたドット入り罫線ノート
http://trendy.nikkeibp.co.jp/article/news/20080919/1018893/


昨日、なんか、テレビに写ってて、ほしーーい!!って
めちゃくちゃ思った。

そーなのよ、方眼紙は、ますますでうざいんだけど、
きれいに字をかくのには、普通のノートはそろわなくて、使いずらいのよ。
とくに、字下げするときとかね!!

これがあると、チョー便利じゃん!

さらに、UMLの図とか書くのも便利そうだよね!
フリーハンドで図を描くと、きれいにならないけど、
これだったら、ドットの点があるから、(アクティビティ図のアクティビティの角の丸めなど)
点何個分で丸めをつけるとか、決められるし・・


今週末にでも、買いにいこっと!
(売ってるのかなあ、文房具屋さんに・・・)


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Excel VBAで、ある文字を含むセルの行数を知りたいときなどなど。。。

2008-11-20 12:04:20 | Weblog

 ちょっとメモメモ。

 たとえば、現在アクティブになっているシートのA桁に、"ウィリアムのいたずら"という言葉を含む行番号を返したい
Sub Macro1()
Dim kekka As Integer

kekka = ActiveSheet.Columns("A:A").Find(What:="ウィリアムのいたずら", LookAt:=xlPart).Row
MsgBox kekka

End Sub


くわしくはここ
条件に当てはまるセルを検索する(Find/FindNext/FindPreviousメソッド)
http://www.moug.net/tech/exvba/0050116.htm




  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

『Flash』が『Android』端末対応に

2008-11-20 10:32:41 | Weblog

ここの記事
『Flash』が『Android』端末対応に、『iPhone』対応いまだ実現せず
http://headlines.yahoo.co.jp/hl?a=20081119-00000008-inet-mobi

によると(以下斜体は上記サイトより引用)


スマートフォン市場の覇権争いにしのぎを削る Google に、新たな支持者が現われた。それは Adobe Systems だ。

両社は17日、Adobe の『Flash』技術がスマートフォン用 OS『Android』に対応したと発表した。Android は、Google 主導の Open Handset Alliance (OHA) が開発しているオープンソースのプラットフォームだ。これにより、『G1』をはじめとする Android 搭載スマートフォンでは、業界の寵児『iPhone』に欠けている機能が使えるようになる。


iPhoneの問題より、これで、開発プラットフォームが、他のケータイ、Webも含めて、Flashベースでっていう話が多くなりそうだよね。

RIAはFlashで・・・っていう感じかしら。。

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

SaaSが注目されるのは、運用が最近注目されるように、

2008-11-19 18:18:19 | Weblog

売り手(SI,ソフトハウスなど)からみると、
毎月定期的にお金が入ってくるからっていう側面もあるよねえ。

開発は、その日にお金がもらえるか?って聞かれると、水ものの側面はあるし・・・

ま、もちろん、利用者側から見ると、初期導入コストが抑えられるというメリットがあることは、言うまでもないことだけど。。


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

ドコモ、KDDIがandroid採用のスマートフォンを来年度発売

2008-11-19 14:48:01 | Weblog

ここのニュース
グーグル多機能携帯を発売へ ドコモ、KDDIが来年度
http://news.goo.ne.jp/article/kyodo/business/CO2008111901000267.html

によると(以下斜体は上記サイトより引用)


 NTTドコモとKDDIが、米インターネット検索大手グーグルの基本ソフトを使ったパソコン並みの性能を持つ多機能携帯電話(スマートフォン)を来年度にそれぞれ発売することが19日、分かった。両社はグーグルの携帯用無償ソフト「アンドロイド」を採用することで開発費を抑制、ネットの閲覧や動画の視聴が簡単な携帯を開発する。


 ほー・・・

 で、さっきのエントリで、iPhoneはタッチパネルだから、それ向けのサイトをっていう話を書いたけど。。。


画面に触れて操作するタッチパネルやキーボードなどを搭載する予定。


 ってことで、もし、タッチパネルを使うアプリなんかを考えるんなら、
 仮にいままでのHTMLでそれなりに動いたとしても、
 android向けのサイトにしたほうがいいんですかね。。。



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

iPhone対応Webサイト構築方法

2008-11-19 13:10:10 | Weblog

iPhoneでも、ふつーに、サイト作れば表示してくれるんじゃないの?
と思ったら・・・

こんなサイトが
iPhone対応Webサイト構築入門(前編)
http://sourceforge.jp/magazine/08/10/30/1051230


そして
iPhone対応Webサイト構築入門(後編)
http://sourceforge.jp/magazine/08/10/31/0839204

そっか、タッチパネルの操作とか、スクロールバーじゃないって言うところなど、違いがあるのね。。。

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

ひょっとして、人工知能より、人工感情のほうが、先なのか?。。。

2008-11-19 02:02:03 | Weblog

 きのうのNHKの仕事の流儀、それと、日曜日のNHKラジオの社会福祉セミナーの認知症の話を聞くと、認知症の人は、

・感情は、認知症前と同じ
・でも、それを行動にうつしたり、記憶したりしている部分が違っている
・なので、問題行動になる

ということらしい。。。

ってことは、人間は、

 入力器官(目、耳、鼻・・・)
   ↓
  感 情(恐怖、安心・・・)
   ↓
  思考(恐怖を取り除くには・・)←記憶(恐怖を取り除くための知識)
  行動(恐怖を取り除く行動・・)←記憶(行動を起こす知識)
   ↓

 出力器官(手、足、口・・・)

ってなかんじで、まず、感情が先っていうこと?
そして、認知症の人は、太字の部分に問題があるっていうことなのかしら。。??

 そーだとするとさあ、人工知能やってる人達って、知識とか、学習とか、記憶とかいろいろ研究してるけど、まずは、感情、人工感情から開発するほうが先なんじゃないか?

 こーいうものが入力されると、人は不快と感じる、そして、コンピューター上のプログラムでも、同じく不快とでてくる、つまり、感情をシミュレートできるというようなやつ。
 そーいうシミュレーターができると、人集めて調査とかしなくても、試作品をどう感じてくれるか、シミュレーションできるから、便利便利だよね。。。

 そーいう研究のほうが、先か??




  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

CASEツールがバザール型になるのは・・・

2008-11-18 17:41:18 | Weblog

 プログラムを自動生成するようなCASEツールが、

 ・非常に大昔は、開発工程すべてをカバーするようなツールが多かったのに対して、
 ・最近は、仕様書を利用して、工程(あるいはプログラムの)一部を自動生成
するような形になって、多く使われるようになった

(これを、伽藍とバザールになぞって考え、後者をバザール型とみなす考えもあるみたいだけど)

のは

 共通化の部分を、広く取ってしまうと、実際に作りたいものとの誤差が大きくなってしまって、共通化のメリットがなくなるからでしょうね。

 もちろん、抽象化すれば、広くはなるけど、今度は、なにもしなくなるので、効果が薄くなる。
 (CASEツールというよりは、お絵かきツールになってきたり・・・)

 そうすると、小さい部分に区切って、実際に作りたいシステムとの誤差が小さい範囲でCASEツールをつくる。

 でも、あんまりにも小さくすると、CASEツールの意味がなくなる。

 ってことで、経験的に、一番効果があるところが、ドキュメントから、ソース自動生成(あるいは、ドキュメントからドキュメント自動生成)っていうラインなんでしょうかね・・


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする