0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ASP.NET のWebアプリケーションついて ⦅マニュアルのマニュアル⦆

Last updated at Posted at 2024-08-24

はじめに

 【C#】のWebアプリケーションのフレームワークである
 【ASP.NET Core】のマニュアルを確認。

ASP.NET公式ドキュメントは以下を参照。

①ASP.NET Core Web UI を選択する

ASP.NET CoreでWebアプリケーションを開発する際に、
ユーザーインターフェース(UI)をどのように構築するかを選択することを指します。

ASP.NET Coreでは、いくつかのUIフレームワークやライブラリを使用して
Webアプリケーションのフロントエンド部分を作成できます。

①-1 ASP.NETとは

ASP.NETは、Webアプリケーションフレームワーク。

1990年代後半にMicrosoftよりリリースされた、動的なWebサイト、
Webアプリケーション、Webサービスを作成するためのプラットフォーム。

主な特徴は以下。

  1・・・ .NET Frameworkの一部
       ASP.NETは、Microsoftの.NET Frameworkの一部であり、
       Webアプリケーションを構築するために特化した
       フレームワークです。
       
       .NET Framework上で動作し、
       Visual BasicやC#などの.NET言語を使用して開発できます。


  2・・・ サーバーサイド技術
       ASP.NETはサーバーサイドの技術であり、
       サーバー上でコードを実行してHTMLを生成し、
       それをクライアント(ブラウザ)に送信します。
       
       これにより、動的なWebページの作成が可能になります。


  3・・・ Web Forms
       初期のASP.NETではWeb Formsという技術が導入され、
       デスクトップアプリケーションに似た開発モデルで
       Webアプリケーションを構築できるようになっていました。
       
       GUI(グラフィカルユーザインターフェイス)のような開発が
       可能で、初心者にも扱いやすいのが特徴です。


  4・・・ MVC(Model-View-Controller)パターン
       後に、ASP.NET MVCが導入され、より制御性とテスト性に優れた
       Webアプリケーションの開発が可能になりました。
       
       MVCパターンに基づくアーキテクチャは、アプリケーションを
       モデル、ビュー、コントローラの3つの主要コンポーネントに
       分けて設計することを促進します。


  5・・・ 豊富なライブラリとツール
       ASP.NETは、多くのビルトインライブラリやツールを提供しており、
       データベース接続、認証、キャッシュ、セッション管理など、
       Webアプリケーション開発に必要な機能を簡単に実装できます。


  6・・・ Web API
       ASP.NETは、Web APIの開発にも対応しており、
       RESTfulなサービスを構築するためのツールが提供されています。
       
       これにより、クライアントアプリケーション(モバイルアプリなど)や
       他のWebサービスとのデータ通信が容易になります。


  7・・・ ASP.NET Coreとの関係
       ASP.NETは、ASP.NET Coreの前身と位置づけられます。
       ASP.NET CoreはASP.NETの進化版で、クロスプラットフォーム対応や
       よりモダンな開発手法を取り入れていますが、
       ASP.NETも引き続きサポートされており、
       特にWindowsサーバーでの運用が主な場合には今でも使用されています。

①-2 ASP.NET Coreとは

オープンソースでクロスプラットフォーム対応のASP.NETの進化版。

以前のASP.NETフレームワークと比べて多くの改善が施されています。
高性能でモダンなWebアプリケーションやWeb APIを構築できます。

主な特徴は以下。

  1・・・ .クロスプラットフォーム対応
       Windowsだけでなく、macOSやLinuxでも動作します。
       これにより、開発者はどのOSでも開発やデプロイを行うことができます。
       

  2・・・ 高性能
       パフォーマンスの最適化が行われており、
       ASP.NET Coreは非常に高速なWebフレームワークとして知られています。
       

  3・・・ モジュラー設計
       必要な機能だけを取り入れて使用できるよう、
       フレームワークがモジュラー化されています。
       
       これにより、アプリケーションのサイズを小さくし、
       パフォーマンスを向上させることができます。


  4・・・ 統合された依存性注入 (DI)
       ASP.NET Coreでは依存性注入が標準でサポートされています。
       これにより、コードのテスト性や保守性が向上します。


  5・・・ Razor Pages と MVC
       UIを構築するためのRazor Pages、

       より複雑なアプリケーションに適した
       MVC(Model-View-Controller)パターンが使用できます。


  6・・・ Blazorサポート
       C#でクライアントサイドのWebアプリケーションを構築できる
       Blazorをサポートしています。
       
       これにより、JavaScriptを使わずにインタラクティブな
       Web UIを作成することが可能です。


  7・・・ クラウドとマイクロサービス向け
       ASP.NETは、Web APIの開発にも対応しており、
       RESTfulなサービスを構築するためのツールが提供されています。
       
       これにより、クライアントアプリケーション
       (モバイルアプリなど)や
       他のWebサービスとのデータ通信が容易になります。


  8・・・ オープンソースとコミュニティのサポート
       ASP.NET Coreはオープンソースであり、
       GitHub上でソースコードが公開されています。
       
       活発な開発者コミュニティが存在し、
       頻繁にアップデートや改善が行われています。

①-3 ASP.NET Core Web UIの選択肢

以下のようなUI構築の選択肢があります。

  1・・・ ASP.NET Core Blazor
       C#を使用してクライアント側のWeb UIを構築できるフレームワークです。
       Blazor ServerやBlazor WebAssemblyを使用して、
       クライアントサイドで実行するWebアプリケーションを作成できます。
       

  2・・・ ASP.NET Core Razor Pages
       パフォーマンスの最適化が行われており、
       ASP.NET Coreは非常に高速なWebフレームワークとして知られています。
       

  3・・・ ASP.NET Core MVC
       伝統的なModel-View-Controller(MVC)パターンに基づいており、
       複雑なWebアプリケーションの開発に適したフレームワークです。
       
       なお、今回はこちらを選択※1 して、構築を行います。



  4・・・ フロントエンドJavaScriptフレームワークを使用する
       ASP.NET Coreシングルページアプリケーション (SPA)

       フロントエンドにはJavaScriptフレームワーク(例:Vue.js)を使用

       Vue.js は、軽量で柔軟なJavaScriptフレームワークで、
       UI構築やSPAの開発に特化しています。
       これにより、コードのテスト性や保守性が向上します。


       バックエンドにはASP.NET Coreを使用して、
       シングルページアプリケーション(SPA)を構築します。
       
       SPAは、単一のWebページで動作し、
       ページのリロードなしで動的にコンテンツを
       更新するアプリケーションです。


  5・・・ 複数のWeb UIソリューションの組み合わせ:
     ASP.NET Core MVCまたはRazor PagesとBlazor

       ASP.NET Core MVCまたはRazor PagesとBlazorを
       組み合わせることで、
       プロジェクトの特定のニーズに応じた
       柔軟なUIソリューションを構築できます。

※ ASP.NET Core MVC

 
1.Model-View-Controller(MVC)パターンとは

MVC はアプリケーションの構造を分離して管理しやすくする。

・以下の3つのコンポーネントに分かれています:

  Model : アプリケーションのデータや
      ビジネスロジックを扱います。
      データの取得、保存、更新などを行います。

  View : ユーザーインターフェース(UI)を担当し、
      データを表示します。ユーザーが操作する部分です。

  Controller : ユーザーの入力を受け取り、
       ModelとViewを調整します。
       ユーザーのアクションに応じて、Modelを更新し、
       その結果をViewに反映させます。

 
MVCの詳細 は以下を参照

 
2.初めてASP.NETを学ぶ際、ASP.NET Core MVCを選択する理由

Webアプリケーション開発の基礎を学べる
 MVCパターンを学ぶことで、
 基本的なWebアプリケーションの設計や開発の基礎を習得
 
柔軟で拡張性が高い
 アプリケーションの構造が明確になり、
 スケーラブルな設計を行いやすい
 
豊富なリソースとサポート
 Microsoftの公式ドキュメントやコミュニティが充実しており、
 学習をサポート
 
実務に役立つスキルを習得できる
 現実のプロジェクトでよく使用されるため、実践的なスキルを学ぶ
 
C#の理解を深める
 C#の言語仕様や.NET Coreの機能を活用することで、
 C#の理解を深められる
 
クロスプラットフォーム対応
 Windows以外の環境でも開発やデプロイが可能で、
 幅広いプラットフォームに対応


次回:ASP.NET のWebアプリケーション構築手順

参考文献

ASP.NET 関連情報サイト様

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?