• プログラミング言語「C#」とは?特徴とメリットや作れるものを紹介

    公開日:2023年06月13日 最終更新日:2024年04月12日

    「C#はどのようなプログラミング言語なんだろう」「C#で何が作れるんだろう」と感じていませんか。
    C#の特徴や作れるものを知ることで、いまのあなたが学ぶべきプログラミング言語かどうかを判断できるようになります。

    そこで今回は、

    • C#とは

    • C#で作れるものの例

    • C#の環境構築手順

    という流れで、C#についての情報をまとめて解説します。

    記事の後半で、C#を学ぶためのおすすめの参考書や学習サイトも紹介しています。「C#について知り、必要ならさっそく学習を開始したい」という方は、ぜひ最後までお読みください。

    プロエンジニアの無料会員登録はこちら

    1. C#とはどんなプログラミング言語?

    プログラミング言語「C#」とは?特徴とメリットや作れるものを紹介【フリーランスエンジニア案件情報|プロエンジニア】

    まずは、C#の概要や特徴を見ていきましょう。

    ▲トップへ戻る

    1.1 C#の概要・バージョン

    「C#(シーシャープ)」は、Microsoft社によって開発されたプログラミング言語です。C言語やC++から派生した、オブジェクト指向型の言語として開発されました。

    オブジェクト指向型とは、モノ(オブジェクト)の作成と操作という考え方でプログラムを構築することで、独立性・再利用性・拡張性を実現できる手法です。

    C#をはじめるには、Microsoft社の統合開発環境(IDE)である「Visual Studio」をインストールします。統合開発環境とは、開発に必要な機能を1つにまとめたソフトウェアです。Visual Studioを使えば、C#でプログラミングをするための環境を簡単に整えられます。

    C#には公式のリファレンス(参考資料)があります。C#を学ぶときには参考にしましょう。なお、C#の最新バージョンは11です。(2023年6月時点)

    Visual Studio 公式サイト https://visualstudio.microsoft.com/ja/downloads/
    C# リファレンス https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/
    C# 最新バージョン C#11
    https://learn.microsoft.com/ja-jp/dotnet/csharp/whats-new/csharp-11

    ▲トップへ戻る


    1.1.1 C#の動作環境(Windows/.NET Framework)

    C#の動作環境は、基本的にWindowsの.NET Frameworkを選びます。いずれもMicrosoft社製で、親和性が高く扱いやすいためです。

    なお、Windows8以降は.NET Frameworkが標準搭載されています。C#プログラミングをスムーズに始めることが可能です。

    ▲トップへ戻る


    1.1.2 C#の動作環境(Mac)

    C#の動作環境としてMacを使用する場合、「Mono」という.NET Framework互換ライブラリをインストールすることで代用できます

    Monoは、.Net FrameworkをUnix系とLinux系のOSで使用できるように変換したものです。

    Visual Studio 2022 for MacでサポートされるOSとハードウェアは以下になります。

    サポートされるOS

    ・macOS Ventura 13.0 以降

    ・macOS Monterey 12.0 以降

    ・macOS Big Sur 11.0 以降

    ハードウェア

    ・1.8 GHz 以上の 64 ビット プロセッサ。デュアルコア以上を推奨

    ・4 GB の RAM (8 GB の RAM を推奨) (仮想マシン上で実行される場合は最小 4 GB)

    ・必要なハード ディスク領域:2.2 GB 以上から最大 13 GB

    ・1280 x 800 以上の画面解像度

    ▲トップへ戻る

    1.2 C#の特徴

    C#の特徴として以下が挙げられます。

    • オブジェクト指向言語である

    • .NETシステムで稼働するアプリケーションを構築できる

    • さまざまなアプリケーションを開発でき汎用性が高い

    さらに、C言語・C++との違いからC#の特徴をご説明します。

    ▲トップへ戻る


    1.2.1 C#とC言語の違い・関係性

    C#とC言語の違いは以下の通りです。

    言語 特徴 作れるもの
    C#

    ・.NET Framework上で動作する

    ・実行速度が遅い

    ・難易度が低い

    ・初心者のプログラミング学習に適している

    ・オブジェクト指向

    ・Webアプリケーション

    ・モバイルアプリケーション

    ・ゲーム/MR(VR/AR)

    C言語

    ・コンパイラ方式

    ・実行速度が速い

    ・難易度が高い

    ・言語として歴史が長い

    ・プログラミングの基礎を学ぶのに適している

    ・組み込みシステム

    ・OS

    ・ソフトウェア


    両者の関係性として、C言語からC++が開発され、C++とJavaからC#が開発されています。

    ▲トップへ戻る


    1.2.2 C#とC++の違い・関係性

    C#とC++の違いは以下の通りです。

    言語 特徴 作れるもの
    C#

    ・実行速度が遅い

    ・難易度が低い

    ・C言語と互換性がない

    ・Webアプリケーション

    ・モバイルアプリケーション

    ・ゲーム/MR(VR/AR)

    C++

    ・実行速度が速い(C言語と同程度)

    ・難易度が高い

    ・C言語と互換性がある

    ・大規模な業務システム

    ・IoT向けソフトウェア

    ・データ解析/統計


    両者の関係性として、C++とJavaからC#が開発されています。

    ▲トップへ戻る

    2. C#で作れるものの例

    プログラミング言語「C#」とは?特徴とメリットや作れるものを紹介【フリーランスエンジニア案件情報|プロエンジニア】

    C#で作れるものの例として、以下の3つをご紹介します。

    • Webアプリケーション開発

    • モバイルアプリケーション開発

    • ゲーム開発・MR(VR/AR)開発

    ▲トップへ戻る

    2.1 Webアプリケーション開発

    C#と「ASP.NET」というフレームワークを使うことで、WEBアプリケーションを開発できます。

    ASP.NETは、Microsoft社が提供しているWebアプリケーション開発のためのフレームワークです。特定のOS環境に依存せず、あらゆるWebアプリケーションを開発できます。

    ASP.NETは.NET Frameworkに搭載されています。Visual Studioと組み合わせることで、Webの技術に詳しくない人でも、高機能なWebアプリケーションを開発可能です。

    ▲トップへ戻る

    2.2 モバイルアプリケーション開発

    C#と「Xamarin」という開発環境を使うことで、iOSアプリやAndroidアプリといったモバイルアプリケーションを開発できます。

    Xamarinは、Windows上でiOSやAndroidといった異なるOS向けのソフトウェアを開発できるクロスプラットフォーム開発環境です。

    XamarinはVisual Studioに搭載されているので、スムーズに使い始められます。Xamarinを使えば、C#でiOSアプリやAndroidアプリを開発可能です。

    ▲トップへ戻る

    2.3 ゲーム開発・MR(VR/AR)開発

    C#と「Unity」というゲームエンジンを使うことで、ゲームを開発できます。最近注目が集まっているMR(複合現実)・VR(仮想現実)・AR(拡張現実)の技術を用いたゲーム開発も可能です。

    さらにUnityを使えば、iOSアプリやAndroidアプリも開発できます。

    MR・VR・ARの分野は今後も発展が見込める成長分野のため、開発に必要なC#を習得しておくと活躍できるでしょう。

    ▲トップへ戻る

    3. C#に関連するITエンジニア求人の動向

    C#に関連するITエンジニア求人の動向について、プロエンジニアに掲載されている案件をもとにご紹介します。


    プログラミング言語「C#」とは?特徴とメリットや作れるものを紹介【フリーランスエンジニア案件情報|プロエンジニア】

    出典:【C#】アプリ開発エンジニア★Windowsデスクトップアプリ開発|プロエンジニア

    Windowsデスクトップ上で動作するアプリの開発業務の案件です。月額単価は70万円~80万円となっています。


    プログラミング言語「C#」とは?特徴とメリットや作れるものを紹介【フリーランスエンジニア案件情報|プロエンジニア】

    出典:【Unity(C#)】ゲームエンジニア★オンライン3Dゲーム開発・運用|プロエンジニア

    主な業務内容は、ユニティを利用したゲーム開発/テスト/運用、ゲーム内UIの実装、3Dキャラモデルを用いた戦闘システムの実装です。月額単価は60万円~80万円となっています。

    ▲トップへ戻る

    4. C#で「Hello,World」を表示するには?環境構築手順

    ここでは、「Visual Studio Community」を使用したC#の環境構築と「Hello,World」を表示する手順を解説します。

    Visual Studio Communityは、Visual Studioの無償版です。Visual Studio Communityはこちらからダウンロードしてください。

    ■ 補足:画面スクリーンショットについて

    以降はVisual Studio 2019 for Macの画面ですが、Visual Studio 2022 for Mac や Windowsで環境構築する場合も基本的な手順は同じです。


    まずは、「Visual Studio Community」を開きます。「新規」をクリックして「新しいプロジェクト」を開きましょう。

    プログラミング言語「C#」とは?特徴とメリットや作れるものを紹介【フリーランスエンジニア案件情報|プロエンジニア】

    新しいプロジェクトのウィンドウが開きます。左のメニューから「アプリ」をクリックすると表示される「コンソールアプリケーション」を選択して、「次へ」をクリックします。

    プログラミング言語「C#」とは?特徴とメリットや作れるものを紹介【フリーランスエンジニア案件情報|プロエンジニア】

    対象のフレームワークを選択する画面になります。ここは初期表示のままで、「次へ」をクリックします。(例:Visual Studio 2022 の場合、初期表示は「.Net 6.0」)

    プログラミング言語「C#」とは?特徴とメリットや作れるものを紹介【フリーランスエンジニア案件情報|プロエンジニア】

    プロジェクト名と場所を決めます。任意のプロジェクト名、場所で問題ありません。今回は、プロジェクト名を「helloworld」、場所を「/Users」にしました。ここで指定した場所に新規プロジェクトが作成されます。「作成」をクリックしましょう。

    プログラミング言語「C#」とは?特徴とメリットや作れるものを紹介【フリーランスエンジニア案件情報|プロエンジニア】

    新規プロジェクト「helloworld」が作成されました。「Program.cs」のタブが開かれている状態になります。

    プログラミング言語「C#」とは?特徴とメリットや作れるものを紹介【フリーランスエンジニア案件情報|プロエンジニア】

    「Program.cs」を下記のように書き換え、「ファイル>保存」をクリックします。「Console.WriteLine();」は()内の要素を出力する命令です。「Console.WriteLine(“Hello,World!”);」と記述することで、「Hello,World」と出力できます。

    プログラミング言語「C#」とは?特徴とメリットや作れるものを紹介【フリーランスエンジニア案件情報|プロエンジニア】

    using System;
    
    namespace helloworld
    {
        class Program
        {
            static void Main(string[] args)
            {
                Console.WriteLine("Hello,World");
                Console.ReadKey(true);
            }
        }
    }
    

    「▶︎」ボタンをクリックすると実行されます。「ターミナルーhelloworld」をクリックし、ターミナルに「Hello,World」と出力できていれば成功です。

    プログラミング言語「C#」とは?特徴とメリットや作れるものを紹介【フリーランスエンジニア案件情報|プロエンジニア】

    ▲トップへ戻る

    5. C#のおすすめ参考書・技術書

    著者:北村 愛美

    発売日:2020年7月7日

    価格:2,860円(税込)

    サンプルコードの有無:あり

    出典:Amazon

    C#の学習におすすめの参考書・技術書として『確かな力が身につくC#「超」入門』があります。

    本書ははじめてプログラミングを学ぶ初心者を対象に、C#の基礎からオブジェクト指向、アプリケーションの作り方までをやさしく解説した参考書です。

    以下の章立てで構成された内容となってます。

    • Chapter1 イントロダクション

    • Chapter2 開発環境の準備

    • Chapter3 C#の文法

    • Chapter4 オブジェクト指向

    • Chapter5 Visual C#の使い方

    • Chapter6 Windowsアプリケーションの作成


    著者の北村 愛美氏は、IT企業の研究職を経て、現在は執筆やイラスト制作をしています。主な著書として『Unity5の教科書』が有名です。


    C#の学習におすすめの参考書・技術書についてさらに詳しく知りたい方は、以下の記事も参考にしてみてください。

    ▲トップへ戻る

    6. C#のおすすめ学習サイト

    C#を学ぶのにおすすめの学習サイトとして以下の2つをご紹介します。


    ◆ ドットインストール

    プログラミング言語「C#」とは?特徴とメリットや作れるものを紹介【フリーランスエンジニア案件情報|プロエンジニア】

    出典:C#入門|ドットインストール

    「ドットインストール」は、3分間の動画でプログラミングを学べる学習サイトです。さまざまな講座があり、基本的な内容は無料で学べます。「C#入門」の講座は有料ですが、月額1,080円(税込)とリーズナブルなのでおすすめです。


    ◆ ++C++; // 未確認飛行 C

    プログラミング言語「C#」とは?特徴とメリットや作れるものを紹介【フリーランスエンジニア案件情報|プロエンジニア】

    出典:++C++; // 未確認飛行 C

    「++C++; // 未確認飛行 C」は、C#・情報工学を中心とした学習サイトです。運営者による勉強用のページとブログがあります。テキストで体系的にまとめられていることが特徴です。

    ▲トップへ戻る

    7. まとめ

    今回は、

    • C#とは

    • C#で作れるものの例

    • C#の環境構築手順

    という流れで、C#について解説しました。

    C#はゲーム開発で特に活用されており、成長分野のMR・VR・ARでも需要があるプログラミング言語です。
    C#関連のフリーランス求人や案件は多く、今後さらに需要が高まる見込みとなっています。
    今回ご紹介した内容を参考に、C#の案件動向や月額単価を把握し、今後のキャリアに活かしてくださいね。

    ▲トップへ戻る

    最新のフリーランスエンジニア情報をチェック!

    月額単価50万円〜60万円
    勤務地 東京都 中野区
    月額単価70万円〜
    勤務地 東京都 渋谷区
    月額単価80万円〜90万円
    勤務地 東京都 港区
    勤務地 フルリモート

    フリーランスの方でこのようなお悩みありませんか?

    • 定期的に案件を紹介してほしい
    • 完全フルリモートワークや、週1出勤など、働き方を選びたい
    • 単価交渉など営業周りが苦手なので、誰かに任せたい

    プロエンジニアにお任せください!

    プロエンジニアはほとんどEND直案件!高額単価案件ならお任せください。
    完全フルリモートや、週1出勤など、希望に合わせた働き方ができる案件を多数ご用意しています。
    単価や契約交渉などは弊社キャリアコンサルタントに全てお任せください。

    無料登録して、あなたの希望に合った案件をチェック!

    簡単60秒!無料登録はこちらから

    おすすめ記事

  • ピックアップ

    フリーランス

    NEW 【C#】サーバーサイドエンジニア★3D表示PCアプリケーション開発

    リアルタイムOSプラットフォームや車載ソフトウェアなどの自社サービスや受託事業を展開している企業に...

    月額単価:50万円〜60万円

    フリーランス

    【C#.net】サーバーサイドエンジニア★自社ブランドの業務アプリケーション開発

    アパレル、生活雑貨、飲食などの幅広い分野でサービス展開している企業にて、自社ブランド管理の業務ア...

    月額単価:70万円〜

    フリーランス

    【C#.net】サーバーサイドエンジニア★自社ブランドの業務アプリケーションの運用保守

    アパレル、生活雑貨、飲食などの幅広い分野でサービス展開している企業にて、自社ブランド管理の業務ア...

    月額単価:70万円〜

    フリーランス

    【React/Kotlin】テックリード★保育・教育施設向け業務支援サービスの開発

    保育・教育施設向けICTシステムやSaaSを展開している企業にて、当システムの開発業務(テックリード)を...

    月額単価:80万円〜90万円

SCROLL TOP