CodeZineさんで「実践WPF業務アプリケーションのアーキテクチャ」という記事を書かせていただきました。
マイクロソフトさんの公式サンプルデータベースであるAdventureWorksを題材にして、仮定の業務の元、エンタープライズな業務システム全体のアーキテクチャを検討し、記述したものになります。決定結果だけではなく、なぜその決断をしたのか?という点まで記載しています。
アプリケーションの実現方法は、たった一つの正解はありませんし、仮定の業務自体曖昧な点が多く、私はベストプラクティスだと思って書きましたが、読む方にとってはそう感じないこともあるかもしれません。正直、マサカリが本当に恐ろしい記事でもあります。
しかし、個別技術であったり、汎用的なアプリケーション アーキテクチャ パターンではなく、「じゃぁ実際にそれらを組み合わせて、どうシステムを作るの?分からないよ!」という思いが昔から私自身にもありましたし、そういう情報はなかなか公開されていないため、勇気を持って記述してみました。
アーキテクチャ構築に悩む人への一助になれば幸いです。
さて今回の件ですが、実はGrapeCity社の方からコンポーネント紹介記事を書いてもらえませんか?というリクエストを頂いたのが発端でした。その際に
「コンポーネントの紹介は最小限で構いませんので、実践的なアプリケーションを構築するアーキテクチャを中心に、WPFの普及も視野に入れた記事を書いてもらえないか?」
とご要望をいただきました。お声がけいただいて即、面白そうだと思いました。これまで自分が仕事の中で貯めて来たノウハウを形としてアウトプットするいい機会でもあると思いました。
その結果暴走して、当初は3〜4ページでというリクエストだったのですが、11ページに膨張しまくり、なのにGrapeCityさんのコンポーネントに触れているのは3ページほどしか無いという…
この記事を承認いただき、公開できたのはひとえにGrapeCityさんの懐深い対応のおかげと考えています。本当にいい機会をいただき、ありがとうございました。
また非常に素晴らしい紹介記事も書いていただき、恐悦至極とはこのことかと実感中です。
内容に関しては、各人色々なご意見があるかとは思います。しかし、誰かが何かを書かないと何も始まらないという思いもあり、勇気を振り絞って書きました。異論・質問色々あるでしょうけど、気軽にコンタクト取っていただけたら、真摯に対応させていただこうと思います。
というわけで、ご一読いただけたら幸いです。