BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ 設計 に関するすべてのコンテンツ

  • 多すぎるコード行に殺される?

    Steve Yegge氏は、彼の最新のブログ記事で、開発者コミュニティの神経を逆なでした。ソフトウェア開発において最も重要なのはコードサイズを最小限にしておくことだ、とSteve氏は主張した。彼の視点からみると、コードの行数を少なく保つためにいくつかのデザインパターンを放棄し、リファクタリングを避ける必要がある、と言うのである。さらに、あなたの抱えている問題が非常に大きいなら - 他のプログラミング言語に切り替える必要があるかもしれない、と言っている。

  • 依存性注入(DI)は成功したか?

    依存性注入(DI)の利用によるメリットやメリットの欠如に関する興味深い議論がブロゴスフィアで行われていた。

  • Article: Spring 2.5の新機能―Part 1

    この記事は、Springフレームワークの新機能を探求する3回シリーズの第1回目です。今回の記事では、Springアプリケーション・コンテキストの中核に位置する簡略化されたコンフィギュレーション並びに新しいアノテーションベースの機能性に焦点を当てます。

  • Aptana Studio 1.0がリリース: RadRailsのアップデートとAptana Studioの商用版が登場

    Aptana IDEは、現在AptanaStudioと改名されたが、Web開発者のためにEclipseベースのIDEを作成しようという目的でベンチャーキャピタルから支援を��けて開発されている。Aptana Studioが、AdobeのAIRアプリケーションやiPhone上でのAjaxアプリケーションの開発のサポートをしていることから分かるとおり、Aptana Studioは、新しいトレンドについていこうとしている。

  • Naked Objects に、Java1.5、インジェクション、Hibernate が追加される

    Naked Objects はドメインオブジェクトが中心的役割を担うアプリケーションを開発するためのアーキテクチャパターンでありフレームワークである。Naked Objects アプリケーションにおけるドメインオブジェクトはユーザインターフェースの中心部を形成し、開発作業の焦点である。このNaked Objects が最近バージョン3.0をリリースした。

  • Qi4jがComposite Oriented Programmingを発表

    Rickard Oberg氏がOredevにてQi4jを発表し、また”クラスは終わりでインターフェース万歳”と宣言した。Qi4jはビヘイビアがクラスに置かれなく、代わりにクラスがアノテーションを介したクラス上で宣言されたインターフェースとmixinのコンポジットになるコンポジット指向のプログラミングという、新しいアイディアを導入している。

  • Volta: アーキテクチャファクタリングとリファクタリング

    Erik Meijer氏は"世の中が次第にサービスモデルとしてのソフトウェアに移行していくに連れ、私たちは通常のプログラマーたちがアプローチできる分配システムを構築する実践的なソリューションを考えなければいけません。"と述べている。またVoltaのArchitecture Refactoringが先日SAFにて紹介された。

  • 柔軟性、構造安定性のデザイン: 非同期メッセージモデル、OOPとFunctional Programming

    Pragmatic Programmersによると、オブジェクト指向のプログラミングにおいては”データを尋ねるよりもむしろオブジェクトに頼む”ほうが好ましいということだ。またFeathers氏は適応性と強固性の向上に役立つかもしれない非同期のメッセージを使用するほうが効率的であることを議論している。これによって純機能的なプログラミングの規則に反しているものの、Erlangが位置づけされる。

  • Javaデベロッパ用のActionScript Virtual Machineを理解する

    ActionScript Virtual Machine 2(AVM2)はActionScript 3.0(AS3)バイトコードをFlash Player 9ランタイム内で実行する。Action Script 3はオブジェクト指向のプログラミング言語で、Adobe FlexとAIR内でFlashベースのアプリケーションを構築する際に使用されている。

  • Active Recordパターンを使用中の柔軟性の保持

    Rails、Hibernate、他のORMツールに使用されているActive Recordパターンはdatabase rowのオブジェクトへのマッピングを許容するデータ持続パターンである。しかしながらこの実用的なツールはBob Martin氏によると混乱の源であるそうだ。 柔軟性を保つにはBob Martin氏はActive Recordをアプリケーションから分離させることを提案しており、そうすることによって後者はオブジェクトの周りで単一でデザイン、また構成することができるのである。

  • オブジェクト指向プログラミング:より良いデザインのために動詞・名詞のメタファーを超えて考える

    オブジェクト指向のプログラミングにおいて、オブジェクトは従来的にオブジェクトのメソッドとして実装され、そのビヘイビアを決定するアクションと結合されている。Reg Braithwaite氏はいくつかのケースにおいてその二つを分離させることに関連していることを述べている。またBuko Obele氏は通常オブジェクト指向のデザインに使用されている動詞・名詞メタファーを超えて考慮し、OOPへの従来的なアプローチを問うている。

  • デメテルの法則を守るRailsプラグイン

    デメテルの法則又は最小限の知識原則は、ソフトウェア開発における設計のガイドラインである。これら二つの法則の基本的な概念は、与えられたオブジェクトは、サブコンポーネントを含め、構造、プロパティ、他のオブジェクトの振舞いに関して出来るだけ責務を負うべきではないということである。 Luke Redpath氏は、モックとスタブを使用してUnit Testsを書いているとき、デメテルの法則違反に出くわした。

  • ディベート: 何故ほとんどの大規模webサイトはJavaで構築されないのか?

    GigaSpacesのNati Shalom氏は、最近何故ほとんどの大規模なwebサイトがJavaで構築されていないのかという疑問を投げかけている。この疑問はJava Communityで大変大きな議論を引き起こし、InfoQはそれに関する見解を探るための機会を設けた。

  • サービス指向アーキテクチャ (SOA) へのテクノロジー非依存アプローチ: SOA の原点に戻る

    サービス指向アーキテクチャ (SOA) は、エンタープライズソフトウェア開発の主流の1つとなりつつある。しかし、Dan North氏によれば、SOAの採用をこれまで決定してきたのは、「SOA の複雑性を強調した上で、タイムリーに、利益になるソリューションを提供する」ことに関心を寄せるソフトウェアベンダである。結果として、多くの SOA アーキテクトが行う決定はテクノロジーに関する考慮事項に左右され、SOA という手法の真髄である、コアビジネスシナリオのマッピングとモデリングに焦点をあてることができていない。

  • LiquiBaseがDiff、Eclipseプラグイン、また更なるデータベースのサポートを搭載

    データベースリファクタリング、移行ツールであるLiquiBaseにとって今年は多忙な一年となりそうだ。テストコンテキスト、30のリファクタリング、4つの共通リレーショナルデータベース、分散開発、自動ロールバックのサポートと共に行われた6月の1.0バージョンリリースの勢いに乗り、新たに二つのマイナーリリースとポイントリリースが発表された。

BT