SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

実例で学ぶASP.NET Webフォーム業務アプリケーション開発のポイント

3層データバインドを正しく活用しよう(前編)

実例で学ぶASP.NET Webフォーム業務アプリケーション開発のポイント 第1回

  • このエントリーをはてなブックマークに追加

 ASP.NET Webフォームアプリケーションを用いて業務アプリケーションを作成する際、何も考えずに進めていくと保守がしにくかったり、開発効率が思うように上がらないといったことがありがちです。本連載ではツールやフレームワークの機能を最大限利用しつつ、保守、開発効率を意識したWebフォームアプリケーションを開発する方法を学んでいきます。

  • このエントリーをはてなブックマークに追加

はじめに

 ASP.NETが2002年に初めて登場してから、まもなく10年になります。その間も、ASP.NETは絶え間なく進化を続けてきました。結果、ASP.NET 4まで進んだ現在では、初期のころに比べると格段に複雑さが増しています。

 本連載では、そんなASP.NET 4のWebフォームを用いて、会議室予約システムを開発していきます。サンプルを作成する過程を通じて、業務アプリケーションを作成する際に、それぞれの局面でどのような機能を利用すればよいか理解していただければと思います。

対象読者

  • ASP.NET Webフォームアプリケーション開発初級者(簡単なアプリケーションであれば一通り作成できる程度)
  • 業務アプリケーションの開発に携わる開発者

なぜASP.NET Webフォームアプリケーションなのか

 まずは「なぜWebフォームで業務アプリケーションを作るか」について説明します。

 ASP.NETで作成できるアプリケーションには今回取り扱うWebフォームの他に、MVC(Model-View-Controller)モデルで開発する、ASP.NET MVCもあります。それぞれの特徴をまとめると次のようになります。

ASP.NET Webフォーム

  • サーバーコントロールを用いたイベント駆動型
  • 生成されるHTMLはサーバーコントロールによって組み立てられる

ASP.NET MVC

  • MVCモデル
  • 生成されるHTMLは自分で組み立てる

 ASP.NET Webフォームは、その特徴から「少ないコードを元に自動生成を行う」ことで開発効率を向上できます。この特性は、業務アプリケーションのようにある程度決まったパターンで各種機能を作成できる場合、最大の威力を発揮します。業務アプリケーションでよくある「一覧表示」「ページング」「明細表示」「編集」といったパターンは、全て専用のサーバーコントロールが用意されているので、ほとんどUI(User Interface)のコードを書かずに作成することも可能です。

 しかし、Webフォームアプリケーションにも弱点があります。作成するアプリケーションを「型」にはめることで効率化を図っているため、その型から外れた動作や見た目を求めると途端に難易度が上がる点です。

 その例の一つが、きれいなHTMLの作成です。Webフォームでは背後で大量のHTMLが生成されるため、開発者が意図したとおりに出力されるとは限りません。このため、UIデザインをデザイナーに行ってもらったとしても、その結果をそのまま使うことが難しいのです。こういったケースではASP.NET WebフォームではなくASP.NET MVCを採用し、自分でHTMLを組み立てるやり方をとった方がよいでしょう。

 この連載では、ASP.NET Webフォームの利点を生かしつつ、開発効率性や保守性を意識した業務アプリケーションの作成方法を、引っ掛かりやすいポイントと合わせて紹介していきます。

本連載で作成するアプリケーション

 業務アプリケーションの例として、以下のような「会議室予約システム」をサンプルに取り上げます。

  • システム名はMRRS(Meeting-Room Reservation System)
  • 対象会議室、空き時間を調べ、会議室の予約を行える
  • 会議室は場所情報も持つ
  • 予約情報は、予約日時(From-To)、会議室、用途、備考を持つ

必要な環境

 サンプルアプリケーションは、以下の環境で作成することを前提としています。

  • Visual Web Developer 2010 SP1(以下VWD)
  • C#
  • IIS Express 7.5
  • SQLCE(SQL Server Compact) 4.0
  • EF(Entity Framework) 4.3

 IIS Express 7.5とSQLCE 4.0については、Web Platform Installerなどで事前にインストールしておいてください。

 EF 4.3は後ほどNuGetを使ってインストールしますので、事前にインストールする必要はありません。なお、今回はEFのバージョンは4.1以降であればどのバージョンでも大丈夫です。

 それでは、いよいよポイント解説に入っていきましょう。第1回目の今回は、3層データバインドの活用方法を解説します。

会員登録無料すると、続きをお読みいただけます

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

次のページ
3層データバインド

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
実例で学ぶASP.NET Webフォーム業務アプリケーション開発のポイント連載記事一覧

もっと読む

この記事の著者

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるReact実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

WINGSプロジェクト 高野 将(タカノ ショウ)

<個人紹介>新潟県長岡市在住の在宅リモートワークプログラマー。家事や育児、仕事の合間に長岡IT開発者勉強会(NDS)、Niigata.NET、TDDBCなどのコミュニティに関わったり、Web記事や書籍などの執筆を行ったりしている。著書に『アプリを作ろう! Visual C#入門 Visual C# 2017対応』(日経BP社、2017)など。<WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS Twitter: @yyamada(公式)、@yyamada/wings(メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/6384 2012/02/16 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング