【初心者用】ASP.NETについて基礎知識をまとめてみた
公開日: 2022/9/2
更新日: 2022/9/2
ASP.NETが必要になったので、勉強してみて分かったことをざっくりまとめてみます。
筆者がASP.NETに関して初心者から入ったので、分かりやすく噛み砕きながら説明していきたいと思います。
筆者がASP.NETに関して初心者から入ったので、分かりやすく噛み砕きながら説明していきたいと思います。
1. そもそもASP.NETって何?
ASP.NETとは、マイクロソフト社が提供しているWebサイトとWebアプリケーション(ユーザーが操作できるWebサイトのこと)を構築するためのWebフレームワーク群の一種のことです。
ASPとは、「Active Server Pages」の略で、プログラミング言語の一種ではないです(筆者が以前vb.netとか触っていて、似た感じなのかと思っていましたので、念のため)
Webフレームワークとは、「Webアプリケーション等を開発するのに必要な骨組み部分となる機能だけ用意したもの」です。
身近な例だと、「料理の素」でしょうか。「麻婆豆腐の素」とか。「カレーのルー」とか、料理の味付けに必要なものがすべて混ざっているもの、と想像するといいかもしれません。
麻婆豆腐の場合ですと、豆腐さえ用意しておけば、後は「素」を入れて炒めるだけでできたりしますが、それと似たような形です。
料理の骨子となる部分を予め用意しておくことで、ゼロから作るよりもずっと簡単に料理を作ることができる、というイメージになります。
料理と同じく、Webフレームワークは、Webアプリケーションを開発するために必要な機能が一通り揃っていて、それらを元に、目的となるアプリケーションを開発していくこととなります。
それにより、何もない状態からコードを書いていくより簡単に、かつスピーディーにWebアプリケーションなどを開発することができるようになります。
そして、そんなWebフレームワーク群であるASP.NETは、マイクロソフト社で提供しているVusualStudio等の統合開発環境(IDE)と合わせて使用することで、簡単に高機能なアプリケーションの開発を行うことができるようになります。
特にVisualStudioでは、フォーム画面のボタンをドラッグ&ドロップで設置するなど、直感的な操作が可能なので、HTTPやHTML等の基本的なWebプログラミング言語の知識も、必ずしも精通していなければならないわけではないため、よりとっつきやすいものだと考えることができるでしょう。
ASPとは、「Active Server Pages」の略で、プログラミング言語の一種ではないです(筆者が以前vb.netとか触っていて、似た感じなのかと思っていましたので、念のため)
Webフレームワークとは、「Webアプリケーション等を開発するのに必要な骨組み部分となる機能だけ用意したもの」です。
身近な例だと、「料理の素」でしょうか。「麻婆豆腐の素」とか。「カレーのルー」とか、料理の味付けに必要なものがすべて混ざっているもの、と想像するといいかもしれません。
麻婆豆腐の場合ですと、豆腐さえ用意しておけば、後は「素」を入れて炒めるだけでできたりしますが、それと似たような形です。
料理の骨子となる部分を予め用意しておくことで、ゼロから作るよりもずっと簡単に料理を作ることができる、というイメージになります。
料理と同じく、Webフレームワークは、Webアプリケーションを開発するために必要な機能が一通り揃っていて、それらを元に、目的となるアプリケーションを開発していくこととなります。
それにより、何もない状態からコードを書いていくより簡単に、かつスピーディーにWebアプリケーションなどを開発することができるようになります。
そして、そんなWebフレームワーク群であるASP.NETは、マイクロソフト社で提供しているVusualStudio等の統合開発環境(IDE)と合わせて使用することで、簡単に高機能なアプリケーションの開発を行うことができるようになります。
特にVisualStudioでは、フォーム画面のボタンをドラッグ&ドロップで設置するなど、直感的な操作が可能なので、HTTPやHTML等の基本的なWebプログラミング言語の知識も、必ずしも精通していなければならないわけではないため、よりとっつきやすいものだと考えることができるでしょう。
2. ASP.NETの大まかな構造
前項でASP.NETのことを、フレームワーク「群」と称しましたが、その言葉通り、ASP.NETはコアを土台に、いくつかのフレームワークがあり、それらを総称して「ASP.NET」となっております。
他のWebFormとは異なる考え方のもとにできているので、注意が必要です。
他のフレームワークと大きく異なる点として、HTTPに準ずるものとして、単独で多様なクライアントに対応できます。
Web Froms
Web Formsは、ASP.NETのフレームワーク群の一部で、豊富なライブラリを持っており、迅速な開発ができるので、機能や納期を重視した開発に適しています。MVC
MVCは、マークアップの制御に重点を置き、テストを行うことに進化したつくりになっています。他のWebFormとは異なる考え方のもとにできているので、注意が必要です。
Web API
Web APIは、ブラウザやデスクトップアプリ、携帯電話向けのアプリ等、様々なデバイスで利用可能な、クライアントに対してHTTPサービスを提供するフレームワークです。他のフレームワークと大きく異なる点として、HTTPに準ずるものとして、単独で多様なクライアントに対応できます。
Core
Coreは、WindowsやMacOS、Linux等のOSを問わず開発を可能にするクロスプラットフォームなフレームワークです。3. ASP.NETってどんなところで使われているの?
ASP.NETは、ネットワーク経由でアプリケーションを管理できるということで、様々な方面で活用されています。
例として、一番に挙げられているのは、マイクロソフト社のホームページです。
(提供元なので、当然と言えば当然かもしれませんが)
他にも、業務用アプリケーションとして、会社の管理サポート(営業管理や在庫管理など)にも使われることがあります。
コミックマーケットのカタログにも使われた、という話も聞いたことがありますね。
4. ASP.NETの個人で勉強する環境は?
ASP.NETを勉強する場合、本や学習サイト、オンラインスクールを活用するのが他のプログラミング言語同様のやり方となりますが、自己学習のためには実際にプログラミングを行うための開発環境も考えなくてはいけません。
前項でも説明したような統合開発環境であるVisualStudioが一番ですが、「VisualStudioってライセンスが必要なのでは?」と筆者は思っていました。
が、個人で学習や開発を行う分には無料版があるらしいです。
「visual studio 無料版」と検索したら出てきました。
URLは以下になります。
https://visualstudio.microsoft.com/ja/free-developer-offers/
3つくらいバージョンがあったのですが、Community版をインストールしたら、無事使うことができましたので、個人で勉強する際はこれがいいかもしれません。
前項でも説明したような統合開発環境であるVisualStudioが一番ですが、「VisualStudioってライセンスが必要なのでは?」と筆者は思っていました。
が、個人で学習や開発を行う分には無料版があるらしいです。
「visual studio 無料版」と検索したら出てきました。
URLは以下になります。
https://visualstudio.microsoft.com/ja/free-developer-offers/
3つくらいバージョンがあったのですが、Community版をインストールしたら、無事使うことができましたので、個人で勉強する際はこれがいいかもしれません。
5. ASP.NETのメリット
開発の際、特定の言語に依存しない
Webフレームワークは、多くの場合、特定の言語に依存したつくりになっています。例としてRubyを挙げてみますが、この場合Ruby on Railsというフレームワークがあるように、各プログラミング言語にあったものがあります。
ASP.NETの場合は、そのような特定の言語に依存せず、複数の言語に対応しています。
それにより、言語の壁を気にすることなく、開発を行うことができます。
代表的な対応言語として、「C#」、「VB.NET」、「Jscript.NET」、「F#」、「C++」等があります。
6. ASP.NETのデメリット
コストがかかる
導入する際、オープンソースのものと比較すると、ソフトのライセンスに費用が掛かるという点があります。挙げていきますと、SQLServerライセンス、VisualStudioライセンスなどですね。
そういった面では、ITの知識が乏しい方にとっては、コスト面が浮き彫りになり、導入に難を示すかもしれません。