うん、.NET好きだな。昨日のこと羽生さんの宴会に行った。PRESSから仕事を頂いたときに見本としてもらった11号に羽生さんのRDBについての記事があって、そのときからすげぇ人だな、と思っていたからだ。PRESSの想定読者層に対して良い視点を与えると考えられる点が多々あったからだ。ようするに、問題の立て方とその記述方法、その基礎となる知識のバランスがとてもよく取れていると感じたということだな。実際に無償のものなんて愛くらいしかないだろうって、それも怪しいが、この反応は記事の見出しについてだ、と誤解を受けるといやなので断ってはおく。それはそれとして、妙にたくさん集まったので、もっぱらひがさんや高井さんからIoCについて話を聴く(話すじゃなくて「聴く」なのは、文字通り、ここではじめて得た知識のほうが多いからだ)。本当に喫煙者は少ないな。待ったPOJOの読みとしてポホは間違いとして取り下げます。調べたので自信を持って「ポヨ」を推すことにします。執筆記事目録も作ってみた。[RubyやSchemeに出会った時のような感動がありません>.NET(C#)。それなりに楽だし、好きなんですが。[なるほど、「その感動させない点こそMSの戦略なのだ」と言い換えることもできそうだと思いました。[昨日はありがとうございました。COMって言うか、やっぱりCOMは好きだな。バッドノウハウを愛でるのは、その蓄積が残念なことに自分を形成する一部になってるからかも。いうか、バッドノウハウと言わずにプロトコルと言っておこう。Icazaは日本での知名度はかなり低く、17.9%である。知名度が低いといっても5位だけど確かに低いのかな。おもしろいのでこんなのでもリンクしておくか。Monoの開発動機とかについて語っている。Win32OLEパッチ(続)中田さんと青木さんの意見を取り入れた最終版。ありがとうございました。VC++6バイナリー。参考:ruby-list:39141の対応版。追記:10:30より前のパッチとバイナリーは削除時に問題あります。それより前にgetされた方は取り直してください。#make時にコンパイルエラーになったのでチェックしたんだけど節穴になってたらしい。String("いつだって同じ文字列");とか禁止したが。Boolean(true);じゃなくてBoolean.valueOf(true);使えと強要した覚えもあるが。Object.GetHashCodeもうとっくに解決済みかも知れないけれど、.NETのオブジェクトのIDに何を使うか?の答えはObject.GetHashCode()だと思う。オブジェクトのどのインスタンスに対しても、常に同じ値を返す必要があります。実装に処理を代行させることができます。既定の実装では、一意性や一貫性は保証されません。したがって、ハッシュ用の一意オブジェクト識別子として使用しないでください。いう説明もありますが、一意性が保証されないのは、GCによって回収されたスロット(sscliでは同期処理用のインデックス。本物の.NETでも同様な同期処理用インデックスが必要なため同等と考えられる)に異なるインスタンスが格納される可能性があるからだと考えられます。生存しているオブジェクト間に重複は論理的にありえないです。そうでなければ、参照等価検査が正しく行われないことになり最初の引用が間違いということになってしまいます。以上のことは参照型だけに当てはまります。idx;}FCIMPLENDとなっている。o.GetHashCode());としなければ、異なるクラスに属していたらアウト(かどうかまでは未調査)。2000こいつが相変わらずパフォーマンスのことを書けるのは、まさにインテルとMSが処理速度を向上させているからだな。いうか1.は非常に良い。してこうなるんだろう?目的のSTAスレッドは,ほかの要求の処理のためにビジー状態になっていたり,ブロックされていたりする場合がある。この場合,クライアントと,要求を受け取ったスレッドは,そのスレッドを待っていなければならない。100個のスレッド,50個のCPUがあったとしても,たった1つのスレッドが使えるようになるまで待ち続けなければならないのである。ユースケースの誤解はともかく、これは正しい。そこでプラットはMTAかNTAを使えと説教を垂れる。それはうまくやればそんなに間違いではない。7のようにCOM+カタログにエントリを作成することによって,同期サービスを必要とすることを宣言できる。すると,COM+は,サーバサイドのチャネルとスタブの間にポリシーオブジェクトを挿入する。このポリシーオブジェクトはミューテックスを使い,指定されたオブジェクトのメソッドにアクセスできるスレッドを1つだけに制限し,再入を適切に処理する。はぁ?100個のスレッド,50個のCPUがあったとしても,たった1つのスレッドが使えるようになるまで待ち続けなければならないのである。STA使うなと抜かした口はこの口か?追記:そうか。COM+コンポーネントが100個くらいゲッタ/セッタを持ち、それを呼び出すというシナリオならばわからんでも無いかも。それならば同期不要なメソッドもたくさんあるかも知れない。普通はファサードを作るだろうし、最悪でもビジネスメソッドの外部公開にするよな。分散しているっていう意識が無いのだろうか?#実は、そう単純ではない。再入の問題はびっくりするほどおもしろい。いうと実はそのオブジェクトをどう使うかによって全然取るべき戦術が異なるんですな。FreeThreadMarshalerでしょう。それならNeutralのほうが良さそうだ。言うものの目に見えないオーバーヘッドはわからんし、ここでの話題はクリティカルなパフォーマンスチューニングの話なんだからMS謹製の枯れていない仕掛けに頼るデメリットはあるな。5.以降はそんなに変じゃなさそうだ。4.についてこちらが見たのと同じような「はぁ」をそちらのジャンルの人が持つ可能性もあるだろうな。実際問題としてプラットはコンポーネントやサービスを開発しているわけではなく、いわゆるソリューション屋さんだろう。そこが問題で、全然わかっていないのだと思われる。アパートメントの実装を意識するのはコンテナだ。これはWindowsアプリケーションを開発する場合には重要なんだが、Windowを持てば否応なくSTAを利用することになる。DLLなど)あるいは、COM+コンテナやMTSコンテナの開発者ということになる。これは、ASPやASP.NETのアプリケーション開発者にとっては無関係(自分でどうこうできないこと。コンテナの中で動くコンポーネントを作るわけだから)なことだ。アパートメントでの利用を意識するのはコンポーネント開発者だ。STA,MTA,Both,Both/FTM,Neutralのどのタイプで実装するかの決定権を持つ。ビジネスロジックをアプリケーションコンポーネントとして開発する可能性はある。その場合、VB6ならば、これは否応なくSTAとなる。.NETではじめてそれなりの自由度を持てる。いうか、そのあたりをちゃんと調べてないな。ASP.NETの場合はおいておこう。ちなみにとりあえず、1番良いのは、STAで流すことなんだけどね。スレッディングをいじってどうにかしようというのは、最後の最後でしょう。Architectureを後で読む。Applicationsを軽く読み返したがCOM+でのBoth/FTMの問題は大きそうだな。一度ちゃんと読んでおこう。マイクロソフトのソース流出ふーん。world」というディレクトリができて、いっぱいファイルが入っているんですが仕様ですか?」といった問い合わせが殺到したり。期限切れ問題を思い出したり。結局、あれに引っ掛かった人達は単なる違法コピー厨ってことでFAなのかなぁ?でも、IEっていうかurlmonのソースは見たいな。input_data);みたいなのが転がってることだからなぁ。用のサービスルーチンが本当にあるかどうかだな。いうわけで、CAPIのソースが流出してたら、各国の諜報機関は今頃ソースを研究してますな。あー、でもブッシュだもんな。流出してたら今頃ルートサーバーを海兵隊が占拠して破壊しているわけだから、それは無いか。};とか書いてあったり(もちろん、そんな逆アセンブルでわかるような生なものは無いだろうが)。あとはハッシュはちゃんとしたものを使ってるかとか。#追記:与太に自分で突っ込み。シェアドソースからの流出なんだからそんなものが混じってるはずないだろ。コクシネル届いたコクシネル(コクシネル)iTunesに読ませたら「通称福助+9」っていうタイトルで出てきたけど、なかなか洒落の効いたやつが登録してくれたらしい(うん、実にネットワークだ)。「1分間」が違うような気がする。飛び立つ悲しみの円柱は美しきあこがれの外を向けて聳え立つという北園カッツェみたいな詩には覚えがあるけど(っていうか北園カッツェより好きだけど)。「道の終わり」や「壁」(これが口笛で吹けるやつ)は同一に思える。脳内再生を繰り返すうちにエッジが落ちて歌っぽくなっちゃったのかな。いやACBとかあったなぁ。続き「ススメ」って、最初に痙攣するギターが出てくるんだけど、どうも似たようなコントーションズの曲があって(というかリジーメルシエデクルーとかもそうだからノーウェーブスタイルというか)、野方攝のボーカルが出てくるまでなんとなく居心地が悪い。音の指向性は全然違うけど。電卓もしもスピーカーが付いてなければ普通に使えるかも。メモAppleWorksのワープロで「」を3組連続して入力して変換キー(スペース)を押すと永遠の虹色風車回りに陥る。既知かどうか調べる予定。(子供に使わせてたらそうなった×3)追記:AppleWorksは関係なく、TextEditorでも再現する。#しかし、最後に操作したことを覚えているとは感心感心。バグ報告者はそうあって欲しいもんだ。[CAPIってなんか他と毛色違うなぁと。nsshって続くのかと。第1陣ASP.NET本の修正で1番重いのを掲示。いうか、前のページの記述が矛盾の原因なので、手を入れた。1時間ほど妙なものを晒したことになるな。一分間ちらちら飛び出すではなくちらちらと言い出すかちらちら問い出すのような気がしてきたぞ。追記:元々「飛び立つ」と聞いていたのが、「び」が「い」に聴こえ始めたのでついでに「つ」を「す」に勝手に補正してしまったようだ。実際には、「といたつ」と聞こえるというのが正解。保存してる人はいるんだな。結局、スパイダーはクロールロボットのことになっちゃったしなぁ。生きてるけどね......っていうか、2ch発の性善説もいろいろあるみたいだしなぁ。言うものの、今はLinuxでもFreeBSDでも手元で持てるわけだし歴史的な考えになるのかなぁ。データがとりあえずやりとりできれば、プロトコル設計がタコでも構わないと思う人はいないだろうけど。#フィルターを重ねると処理が重くなるから、フィルターが不要なようにプロトコルを設計するという考え方もできるな。暇つぶしActiveState社はSophos社に買収されました、なんてことまで修正(次版が出るとは思えないからタダの著者の義務感)していて嫌になったもんで徘徊。辛口性格診断とかやってみたり。【あなたはこんな人】じゃ〜ん、あなたは「この世は私のためにある」タイプです。判断基準は「あくまでも自分」。何よりも楽しく遊んで過ごしたいという気持ちが強く、活発で好奇心も強いので、とても魅力的な人に見られます。実際、遊びに対する鋭いセンスを持っている人気者で、常に多くの人に囲まれています。しようもないくらいマイペースなあなたは「他人は他人、自分は自分」と考えて、周囲とぶつかり合ったり、ごたごたした関係になるのを面倒臭がって、避ける傾向があります。ふだんの生活もゲーム感覚で楽しむ反面、現実をしっかり見ている現実主義者です。組織の中にいても、地位や名誉といったものには興味を示さず、のんびりしている方です。ほとんどストレスをためないナイスなキャラクターです。シビアなあなたですが、感情的なところもあり、人一倍寂しがり屋で、自分を理解してくれる人を必要としています。思いこみの激しい面もあるので、改めて周りの人にも関心を向けることで新しい発見、充実した人間関係が生まれるでしょう。「大人の自我状態」と「自由な子供の自我状態」が突出しているってのが変なんだが。IIとかプラハプラス(元シングルB面)でも聴いていたが、HAL時代のCDがまだ入手できるとは知らなかった。X線を捉えた写真(でいいのかな?)見た目の位置の5つ子と実際の位置の5つ子で結局6つ子であってたり(別に詩人の透徹した視線が真実を言い当てたというようなことではなく、寧ろ本当に6つ子だと行き場所がなくなって困る)。それにしても宇宙はきれいだな。1.1デフォルト安全側の記述追加。今日はとりあえずここまで。いうか、よくよく考えたらP.362はまずい(でも本当はこれを「まずい」と感じるのは「開発者」サイドのオレには苦痛だが)。規模と独自性でっかな会社は社員もたくさんいるから、仕事を多くしなければならない。小さな会社は社員も少ないから、余分な仕事をしている余裕はない。会社は社員(関連させてるところも含めて)を大量動員できるから規模がでっかな仕事を請け負う。小さな会社は小回り勝負をかけたり、お得意さんを発掘したりして、規模にあった仕事を請け負う。EJBはコンテナのライセンスとか考えたら大きな金額が動かなければ使えないし、大きな金額を動かすところはそれほどオープンソースライセンスに魅力を感じないようだし、請け負う側も社員も多いから買うくらいなら作ってしまえとなったりして。すりゃ次の客のところでも使いまわせるね、とか算盤もはじける。それほどEJBの出る幕はない。小さな会社は小回りをきかせるから、高いライセンス料が必要なコンテナを使うよりも、もっと気が利いたものを見つけてきてやってのけたり。気の利いたやつは同じような気分があるから、さらに先を行く方法論を試してみたりしてみたり。EJBが出る幕はない。なんとなく思ってみたりしてみたり。見本誌届いたcbook24は早いな。全体の1/5くらいだ、ぜえぜえ。kdmsnrさんはすげえや。揺れる文体ふむ、出だしはいわゆる乱暴調で始めたんだが(そしてそれを続けるつもりだったんだが)、途中から、ねさよ調になっちゃったな。どちらもできたてのほやほやらしい猪俣さんのBlog。Refereが一瞬(今は検索に押しやられてしまった)見えたので発見。ActiveScriptをOFFにしたIEではまったく読めないという罠。Netscape7.1を使って知ったリンク、これをPAGと呼ぶのかな?。猪俣さんのBlogに戻るとオブジェクト指向的でなかったりする(DataSetとか)なんて記述があるADO.NETだけど、ファウラーがわざわざDomainモデルとは別立てにして、Tableモジュールというパターンにしているのは興味深い。C#/VB.NETなADO.NETプログラマーであれば、サーバーコントロールのイベント内からADO.NETを使ったトランザクションスクリプトを記述するわけだが、それで十分にさまになるのは、DataSetが複数のテーブルのリレーションを持てるからなのだろう。究極のネットワーク型ということだ。Availableにはお世話になった。やってページを作ってはじめてわかったことがいくつかあって(ごく最初の頃にも書いた覚えがある)、それはアンテナってのもそれなりにコミュニケーションツールになるんだなということだ。その時には、そのツールとしての意味のうち(文字通り)属人的な部分に気付かず、おおなんて便利なんだと、他人が作ったアンテナ経由でいろいろWeb巡りを開始したのであった。いったことはクセになるから、未だに自分のアンテナを持たずに他人アンテナに乗って巡るのであった。アンテナフリーというわけで、フリーライダーなんだが。hotlinksのように明確にコミュニティ指向のものならそこに乗っかっていくことには問題はありえないのだろうが、個人アンテナに乗っかるのはもしかして違うのではないか、と気付き始めてしばらくたつが、未だにそのまんまなのは性からの無精によるものなのでそれはおいておいて、以下に考察。自意識の肥大化を示すことになりそうなので、あんまり書いてもしょうがないかも知れないとは自戒しながら。・たとえば、毎日、a.hatena.ne.jp/artonっていうアンテナから参照されていると、当然、しばらくして気付く。・でまあ、d.hatena.ne.jp/artonを見に行ってみたり(いかん、URLの類推による書き換えですか)。・こうやってなんとなく薄いコミュニケーションってのは生まれるわけで、すると、たとえば最近、a.hatena.ne.jp/artonが来てないけど、元気かなとか(さすがにそこまで親身には感じないが、なんかおもしろいもの見つけたのかなおれも知りたいな、とか、仕事が忙しいのかなとか、あるいは、なんか不愉快になるツボを押したのかなしょうがないけどなんかスマンカッタとか、あるいはどうも嗜好が違うようでじゃあまたねーとか)思うようになってきたり。・なぜ、a.hatena.ne.jp/arton(とか例で書いてるが、実際にいたら面倒だな)から毎日2回アクセスがあるんだ?とは思わないまでも(実感として)、少なくても、これだけアンテナを使う人間がいる以上、薄気味が悪い(ナマアタタカイと表現すべきか?)ヲチャとなってしまうのは否めないよな。アンテナはつまるところ、ツッコミやトラックバックほどナマなというか表明的なコミュニケーションじゃなくて、単に「見てますよー」程度なものなわけだが、それでもやはりあればそれなりに楽しいわけだ。属人性があるからだ(ところでこの属人性の使い方はあっているのかいな)。フリーライダーはそのコンテキストを踏みにじって背後霊のように覗きにくるわけで、あんまり誉められたもんじゃないかも知れない。D&Dを使うとかして乗っかったアンテナをRefereとして残さないようにしたほうが良いかも。るいも/arton)出版社/著者からの内容紹介エンタープライズアプリケーションを構築するためのアーキティチャとして、J2EEが注目されています。「アーキティチャ」というのも恥ずかしいが、これを「アーキテクチャ」としてもすごく恥ずかしいぞ。「プラットフォーム」だろう。いうか、序文では「開発基盤」という言葉を使ったが(いや、「実行基盤」だろうというのはわかるけど、それはコンテキストの問題で、プラットフォームと呼ぶのがやっぱり正しいだろうが)、どっからこんな言葉がでてきたんだか。