2009-10-01から1ヶ月間の記事一覧
UMLでモデリングすることの重要性に改めて気付いた、いやむしろソフトウェア構造の一部がシンプルなUMLで表現出来ないシステムでは駄目ではないだろうか?実装の詳細部分をUMLでモデリングする必要はないと思うが、仕組みの骨格部分を検討するには、UMLを使…
まずモデルで考えることはとても効果的だと思う。
UMLを手軽に書きたいのだが、結局どれをメインに使用するか決めかねている。 候補はVisio、JUDE、Googleドキュメント、Excel どれがいいか・・ 適当な紙が一番かも・・
どうやってソフトウェアを開発し、そしてどの様に育てていくか、その実践的な方法論がこの本に載っている。オブジェクト指向設計の原則を提示して、そこからデザインパターンに向かってリファクタリングされる様子など、アジャイルソフトウェア開発の実践に…
アーキテクチャパターンの原典で海外ではPOSAと呼ばれ定番であるらしい、戦略と戦術で分ければ、戦略部分の指南書である。お世辞にも読みやすい書籍ではない、サンプルコード(C++)は必要最低限で、モデル図はUML以前のものだ。だが内容はとても実践的であり…
あまり有名ではないと思うが、とても実践的で有益なオブジェクト指向開発の指南書だと思う。ソフトウェア開発で生じるさまざまな問題を、デザインパターンを利用して解決する方法を示してくれる。インターネットでいくらでも情報が得られる今の世の中で、購…
ソフトウェア開発を戦略と戦術に分けるとしたら、この書籍は戦術の指南書である。小型で薄い本だが得られるものは非常に大きい、最近はカバンに入れて常に持ち歩いている、著者のケント・ベックの人柄がうかがい知れる気楽に読み進められる楽しい本だ。実装パ…
非常にラッキーだと思う、常に進化を目指そう。
難しさを痛感する、Twitterで書けることが、なぜはてなダイアリーでは書けないのか?
書き残したり、発言することが大切だと思う。流れを引き寄せることが重要なんだ。
そしてそれを進化させながら継続することが重要だ、その積み重ねがやがて大きな実を結ぶのだ。 人生も常にリファクタリングしながら臨むことが大切だ。
.NET開発の継続的インテグレーション(Continuous Integration)の仕組みとして、Hudsonが利用出来ます。その備忘録を残します。 ここでHudsonがやっていること Subversionからソースファイルを取得する MSbuildでビルドを実行する NUnitで単体テストを実行す…
既に古いものとなってしまっている、時代の流れは早い。
Microsoft patterns & practices はソフトウェア開発のパターンと実践を体系化したもので、ウォード・カニンガム、マーチン・ファウラー、ラルフ・ジョンソン、ロバート・C・マーチン といった、パターン・アジャイル界隈の著名な開発者も協力している魅力的なプ…
時には気楽に考えることも必要だ、答えは1つではない。
はてなダイアリーよりTwitterに投稿してしまう、なぜかTwitterでは、まとまってないアイデアや思考を吐露しながら練っていくことが出来る。少なからずフォロワーを意識する気持ちが良い方向に向かうのだろうか?インターネットを使った情報コミュニティーツ…
問題の解決方法は学んだはずだ、現時点での指針をまとめる必要がある。
もう大人しく既存のDIコンテナフレームワークを使用するのが賢明だと思うのだ。誰しもが具象オブジェクトの生成を最後まで保留する為に、ファクトリクラスを作った筈だ。また、リフレクションで生成すること以外に必要もない、空実装の別名サブクラスを量産…
アプリケーションの設定ファイルはXMLが主流になっている、.NETでは特にそうだ。SpringフレームワークなどDIコンテナの構成ファイルは、オブジェクト設定ファイルと呼べるものでオブジェクト指向に特化しているが、それでもコンフィグ設定ファイルは必要だろ…
現状に満足していないのなら、望むものが明快なら迷うことはない。 リスクを取らずして成功を手に入れることは不可能だ、タイミングを見誤るな!
それを超越した普遍的概念を目指そう。
ブログに書き綴った内容を読み返してみると、自ら発した言葉にも思いがけない発見がある。 実はまだ3ヶ月くらいしか継続していないが、それでも素晴らしい効果を得ることが出来た。書き続けることに意味がある、自分でコントロールすることが大切なんだ。
Java開発でデファクトのDIコンテナとなっているSpringフレームワークの.NET移植版である、Spring.NETは簡単に設定出来ます、その方法を備忘録として残します。本家サイトより http://www.springframework.net/index.html Spring.NET-1.2.0をダウンロード解凍…
今がその時だ、不思議と焦りは無い。機会が訪れるのが自然な流れの様な気がする。
一度立てた戦略は変更するのは困難だが、状況に合わせて変更せざるを得ない場合もある、常に柔軟な対応が必要となるんだ。インタフェースも同様だと思う。変更するのが困難であるという事実は初めから判っている、だからこそ準備を怠るなって事なんだ、常に…
以前このブログに書いた内容 戦略と戦術とは? 戦略(strategy:ストラテジー) 全体的な方針。 変更は困難。 戦術(tactics:タクティクス) 戦略に基づいて細かい個所を決める。 戦略に基づいていることが必須。 変更は可能。 この様に考えてはどうか? イ…
常に一歩先を読め!事が起こってからでは既に遅すぎる。
JavaやC#などの言語では、インタフェースとクラス(※含む抽象)の2種類の方法がある。 Microsoftは.NETで、クラスでオブジェクト変数の型を指定するように推奨しているが、私は逆にインタフェースで指定する方が好ましいと思っている。インターフェースの場合…
インタフェースを抽象クラスで隠蔽して、具象クラスにはオーバーライドしたフックハンドラのみ実装する。 ホットスポットが明確であり、確実に呼び出される構造が本質なんだと思う。プログラム構成を大きく捉え、抽象から呼ばれる仕組みを作り出す。絵画のデ…
世の中の出来事には全て2面性がある、インタフェースも同様だと思う。 あちら立てればこちらが立たぬ・・オブジェクト指向も万能ではなく、あまたある開発手法の一つに過ぎないのか?