# 13 どのようにしてWebフレームワークを設計するか
前の12章ではGoを使ってどのようにWebアプリケーションを開発するかについてご紹介しました。多くの基礎的な知識、開発ツールおよび開発テクニックをご紹介したので、この章ではこれらの知識を通じて簡単なWebフレームワークを実装してみましょう。Go言語を通じて完全なフレームワークを設計します。このフレームワークでは主に第1章でご紹介したWebフレームワークの構造ルールを含みます。例えば、MVCモードを採用して開発を行う場合の、プログラムの実行プロセス設計といった内容；第2章でご紹介したフレームワークの１つ目の機能：ルーティング、どのようにしてアクセスされたURLを対応する処理ロジックに投影するか；第3章でご紹介した処理ロジック、どのようにパブリックなcontrollerを設計するか、オブジェクトを継承した後処理関数にてどのようにresponseとrequestを処理するか；第4章ではフレームワークの一部の補助機能をご紹介しました。例えばログ処理、設定情報などです；第5章ではWebフレームワークに基いてどのようにブログを実装するかについてご紹介しました。これにはブログの投稿、修正、削除、リストの表示といった操作を含みます。

この完全な項目の例を通じて、読者におかれましてはどのようにWebアプリケーションを開発するか、どのように自分のディレクトリ構造を作成するか、どのようにルーティングを実装するか、どのようにMVCモードといった各方面の開発コンテンツを実装するかご理解いただけたものと期待しております。フレームワークが盛り上がりを見せる昨今、MVCはもはや神話ではありません。プログラマがどのフレームワークが良いか、どれがダメかと討論しているのを多く見かけるようになりました。フレームワークはツールにすぎません。本来良いも悪いもないのです。そこにはただ適切か不適切かのみが存在します。自分に合えばそれが最良ですので、みなさんに自分の手でフレームワークを書くことをお教えできれば、異なった需要に対しても自分の思考に合わせて実装することができるようになります。

## 目次
  ![](images/navi13.png?raw=true)

## links
   * [目次](<preface.md>)
   * 前へ: [第12章概要](<12.5.md>)
   * 次へ: [プロジェクトのプラン](<13.1.md>)
