ソフトウェアの匠
ソフトウェアの匠
posted with amazlet at 05.02.20
まつもと ゆきひろ 萩原 正義 高林 哲 羽生田 栄一 八田 真行 日経バイト
日経BP社 (2004/10)
売り上げランキング: 32,762
通常2~3日以内に発送
おすすめ度の平均: 4
4 ソフトウェア、「知」の最前線
4 ある程度、知識のある人向けです

日経バイト誌連載からソフトウェア関連の専門家のコラムをまとめたもの。

高林哲の検索技術論をWebで読んで面白かったので他のも面白かろうということで買った。まだ読み途中だけど羽生田栄一さんのオブジェクト論、デザイン・パターン論が面白い。

しかし手続きだけでは、業務で利用するデータ構造や業務フローといった大局的なモジュールを管理したり業務知識を再利用するのは難しいのです。そこで、関連するデータ構造と業務ロジックをまとめてパッケージにして、それをソフトウェアの単位にしようという言語が登場しました(モジュール指向言語、抽象データ型言語:Modula-2、Adaなど)。これは日本では普及しませんでしたが、その正当な進化系としてオブジェクト指向がようやく近年活状を呈してきたところです。

「関数からクラスって発想飛びすぎ」と疑問に思ってたんだけど間には「関数とデータを一まとまりにしよう」という言語があったそうです。

そしてオブジェクト指向の説明が簡潔で良かった。

オブジェクト指向の凄いところはこの先にあります。小行列化して管理対象にしたクラスを「ソフトウェア・モジュール」であると同時に「型(タイプ)」でもあり、問題領域のモデルを構成する「概念(コンセプト)」でもある、としたのです。少々の齟齬には目をつぶって、「クラス=モジュール=型=概念」の方程式が成り立つと宣言してしまったのです。

コレこそオブジェクト指向のソフトウェア世界における成功を約束したものです。モジュールであるから、ソフトウェア工学の基本的対象としての地位を確保できます。またデータ型なので、古典的なプログラミング言語の中でも位置付けが可能です。なおかつ概念クラスとしてモデルで位置付けられるので、開発の上流におけるビジネス・モデリングや要求分析にまで触手を伸ばせるようになったのです。

「クラス=モジュール=型=概念」は分かり易かった。
また、デザイン・パターン論ではパターンはオブジェクト指向の弱点である「複数オブジェクトの振る舞いの定式化を補うもの」であって「複数オブジェクトがかかわる任意の観点」を扱うアスペクト指向などの範疇に片足突っ込んでいると。
今まで(アスペクト指向は)実装上の技術として便利なんだろうなあぐらいしか思ってなかったのでなるほどと思った。

MojaviよりもHTML_QuickFormよりも実はDB_DataObjectが一番好き。
でもMojavi + DB_DataObjectで罠るのが$user。
テーブル=クラス、カラム=メンバ変数、外部キー=包含と考えるとテーブル名はすごくシンプルで、データの集合を一言で表すいい名前をつけなきゃいけない。Userって凄く使いたくなる。

$user =& DB_DataObject::factory('User');
$user->find();
while ($user->fetch()) { $users[] = $user; }

とか超やりたい。(名前が気持ち良さのキモ)
が、MojaviはAction#execute($controller, $request, $user)なので無理・・・。

p0t: Mojavi QF定義

FormActionなるものを作って、そこでmodule/forms配下のclassをアクションに応じて自動的にexecuteするなんていう方法なんかどうでしょうか。

投稿者 おざき : 2005年02月07日 23:28

このアイデア、OOPP Memorandaの人がやってました。

OOPP Memoranda

・Mojaviフィルタ FormLoadFilter.php

ブタすんのSmartyFilterをパクって作ってみました。 actionsフォルダと同じ階層にformsというフォルダがあって、その中にアクション名Formというファイルがあると、それを読み込んでフォームインスタンスを作り、リクエストにセットします。
FormLoadFilter

Actionを一個にしてれば(InputAction, ConfirmActionとか分けないって意味)これはイイ!

買ってはいけない [ソーテック] – higuchi.com blog

もうすぐメーカー保証が終わるので、あわてて修理依頼の電話をしました。以下は、それからのやり取りの概略の記録です。こんなことになるとは思ってもいなかったのでメモが不十分で、日付など細部に間違いがあるかもしれませんが、経緯は事実に忠実です。

ソーテックはサポート酷いというお話。サポートや修理を職業にしている人のコメントなど相まって今週妻が浮気します。並に長いエントリーに。最後はむしろ良い話になってます。

超簡単コピペ型レンタルブログパーツ – JUGEPi!(ジュゲピ!)

超簡単コピペ型レンタルブログパーツ – JUGEPi!(ジュゲピ!) JUGEPi!はピッと貼ってパッと表示されるブログパーツを提供します。

うへぇ、komono toolsではこういうのやりたいと思ってたのに既にあったようです。しかもかわいいし。コレと組み合わせてBBSとか作ろうと思ってたんです。

あ、でもJUGEPiの方は今バグってて新規登録と書き込みできないようです。ツイてる!

Open Proxy からの Trackback Ping を拒否する MT プラグイン: blog.bulknews.net

Trackback Ping SPAM がなかなかひどいことになってきていて、特定のキーワードや URL ベースでブラックリストしているのですが新規追加もなかなかメンドウ。

ということで、DNS ベースの Blacklist である DSBL を利用して IP アドレスがブラックリストに載っている場合は Trackback Ping を拒否するプラグイン mt-tbping-dsbl をつくってみました。

tbping_plugin.png

Googleがnofollow属性をページランクから除外してから露骨にトラックバックスパムが増えてきてるようなので導入。

動作にはNet::DNSかnslookupコマンドが必要とこのこと。丁度nslookup欲しかったのでこっちを入れました。debian woodyだとdnsutilsパッケージに含まれてました。

利用可能なプラグインに表示されて嬉しい。でも常連であるonline pokerからは防げず!

[を] やっぱ早起きか

早寝早起きが何でも解決してくれそうな気がしてきた。 あれもこれも全部遅寝遅起きが原因か!?

相当解決してくれる気がする!この問題も

早寝は得意なんだけど早起きが苦手なんだよなぁ・・・。(12時間ぐらい寝てしまう)

たつをのホームページ

履歴書
謎めいていてもしょうがないので公開。

すごい共感。Blogのアカウント名も名前に変えよう。

島耕作が常務に昇進。出世ロードをまっしぐら、そしてモテモテです。

取締役島耕作 7 (7)
取締役島耕作 7 (7)
posted with amazlet at 05.02.17
弘兼 憲史
講談社 (2004/11/22)
売り上げランキング: 3,086
通常24時間以内に発送
おすすめ度の平均: 4
3 次作に期待
5 久々に
4 色気なしもなんだが・・・

PHP 観測所

あれから環境は変わり、PHP5 はリリースされ PEAR もメジャーに突っ込み Mojavi だって当たり前&次の模索が始まり、enzo.bz で始めた 2003 年当初に比べると実に様変わりしました。php|architect も日本語で読めるようになり、最近では Ethna なんてスイートなモノも出て、主に英語圏の情報を喰わないと生きていけないという時代も終わった気がします。 1 年は長いな と実感。

PHP観測所が復活!
ちょうど自分に抜けてる情報が入ってくる心地よさ。ツイてる!