Visual Basicの初歩

# イントロダクション
業務でVB.NETの使用が必要になったため、初めて触れるこの技術を自宅で学習しようと考えています。この学習過程を通じて得た知識をまとめ、個人的な参照資料として保存するとともに、学んだ内容をアウトプットする目的で記事を作成する予定です。

# 目次

1. [イントロダクション](#イントロダクション)
2. [基本概念](#基本概念)
   - [Visual Basic（VB）](#visual-basicvb)
   - [VB.NET](#vbnet)
   - [Visual Studio](#visual-studio)
   - [.NET（旧称 .NET Framework）](#net旧称-net-framework)
3. [環境構築手順](#環境構築手順)
   - [Visual Studio Community 2022をダウンロードする](#1-visual-studio-community-2022をダウンロードする)
   - [セットアッププログラムを実行する](#2-セットアッププログラムを実行する)
4. [プロジェクト作成方法](#プロジェクト作成方法)
5. [Visual Basicを使った実践的なアプリケーション例](#visual-basicを使った実践的なアプリケーション例)
   - [デスクトップアプリケーション](#1-デスクトップアプリケーション)
   - [ウェブアプリケーション](#2-ウェブアプリケーション)
   - [データベースアプリケーション](#3-データベースアプリケーション)
   - [ネットワークアプリケーション](#4-ネットワークアプリケーション)
6. [今後について](#今後について)


# 基本概念

## Visual Basic（VB）
Visual Basicはマイクロソフトによって開発されたプログラミング言語です。1991年に初めてリリースされ、その使いやすさと初心者に優しいプログラミング環境で知られています。Visual Basicはイベント駆動型プログラミングをサポートしており、GUI（グラフィカルユーザーインターフェース）ベースのアプリケーションの開発を容易にします。しかし、この言語は主にWindowsのデスクトップアプリケーション向けに設計されています。

## VB.NET
VB.NETは、Visual Basicの進化版であり、2002年にマイクロソフトによって.NETフレームワークの一部として導入されました。VB.NETはオブジェクト指向プログラミングを完全にサポートしており、よりモダンなアプリケーションの開発が可能です。Visual BasicからVB.NETへの移行では、言語の多くの部分が再設計され、より厳密なプログラミングが求められるようになりました。VB.NETは、Visual Basicのプリンシパルを維持しつつ、より強力で柔軟な言語へと進化しています。

## Visual Studio
Visual Studioはマイクロソフトが開発した統合開発環境（IDE）です。これは、VB.NETやC#、F#などの多くの言語をサポートしており、Windows、Web、モバイルプラットフォーム向けのアプリケーション開発を一元的に行うことができます。Visual Studioは、コードの編集、デバッグ、GUIデザイン、バージョン管理、性能分析など、開発に必要な多くのツールを提供します。

## .NET（旧称 .NET Framework）
.NET（現在は.NET 5以降として知られている）は、マイクロソフトによるソフトウェア開発プラットフォームです。これは、Windowsアプリケーションだけでなく、Webアプリケーションやクロスプラットフォームの開発を可能にするためのAPIの広範なコレクションを提供します。.NETは、複数の言語（C#、VB.NET、F#など）で書かれたアプリケーションを実行するための共通実行環境（CLR）を備えており、高い互換性と効率を提供します。


# 環境構築手順
### 1. **Visual Studio Community 2022をダウンロードする**
[https://visualstudio.microsoft.com/ja/vs/](URL)にアクセスしてVisual Studio Community 2022をダウンロードする。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2752598/1affc6f8-ae10-3ed5-1e37-2c064f16dcb6.png)

### 2. **セットアッププログラムを実行する**
ダウンロードフォルダに置かれたセットアッププログラムを起動する。その後、ポップアップ表示で”このアプリがデバイスに変更を加えることを許可しますか？”と出てくるので”はい”を選択する。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2752598/c0b33a6b-54f6-0963-5bc4-13024a87b12a.png)
その後、下記の画面が出てくるので”続行”を選択する。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2752598/c40326c8-8912-a285-e344-cc552e403b93.png)

下記の画像が表示されたら”.NETデスクトップ開発”を選択して、右下の”インストール”ボタンを押下する。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2752598/4b380ef7-4c96-be9e-af8c-63acbf030f2c.png)
インストールにはしばらく時間がかかるので寝ててください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2752598/b83d361a-5498-f1a2-8115-968ba758a3c4.png)
インストール完了すると下記の画面が出ます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2752598/7d83c88c-390a-3d20-3c7d-6170d42ae2f6.png)

# プロジェクト作成方法
Visual Studio Community 2022を起動する。右下の”新しいプロジェクトの作成”を選択する。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2752598/1cc5b59d-4910-c6fa-e45a-67c5ce986d54.png)
言語リストから”VisualBasic”を選択する。その後、テンプレート”Windowsフォームアプリ”を選択する。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2752598/4178a782-6c04-ba50-e354-043586c892e4.png)

プロジェクト名や保存場所を決める。その後、デフォルト設定のまま”作成”を押下する。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2752598/4829335d-2a15-4b0d-209a-c50ede1ea1eb.png)
その後、下記のような表示になったら完了！お疲れさまでした。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2752598/1ce77f71-14a8-9710-8572-1861caad7cfb.png)



# Visual Basicを使った実践的なアプリケーション例
Visual Basic（特にVB.NET）を使用して様々な種類の実践的なアプリケーションを開発することができます。ここで、VB.NETを使用した一般的なアプリケーションの例をいくつか紹介します：

### 1. **デスクトップアプリケーション**
- **会計ソフトウェア**: 小規模企業向けの会計や財務管理を行うアプリケーション。入出金管理、請求書作成、財務報告などの機能を含む。
- **在庫管理システム**: 倉庫の在庫状況を追跡し、製品の入出庫を管理するシステム。バーコードスキャナーとの連携などが可能。
- **教育ツールとゲーム**: 学習用アプリケーションやインタラクティブな教育ゲーム。ユーザーの進捗に応じて課題やフィードバックを提供。

### 2. **ウェブアプリケーション**
- **予約システム**: ホテルやレストランの予約を管理するウェブベースのシステム。顧客はオンラインで予約でき、管理者は予約状況を追跡できる。
- **コンテンツ管理システム (CMS)**: ウェブサイトのコンテンツを管理、編集、公開するためのシステム。ユーザーフレンドリーなインターフェースを提供。

### 3. **データベースアプリケーション**
- **顧客管理システム (CRM)**: 顧客の情報を保存し、顧客とのやり取りを管理するアプリケーション。マーケティング、営業、カスタマーサポートのデータを一元管理。
- **リアルタイムデータ分析ツール**: 企業の販売データや市場データをリアルタイムで分析し、視覚的なダッシュボードで表示するツール。

### 4. **ネットワークアプリケーション**
- **ファイル転送プログラム**: ネットワークを介してファイルを安全に送受信するためのアプリケーション。エンドツーエンドの暗号化を提供。
- **ネットワークモニタリングツール**: ネットワークのパフォーマンスを監視し、トラブル発生時にアラートを発するシステム。

これらのアプリケーションは、Visual Basicの視覚的な開発ツールと.NETフレームワークの強力なライブラリを活用して、比較的短期間で開発が可能です。特にデータベースやGUIに関連する機能が豊富なため、ビジネス用途での使用に適しています。

# 今後について
VB.NETはVisual Basicから受け継いだ直感的で読みやすい構文を持ち、プログラミング初心者にも理解しやすい言語です。現在、多くの企業がVB.NETを使用しており、これによりVB.NET開発者への需要が維持されています。これらの企業では、VB.NETで開発されたアプリケーションの保守、アップデート、または機能拡張が必要とされるため、この言語を理解し扱える技術者は引き続き重要です。さらに、VB.NETはVisual Basic for Applications（VBA）と構文が似ているため、Microsoft Office製品のマクロやスクリプトを経験している人々にとって特に親しみやすい言語です。今後、VB.NETの学習を深め、高い技術力を持つエンジニアとして成長していくことを目指しています。