こんにちは。倉内です。
プログラミング学習を始めてすぐは、初心者向けの学習コンテンツや書籍などを使って基本的な内容を習得する人が多いと思うのですが、「そのあとどうしようかな…」とちょっと悩む人もいるようです。
言語はいろいろ種類がありますが、C#は基本を学ぶための学習サイトはもちろん、開発環境の構築に関する情報が豊富でプログラミング初心者でも取り組みやすいと言えます。
しかもUnityを使ったゲーム開発やXamarinを利用したスマホアプリケーションの開発もできておすすめです。
そこで今回はC#を始めたばかりの方から、ゲーム開発、アプリケーション開発をやってみたいと思っている方まで利用できる学習コンテンツをご紹介します。
C#の基礎学習
これから初めてC#を学ぶという方は、まず基本文法(四則演算やループ文、条件文)と配列・クラス・メソッドの理解など基礎的な内容を固めましょう。
一週間で身につくC#言語の基本
プログラミング初心者でも1週間でC#を身につけることを目標にした学習サイトです。基本編・応用編があり、理解を深めるための練習問題も用意されています。
また、Udemyのオンライン講座としても提供されています。
++C++; // 未確認飛行 C
C#の学習を始めたらほぼ必ずお世話になるサイトです。
基本的な内容はすべて網羅されており、サンプルコードも豊富なため、初心者にも調べやすい・分かりやすいのが特徴です。
ドットインストール「C#入門」
プログラミングが動画で学べるドットインストールでは、「C#入門」講座が一部無料で受講できます。
ローカルの開発環境構築の手順も動画で学べるので、独学ではつまずきがちな環境構築についても理解しながら進めることができます。
paizaラーニング「C#入門編」
paizaラーニングも、動画でC#の基本的な内容を学んでいきますが、ローカルに開発環境は作らずWebブラウザ上で演習問題を解きながら進めていく形式です。
C#の基本文法を学習したあとは、ゲームで楽しくプログラミングが学べる「コードガールこれくしょん」をやってみたり…
プログラミング問題を解いた結果によりS・A・B・C・D・Eの6段階で自分のスキルを測れる「スキルチェック」に挑戦したりしてC#をどんどん使いこなしましょう!
C#の開発環境を構築
C#はMicrosoftが作ったプログラミング言語なので、IDE(統合開発環境)もMicrosoftが提供している「Visual Studio」を利用することが多いでしょう。
もちろんテキストエディタでコードを書いて、コンパイルさえできるようにしておけば開発できますが、IDEには以下のような機能が備わっていますので非常に便利です。
- ソースコードの編集
コードのハイライト(予約語や型名などプログラム的に意味のある部分を色付けして見やすくする)、コード補完(カーソル位置に書けるコード(型名やメソッド)の候補を表示する)、エラー指摘(文法チェックでリアルタイムにエラー箇所を指摘する)
- デバッグ
ブレイクポイントの設定(任意の位置を指定し、処理がそこまで来たときの変数の中身などを確認できる)、ステップ実行(ソースコードを1行ずつ実行し、変数の中身などを確認できる)
- パッケージ化
プログラムをWeb用やexeファイルなどに配布可能な状態にする
特に業務でC#による開発をおこなう際はVisual Studioを利用すると思いますので、興味がある方はまずは無償の「Visual Studio 2019 Community」をインストールして触ってみるといいかもしれません。
YouTubeに公開されているインストール手順の動画が分かりやすいのでご紹介します。Hello Worldを表示するところまで解説してくれています。
Unityでゲーム開発
Unityは世界でもっとも利用されているゲーム開発用エンジンです。
Unityでは、プログラムを書かなくても画面からのパラメーター設定で多くのことを実現できるようになっており、簡単なゲームであれば3Dを扱う場合でもプログラミングなしで実現できます。
ただし、C#(他にもJavaScript、Booといった言語が使われることも)でプログラミングすることができれば、さらに高度な開発やカスタマイズが可能です。
ゼロから始めるUnity生活【基本操作】
このあと紹介するサイトがチュートリアル、入門と言いながらやや難しめなので、まずは基本中の基本を説明してくれているサイトをご紹介します。
Unityを触る上で理解しておかないといけない名称や基本的な機能、操作方法についていちから説明してくれています。なにはともあれここにある「Unityの操作方法」は理解しましょう。
http://tutorial.unity3d.jp/
Unityの公式ページ内で解説されており内容も充実しています。
楽しみながら学べるよう工夫されたチュートリアルが用意されています。中にはかなりハイレベルなものもありますが、まずは「玉転がし」から取り組んでみましょう!
Unity公式の「Unity入門」
Unity公式の入門ページですが、初めてUnityに触れる方には少々難しいかもしれません。中級者くらいの方がひとつひとつの内容を深く理解するのに役立ちます。
公式ということでUnityのアップデートにも追従しており、随時情報が更新されているのがとてもよい点です。
Unity2019入門 最新開発環境による簡単3D&2Dゲーム制作
書籍も紹介しておきます。この本はUnityのインストールから丁寧に解説されており、Unity未経験者でも取り組みやすい内容になっています。
タイトルの通り簡単なゲームが作れるようになります。本格的な3DCGを駆使したゲーム開発まではいきませんが、Unityでのゲーム開発の土台となる部分を学ぶことができます。
なお、Unityのインストールやプロジェクトの作成方法などはこちらの記事でも手順を紹介していますので参考にしてみてください。
paizaラーニングでは、ゲーム業界やゲームエンジニアのキャリアについて知ることができる動画講座「ゲームエンジニア入門編」も公開しています。ゲーム業界で働くことに興味がある方はぜひごらんください。
Xamarinでスマホアプリ開発
これまでスマホアプリといえば、iOSアプリはObjective-CもしくはSwift、AndoroidアプリはJavaで開発する必要がありました。
しかし、Microsoftが2016年2月に買収したXamarin(ザマリン)社が開発した、.NETで iOSやAndroidアプリが作成できる技術のおかげでC#で両方のアプリ開発が可能となりました。
C#やUnity並みに情報が多いわけではないのですが、徐々に日本語サイトや書籍も増えてきました。いくつかXamarinを学べるサイトと参考書をご紹介します。
特集:Visual StudioとXamarinで始めるiOS/Android/UWPアプリ開発
@ITの連載記事です。「Xamarinとは何か?」から始まり、開発環境の構築、ビルドやデバッグ実行の仕方まで丁寧に解説されています。
連載2回、3回と進んでいくとXamarinでUIを作る方法、スマホアプリでよく使われるUIパーツの実装方法なども学習できます。
C#でXamarin.Formsをする方法
スマホアプリで利用するUIコンポーネントの使い方(書き方)を理解したい方におすすめです。
実際のコードと画面での説明があるので、「画面にこういうパーツ置きたい」といったイメージがある方は活用してみてください。
基礎から学ぶ Xamarinプログラミング
![基礎から学ぶ Xamarinプログラミング 基礎から学ぶ Xamarinプログラミング](https://m.media-amazon.com/images/I/51VnyPWxvGL._SL160_.jpg)
- 作者:西村誠
- 発売日: 2017/07/27
- メディア: Kindle版
スマホアプリ開発初心者かつXamarinもこれからという方が学ぶときの入門書的な1冊です。深堀りというよりはXamarinというものの全体像を知るための本という位置づけでしょうか。
出版が2017年のため、現在のXamarinのバージョンと合わない部分もあるようなのでその点は注意が必要です。
まとめ
C#の基本的な内容の学習ができるサイトから始まり、Unityでのゲーム開発やXamarinでのスマホアプリ開発ができるサイトや書籍を紹介しました。
私自身C#を使って開発をおこなっていたのですが(と言ってもコードはそんなに自分では書いていませんでしたが…)業務システム中心で、ゲーム開発やスマホアプリ開発まではやったことがなかったのでいろいろと試してみたいなと思いました。
C#に限らず、プログラミングは自分で手を動かしてみないとなかなか身につけるのが難しいので、「こういうサービス作ってみたいな~」という思いがある方は特に、まずは自分でコードを書いてみるところから始めましょう!
「paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。
詳しくはこちら
そしてpaizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。
詳しくはこちら