C#アプリ開発入門!初心者が作れるアプリ制作事例と勉強方法

これからプログラミングを始めようとする人が、C#というプログラム言語を使ってアプリ開発を行うための基本的事項を説明します。

また、数多くあるプログラム言語の中でC#というプログラム言語がアプリ開発のどのような場面で実際に使われているのかを理解していただき、C#のプログラミング学習が有益なものとなるように、この記事を公開しました。

フリーランスエンジニア案件を探すなら
「クラウドワークス テック」
クラウドワークステックトップ

フリーランスエンジニア特化エージェント
エンジニア特化×リモート案件90%

クラウドワークス テックは、フロントエンドやバックエンド、インフラなど、エンジニアの専門性を重視した案件を多数掲載。

リモート案件が90%以上。 週1日〜の参画も可能で、初めての方でも専任担当者が徹底サポートします。

案件を紹介してもらいたい副業・フリーランスエンジニアにおすすめのサービスです。

目次

アプリ開発とプログラミングの関係性

アプリとプログラミングがそれぞれどのようなものなのか、そして両者の関係についてお話します。

※プログラムとプログラミングは往々にして同じもののように認識される場合がありますが、プログラミングはプログラムを作成する行為をさし、プログラムはその結果の成果物です。

アプリとは

昨今、アプリという言葉を頻繁に見聞きするようになりました。特にスマホ時代に入ってからは、実際多くの人がアプリを使っています。ゲームアプリやお天気アプリ、地図アプリなど、私たちにとってなくてはならないものとなっています。つまり、私たちは様々なアプリの恩恵にあずかっている訳です。

一般的に知られるようになった「アプリ」という言葉ですが、実はコンピュータに関わってきた人たちの世界ではずっと以前から使われてきたものです。それは業務アプリと言われるもので企業・社会発展のためには欠かせないものです。もちろん現在も業務アプリは重要なアプリとして、日々開発され続けています。後でお話ししますC#はこの業務アプリに適した開発言語なので、業務アプリについてもう少し説明します。

業務アプリの種類は無数といってもよいでしょう。業務を分類するだけでも開発設計・販売・物流・研究・会計・給与・教育・受発注等々、これらはさらに業種(産業)ごとにアプリ内容が異なり、さらに多くの場合は企業ごとに異なります。要するに開発する業務アプリは際限なくあるということです。

プログラミングとは

簡単に言えば、プログラム言語を使ってプログラムを作ることと言えます。今回取り上げるC#は重要なプログラム言語のひとつなのです。

アプリとプログラミングの関係

プログラミングの結果としてアプリが出来上がり、私たちはそれを個人でまたは会社で便利に使っているのです。つまり、アプリは誰かがプログラミングして作り上げているのです。プログラムの集合体とも言えます。ただし、ここでは詳しく説明しませんが出来上がったプログラムが必ずしも=アプリではありません。そのままアプリとして使う場合もありますが、モジュール(プログラムの部品)になる場合もあります。

C#をアプリ開発へ使う理由

アプリ開発のできるプログラム言語は現在では主なものだけでも10以上あります。

そして、これからも新しいプログラム言語が作り出されると思われます。そういった中でC#でアプリ開発するのはなぜでしょうか。

C#をアプリ開発へ使う理由
  • アプリの多種多様性
  • ハードの多種多様性

アプリの多種多様性

アプリの違いが最も分かりやすいのが、スマホアプリと業務アプリです。

そして スマホアプリでもゲームアプリとそれ以外ではその特徴は異なります。

業務アプリについては前述したように数多くの分類が可能です。

ハードの多種多様性

私たちがアプリを動かそうとするとき、何らかのハードウェア(ハード)を使います。アプリはソフトウェア(ソフト)とも言い換えることができます。少し余談になりますが、昔コンピュータは非常に高価なもので、価格の9割方がハードでした。しかし、次第にハード特にメモリなどの価格下落により「ハードはソフトがなければ、ただの箱」と揶揄された時期もあります。
アプリ(ソフトウェア)が使われるハードは時代とともに広がってきました。当初はコンピュータだけでしたが今では、パソコン・タブレット・スマホ・家電といったように身の回りにはアプリが入ったものが溢れています。

C#をアプリ開発で使う場面

数多くのプログラム開発言語の中からC#を選択する場面として、次の2点があげられます。

C#をアプリ開発で使う場面
  • (1)Windowsのアプリを開発する場合
  • (2)BASICでのプログラム経験がない場合

(1)Windowsのアプリを開発する場合

アプリとハードの多種多様性について説明しましたが、どのプログラム開発言語でも可能というわけでもありませんし、可能だとしても非効率だったりもします。

したがって、アプリ開発する場合に最適なプログラム言語を選択する必要があります。今日多くのパソコン(PC)やサーバーではマイクロソフトのWindowsというオペレーティングシステム(OS)が使われています。C#はWindowsのアプリを開発するには最適なプログラム言語と言えます。

もし読者の方が、スマホのゲームアプリ開発するのであれば、C#を選択することはないでしょう。C#を使うのに最適な場面は、業務アプリです。制御系など特殊な場面を除けばほとんどC#での開発が可能です。

(2)BASICでのプログラム経験がない場合

Visual Basic(VB)という開発言語は、実はC#と同じ開発環境であるマイクロソフトのVisual Studioを使います。

使いやすさはほぼ同等と言えますが、文法が大きく異なります。

おそらく過去にBASICでのプログラム経験があればVBを選択するでしょうが、BASICの経験がなければC#を選択するのが賢明です。

少し難しい話になりますが、C#は元々オブジェクト指向プログラミングを念頭に開発されたプログラム言語なので、より洗練された新しい言語といえます。また、読者の方が先々javaやC言語を学ぶときは文法が近いので習得が早いかと思われます。

C#でのアプリ開発の習得期間

アプリは多種多様であるため規模の違いや技術的な難易度の差もあり、一概に習得期間を示せませんので、いくつかアプリ対象を想定してお話します。

C#でのアプリ開発の習得期間
  • 開発環境を整える
  • 対象アプリごとの習得期間

開発環境を整える

まずは開発環境であるマイクロソフトのVisualStudioをダウンロードしてセット
アップする必要があります。PCの性能にもよりますが数時間で終わります。

対象アプリごとの習得期間

実用の業務アプリではC#の知識だけではなく、データベースやPCとの通信機器についても学習が必要です。また、単にアプリを作るだけでなく分かりやすいメンテナンス性の高いアプリを作るにはオブジェクト指向の考え方を理解したうえでのプログラミングが必要です。

対象アプリの機能例ポイント習得時間(h)
PC画面への表示と入力のみ開発環境であるVisualStudioを同時に学習する20h
データベース(DB)への入出力OracleやSQL ServerのようなDBも学習する40h
他の機器との連携ターゲットとする機器との通信技法を学習する40h
オブジェクト指向を優先したプログラミングオブジェクト指向プログラミングの概念と技法を学習する40h

したがって、表の習得時間は第一段階の目安であり、さらに習熟して開発技法を高めていくことになります。

C#で開発できるアプリ制作事例

業務アプリであればほとんどの場合、C#での開発が可能です。パソコンのゲーム開発もできます。

C#で開発できるアプリ例補足
財務会計、給与計算、売上集計などの業務アプリデータ処理関係のアプリはほとんどの場合、データベース処理が必要となります。
生産設備の制御アプリよほどの高速レスポンス要求がなければ、C#で可能です。
パソコンでの教育用アプリやゲームアプリ趣味なども兼ねて自宅で気軽に開発可能です。

下図はC#で開発したPC上で動く業務アプリの画面例です。グラフ表示なども行っており、かなり複雑な表示も可能です。

C#のアプリ開発を学ぶ上でおすすめの入門サイト

C#のアプリ開発を学ぶ上でおすすめの入門サイトは下記です。

連載:簡単! Visual Studio 2013入門

第1回 初めてのVisual Studio 2013 (1/5)
C#でプログラミングするために不可欠なのが、その開発環境であるVisual studio(VS)です。このサイトでは、VSを理解することと同時にC#のプログラミングを学習できます。
第2回Visual Studio 2013の基礎を知る
第3回.NETのコードを理解するための基礎知識
第4回Visual Studio 2013のひな型コードを理解する
第5回初めてのWindowsアプリの開発
第1回から5回までの連載となっています。順序に従って学習すれば、C#とVSの基本が理解できます。VSの使い方が分かれば、C#の基本的な文法や処理を学習できるサイトで実践してみるのがおすすめです。

URL:http://www.atmarkit.co.jp/ait/articles/1408/27/news118.html

参照:一週間で身につくC#言語の基本

C#のアプリ開発を学ぶ上でおすすめの動画

C#のアプリ開発を学ぶ上でおすすめの動画は下記です。

URL : https://www.youtube.com/watch?v=HNRl7TQ-4wc
説明 : VSのインストール操作からC#で“Hallo World”を画面に表示するプログラ
ミング作業を確認できます。

URL : https://www.youtube.com/watch?v=f-QqWteEQiA
説明 : PCにVSがインストールしてある状態であれば、まずは動かしてみることができます。

C#のアプリ開発でおすすめのライブラリ

C#開発で使用する機能は.NET framework関連のクラスライブラリを利用する場合がほとんどです。

逆引きサイト紹介

URL : http://dobon.net/vb/dotnet/index.html
逆引きとしても使える小技集です。内容はたいへん豊富ですのできっと役に
立ちます。
説明の中でソースコードがVBとC#の両方が表示されますが、見にくければ
画面左上の「VB.NETのコードを非表示」にチェックマークをつければ、C#の
ソースコード表示のみとなります。

URL : http://jeanne.wankuma.com/tips/csharp/
このサイトも大変内容豊富です。

まとめ:C#アプリ開発の制作事例

C#でゲームアプリを開発して楽しむこともできますが、C#というプログラム言語は、以下の場面で使うのが最も有効と思われます。

  • これから初めてプログラミングを始める方
  • PCやサーバーのWindows環境でアプリ開発をする方
  • 業務アプリを開発する方

C#はデータベースを処理したり、他の機器と通信したりとほとんど何でもできます。しかしそのより高度な技法を学ぶことはまだ先でよいでしょう。C#でのアプリ開発は決して難しいことではありませんので、まずは簡単な機能だけで始めてみることです。

いかがでしたでしょう、あなたはC#でのアプリ開発のイメージを持つことができたでしょうか。

フリーランスエンジニア案件を探すなら
「クラウドワークス テック」
クラウドワークステックトップ

フリーランスエンジニア特化エージェント
エンジニア特化×リモート案件90%

クラウドワークス テックは、フロントエンドやバックエンド、インフラなど、エンジニアの専門性を重視した案件を多数掲載。

リモート案件が90%以上。 週1日〜の参画も可能で、初めての方でも専任担当者が徹底サポートします。

案件を紹介してもらいたい副業・フリーランスエンジニアにおすすめのサービスです。

この記事を書いた人

簡単1分で無料登録 フリーランス・副業の優良案件を見る
目次