スマートUI

もう年末ですね。冬休みまであと1週間、なんとか無事に過ごしたいものです。

それはそうと、この冬休みの宿題を先ほど自分で決めました。

Domain-DrivenDesign(略してDDD)を読むことに決定です。

タイトルからして、良い内容が書かれているであろうことは容易に想像がつきますし、

耳に入ってくる噂もだいたいよいものばかりです。

悪い噂といえば、「DDD難民に捧げる Domain-Driven Designのエッセンス」 なんてページがあるくらい、

読みたいけど、読めない難民がたくさん?いるくらいですかね。まあ、やってみましょう。

「DDD難民に捧げる Domain-Driven Designのエッセンス」 のページでは、

まあわかりやすくエッセンスが説明されていて、大変ありがたい限りです。

その中に、「スマートUIアンチパターン」というものがあります。

スマートUIアンチパターン」とは、こちらのページの中に書いてある表現を借りれば、

「ビジネスロジックやデータアクセスのコードが、UIのコードと一緒になってしまっている、いわばスパゲッティな状態。」

ということです。

私は体験しているのでわかりますが、正直、本当に困ります(笑)。

スマートUI」という言葉を知るまでは、よく「サンプル・アプリケーション・アーキテクチャ」と呼んでいました。

インターネット上によくあるウェブのサンプルコードを、そのまま拡張していって出来上がったもの、という意味です。

これに対する処方箋は、やはり「レイヤリング」です。

もちろんDDDでも図解付きで記述がありますが、そのほか様々な書籍でこのレイヤリングの図を見ます。

それぞれで微妙に違ったりはするのですが、主要なところは、

  • プレゼンテーションレイヤ
  • ドメインレイヤ
  • データソースレイヤ

で、このぐらいはどの書籍でも共通して分けている部分です。

とまあ、教科書通りのことを書いてみましたが、現実にスマートUIとご対面すると、そんな簡単にはいかないですね。

一度作ったスマートUIは「アンチパターン」というだけあって、とっても頑固です。

いったんそれで動きだしてしまうと、もう無理。リファクタリングでレイヤリングなんて夢のまた夢(涙)。

みなさん、本当にスマートUIだけはやめた方がいいですよ。

何の書籍を参考にしてもよいので、レイヤリングだけは行いましょう

IDCの電源が

データセンターにラックを立てるときは、各機器の電源容量を計算して、2系統から配電してもらうのがセオリーですね。

エンタープライズ系だと重要なDBサーバなんかは電源が冗長化してあるものを選んだりもしますよね。

とはいえ、IDCで電源障害に出会ったことなんてないので、なんだかなーなんて思ったりもしていたのですが。。。

今日、出会っちゃいました。

本当ですか。電源装置から煙が出たんですか。もしかして、立派な火事(ボヤか?)なんじゃないですか?

そうですか、複数系統の電源が供給停止になったんですか。それはうちのサービスもつながらないはずですよねえ。

ハードの引きは割と強いほうだと思っていたのですが、もう返上ですかねえ。

報告では、落ちたのは上位のネットワーク機器だとのこと。よかったよかった。うちのサーバは無事稼働していました。

もしかして、電源も引きが強くないとダメなんですかね。。

電源もなめちゃいけない。しっかり設計してちゃんとさす場所も考えなくっちゃね。

何が嬉しいって

本当にほんのちょっとした自作のソフトウェアを公開していて、それでお金を頂戴したりもしています。

大きなプロジェクトが終わった後よりも、自分で作ったほんのちょっとしたソフトウェアが売れた時の方が嬉しいのはなぜなんだろう?大変なプロジェクトが終わった後は、まあ、燃え尽きちゃって喜びどころではないんでしょうけど。

セールストークもなしで、純粋にソフトウェアを試して、評価して、結果ほんの少しでもお金を出してくれる。

この事実が本当にうれしい。

もう実装も古いので、そろそろしまっちゃおうかなんて思ったりもするのですが、たまに売れたりすると本当にうれしい。

さてと、アカウントを発行するか。