「C#の学習に適した本はどれだろう?」「C#を学ぶレベルや目的に合ったおすすめの参考書はないかな?」と感じていませんか。
C#の本選びでは、何を学びたいのか事前に明確にすることが大切です。自分に合った参考書を選ぶことで、学習効率を高められます。
そこで今回は、
•【初心者・中級者向け】C#のおすすめ参考書・技術書
•【Unity開発向け】C#のおすすめ参考書・技術書
•【Xamarin向け】C#のおすすめ参考書・技術書
•【ASP.NET向け】C#のおすすめ参考書・技術書
という流れで、C#を学ぶのにおすすめの参考書を解説しました。
それぞれの参考書について、章立てやサンプルコードの有無、価格などをまとめています。「自分に合った本を見つけてC#を学習したい」という方は、ぜひ最後までお読みください。
1. プログラミングC#とは
「C#(シーシャープ)」は、Microsoft社によって開発されたプログラミング言語です。
特徴として、オブジェクト指向型で、Microsoft社の製品と相性が良いことが挙げられます。オブジェクト指向型とは、モノ(オブジェクト)の作成と操作という考え方でプログラムを構築することで、独立性・再利用性・拡張性を実現できる手法です。
C#で開発された代表的なサービスには以下があります。
• MSN:Microsoft公式のポータルサイト
• Bing:検索エンジン
• ポケモンGO:ARスマホゲーム
C#を学習するメリットとして、言語として汎用性が非常に高く、複数のプラットフォームに対応していることからアプリ開発に活用しやすい点があります。
さらに、「Visual Studio」という無料のIDE(Integrated Development Environment:統合開発環境)が使えるので、学習しやすいでしょう。
1.1 C#習得の難易度はどれくらい
C#はコードの記述量が多いことから、習得難易度はやや高めです。初心者には少し難しい言語といえます。
Javaと文法が似ているため、Javaの経験があればC#を学習しやすいでしょう。また、C#を身につけることでJavaの学習がしやすくなることも期待できます。
ただし、「C言語」や「C++」よりは習得難易度が低めです。C言語やC++で挫折してしまった方は、C#を学習してみてはいかがでしょうか。
2.【初級~中級】C#のおすすめ参考書・技術書15選
初級から中級向けに、C#のおすすめ参考書・技術書をご紹介します。
以下の順に紹介するので、自分に合った箇所を参考にしてみてください。
• 初心者向け
• 中級者向け
• Unity開発向け
• Xamarin向け
• ASP.NET向け
2.1【初心者向け】C#のおすすめ参考書・技術書
初心者向けのC#のおすすめ参考書・技術書について、以下の3冊をご紹介します。
• やさしいC# 第3版
• 確かな力が身につくC#「超」入門
• C#の絵本 第2版 C#が楽しくなる新しい9つの扉
2.1.1 やさしいC# 第3版
『やさしいC# 第3版』は、C#を学ぶための最初の1冊に最適な参考書です。
タイトルの通り、やさしくとことん丁寧な解説でC#の基礎を学べます。読みやすい文章とイラスト図解で、概念をイメージ的に理解できる構成です。
内容は以下の通りです。
• Lesson1 はじめの一歩
• Lesson2 C#の基本
• Lesson3 型と演算子
• Lesson4 処理の制御
• Lesson5 クラス
• Lesson6 イベント
• Lesson7 コントロール
• Lesson8 グラフィック
• Lesson9 ゲーム
• Lesson10 ファイル
• Lesson11 ネットワーク
• Lesson12 データの利用
• Lesson13 アプリケーションの作成
著者の高橋 麻奈氏は、『やさしいJava』『やさしいWebアプリプログラミング』など、多数のプログラミング関連書籍を出版しています。
2.1.2 確かな力が身につくC#「超」入門 第2版
『確かな力が身につくC#「超」入門』は、はじめてプログラミングを学ぶ初心者を対象に、C#の基礎からオブジェクト指向、アプリケーションの作り方までをやさしく解説した参考書です。
内容は以下の通りです。
• Chapter1 イントロダクション
• Chapter2 開発環境の準備
• Chapter3 C#の文法
• Chapter4 オブジェクト指向
• Chapter5 Visual C#の使い方
• Chapter6 Windowsアプリケーションの作成
著者の北村 愛美氏は、IT企業の研究職を経て、現在は執筆やイラスト制作をしています。主な著書として『Unity5の教科書』が有名です。
2.1.3 C#の絵本 第2版 C#が楽しくなる新しい9つの扉
『C#の絵本 第2版 C#が楽しくなる新しい9つの扉』は、たくさんのイラストで絵本のように視覚的に理解できるC#の参考書です。
2ページを単位として説明され、基礎に絞り込んだ内容でスピーディーに習得できます。
内容は以下の通りです。
• C#をはじめる前に
• 第1章 基本的なプログラム
• 第2章 演算子
• 第3章 制御文
• 第4章 クラス
• 第5章 クラスの継承
• 第6章 クラスの応用
• 第7章 ファイルとストリーム
• 第8章 文字列の応用
株式会社アンクは『プログラムの絵本』『Pythonの絵本』など絵本シリーズを展開しています。
2.2【中級者向け】C#のおすすめ参考書・技術書
中級者向けのC#のおすすめ参考書・技術書について、以下の3冊をご紹介します。
• 独習C# 新版
• 実戦で役立つ C#プログラミングのイディオム/定石&パターン
• Effective C# 6.0/7.0
2.2.1 独習C# 新版
『独習C# 新版』は、C#を独学するのに最適な参考書です。
C#でオブジェクト指向プログラミングをするのに必要な基本的な知識・概念・機能から、文法や書き方を丁寧に解説しています。
内容は以下の通りです。
• 第1章 イントロダクション
• 第2章 C#の基本
• 第3章 演算子
• 第4章 制御構文
• 第5章 標準ライブラリ
• 第6章 コレクション
• 第7章 オブジェクト指向構文(基本)
• 第8章 オブジェクト指向構文(カプセル化/継承/ポリモーフィズム)
• 第9章 オブジェクト指向構文(名前空間/例外処理/ジェネリックなど)
• 第10章 ラムダ式/LINQ
• 第11章 高度なプログラミング
著者の山田 祥寛氏は、NECにてシステム企画業務に携わったのち、フリーライターに転身。「Microsoft MVP for Visual Studio and Development Technologies」の受賞経験を持ち、ほかに『独習Java 新版』『独習PHP 第4版』などの著作があります。
2.2.2 実戦で役立つC#プログラミングのイディオム/定石&パターン
『実戦で役立つ C#プログラミングのイディオム/定石&パターン』は、現場で利用されているイディオムや定石を学びながらスキルアップができる参考書です。
章ごとの練習問題で各力を身につけ、パターンを覚えられます。
内容は以下の通りです。
• Part1 C#プログラミングのイディオム/定石&パターン[準備編]
• Part2 C#プログラミングのイディオム/定石&パターン[基礎編]
• Part3 C#プログラミングのイディオム/定石&パターン[実践編]
• Part4 C#プログラミングのイディオム/定石&パターン[ステップアップ編]
著者の出井 秀行氏は、メールマガジンやブログでC#の技術情報発信に努め、2005年から12年連続でMicrosoft MVPアワードを受賞しています。
2.2.3 Effective C# 6.0/7.0
『Effective C# 6.0/7.0』は、C#でつまずきがちな「高速化」「可読性の向上」「API設計指針」などの問題の解決策を実例とともに解説している参考書です。
サンプルコードの提示にとどまらず、「どう違うのか」「なぜそうするのか」「これで何が得られるのか」を解説しています。
内容は以下の通りです。
• 第1章 C#言語イディオム
• 第2章 リソース管理
• 第3章 ジェネリックによる処理
• 第4章 LINQを扱う処理
• 第5章 例外処理
著者のBill Wagner氏は、もっとも重要なC#開発者の1人です。現在はMicrosoftの.NETのCore contentチームに勤め、C#言語と.NET Coreに関心のある開発者のために学習用のマテリアルを作っています。
2.3【Unity開発向け】C#のおすすめ参考書・技術書
Unity開発向けのC#のおすすめ参考書・技術書について、以下の3冊をご紹介します。
• UnityではじめるC# 基礎編 改訂版
• Unity C# ゲームプログラミング入門 2020対応
• ゲーム開発に役立つUnity C#スクリプトCookbook 命令詳細解説と機能別スクリプト集
2.3.1 UnityではじめるC#基礎編 改訂版
『UnityではじめるC# 基礎編 改訂版』は、人気のゲームエンジン「Unity」でゲーム開発をしたいプログラミング初心者向けにC#を解説した参考書です。
C#の基本を習得してUnityでゲームを開発し、ストア公開までできる構成となっています。
内容は以下の通りです。
• Chapter1 Unityで開発する準備をしよう
• Chapter2 C#の基本中の基本を覚えよう
• Chapter3 条件分岐と繰り返しをマスターしよう
• Chapter4 Unityを使ったプログラミング
• Chapter5 脱出ゲームをつくろう
• Chapter6 物理パズルゲームをつくろう
• Chapter7 実機テストとアプリの公開
著者の大槻 有一郎氏は、パソコンを使う仕事を求めて印刷所から出版社に就職、その後フリーライターを経て編集プロダクションの立ち上げに参加。主な著書に『スラスラ読めるUnity C# ふりがなプログラミング』があります。
2.3.2 Unity C# ゲームプログラミング入門 2020対応
『Unity C# ゲームプログラミング入門 2020対応』は、Unity2020に対応したC#ゲームプログラミングの参考書です。
アクションやシューティングなどのサンプルを作りながら、C#の書き方を学べます。
内容は以下の通りです。
• Chapter1 ゲームで使うUnityの基本機能
• Chapter2 ゲームのデータを管理する
• Chapter3 アニメーションの活用
• Chapter4 ヒューマノイドを使いこなす
• Chapter5 GUIを活用する
• Chapter6 マルチプレイヤーゲーム
著者の掌田 津耶乃氏は、技術系分野で200冊以上の著作があるテクニカルライター兼プログラマーです。最近の著作には『ブラウザだけで学べる Googleスプレッドシート プログラミング入門』『Google AppSheet ではじめるノーコード開発入門』などがあります。
2.3.3 ゲーム開発に役立つUnity C#スクリプトCookbook 命令詳細解説と機能別スクリプト集
『ゲーム開発に役立つUnity C#スクリプトCookbook 命令詳細解説と機能別スクリプト集』は、主にUnityの機能をスクリプトで操作する方法を解説している参考書です。
命令に関する汎化した書式と具体的事例を提示しながら、わかりやすく詳細に解説しています。また、ゲームに導入したい機能でありながら、入門書ではあまり扱っていない機能を精選して掲載しています。
内容は以下の通りです。
• 第1章 スクリプト作成のための準備を行う
• 第2章 Unityの座標系とベクトルを理解する
• 第3章 ゲームオブジェクトを自在に操作する
• 第4章 入力機器で操作する
• 第5章 ユーザーインターフェイスを使う
• 第6章 物理的力を使う
• 第7章 アニメーション機能を使う
• 第8章 サウンド効果と視覚効果を使う
• 第9章 コルーチンを使う
• 第10章 モバイル端末のセンサーを使う
• 第11章 ゲームの世界を管理する
著者の多田 憲孝氏は、新潟工業短期大学教授、大阪国際大学教授を経て、現在プログラミングスクール「Wonder Processor」代表を務めています。
2.4【Xamarin向け】C#のおすすめ参考書・技術書
Xamarin向けのC#のおすすめ参考書・技術書について、以下の3冊をご紹介します。
• Xamarinネイティブによるモバイルアプリ開発 C#によるAndroid/iOS UI制御の基礎
• プログラミングXamarin 上 Xamarin.FormsとC#によるクロスプラットフォームモバイルアプリ開発
• プログラミングXamarin 下 Xamarin.FormsとC#によるクロスプラットフォームモバイルアプリ開発
2.4.1 Xamarinネイティブによるモバイルアプリ開発 C#によるAndroid/iOS UI制御の基礎
『Xamarinネイティブによるモバイルアプリ開発 C#によるAndroid/iOS UI制御の基礎』は、すべてのモバイルアプリ開発者に向けてXamarinネイティブによるクロスプラットフォーム開発を徹底解説した参考書です。
本書では「Xamarinとは何か」にはじまり、汎用ライブラリMVVMCrossを使いながら本格的なクロスプラットフォームを開発するノウハウまで、サンプルアプリの作成を通してわかりやすく学べます。
内容は以下の通りです。
• Part1 Xamarinの基礎
• Part2 Xamarinでアプリを作る
• Part3 MVVMCrossを使う
著者の青柳 臣一氏は、23歳で株式会社ディーバを設立し、オリジナルソフトの開発やビジネスアプリケーションの受託開発をおこなっています。2002年に日本でマイクロソフトMVP制度が始まったときの第1号受賞者のうちの1人です。
2.4.2 プログラミングXamarin 上 Xamarin.FormsとC#によるクロスプラットフォームモバイルアプリ開発
『プログラミングXamarin 上 Xamarin.FormsとC#によるクロスプラットフォームモバイルアプリ開発』は、Xamarin.Formsを使ったクロスプラットフォームアプリ開発を、基礎から高度なトピックまで存分に解説している参考書です。
上下巻のうちの上巻で、19章にわたります。内容は、Xamarin.Forms の位置付けからアプリケーションの構造、スタックのスクロール、XAML とコード、プラットフォーム固有のAPI の呼び出し、インタラクティブなインターフェイス、データバインディングなど。
著者のCharles Petzold氏は、著作であるWindows開発者のバイブル『プログラミングWindows』で知られています。
2.4.3 プログラミングXamarin 下 Xamarin.FormsとC#によるクロスプラットフォームモバイルアプリ開発
『プログラミングXamarin 下 Xamarin.FormsとC#によるクロスプラットフォームモバイルアプリ開発』は、Xamarin.Formsを使ったクロスプラットフォームアプリ開発を、基礎から高度なトピックまで存分に解説している参考書です。
上下巻のうちの下巻で、上巻に続いて20章から27章にわたります。内容は、非同期とファイルI/O、座標変換、アニメーション、トリガーとビヘイビア、ページナビゲーション、カスタムレイアウト、カスタムレンダラーなど。
著者のCharles Petzold氏は、著作であるWindows開発者のバイブル『プログラミングWindows』で知られています。
2.5【ASP.NET向け】C#のおすすめ参考書・技術書
ASP.NET向けのC#のおすすめ参考書・技術書について、以下の3冊をご紹介します。
• TECHNICAL MASTER はじめてのASP.NET Webフォームアプリ開発 C#対応 第2版
• C#フレームワーク ASP.NET Core3入門
• 独習ASP.NET Webフォーム 第6版
2.5.1 TECHNICAL MASTER はじめてのASP.NET Webフォームアプリ開発 C#対応 第2版
『TECHNICAL MASTER はじめてのASP.NET Webフォームアプリ開発 C#対応 第2版』は、C#のフレームワークの「ASP.NET 4.6」とIDEの「Visual Studio 2015 Community」を組み合わせて、Webアプリケーション開発に役立つ機能を解説している参考書です。
新しいデータアクセスフレームワークの「Entity Framework」および、認証フレームワーク「ASP.NET Identity」についても説明しています。
内容は以下の通りです。
• Chapter01 ASP.NET開発の基礎知識
• Chapter02 はじめてのASP.NETアプリケーション
• Chapter03 サーバーコントロール
• Chapter04 データベース連携の基本
• Chapter05 一覧/単票データバインドコントロール
• Chapter06 Entity Frameworkでのデータベース連携
• Chapter07 データベース連携の応用
• Chapter08 ディレクティブとPageクラスの機能
• Chapter09 ライフサイクルと状態管理
• Chapter10 サイトデザイン
• Chapter11 ASP.NET Identity
• Chapter12 ASP.NET AJAX
• Chapter13 ASP.NETの構成
著者の土井 毅氏は、WINGSプロジェクト所属のテクニカルライターです。@IT(ITMedia)、CodeZine(翔泳社)などのWebメディアを中心に、.NETなどのWeb系技術について執筆しています。また、携帯アプリやソーシャルアプリなどの分野で開発案件に携わっています。
2.5.2 C#フレームワーク ASP.NET Core3入門
『C#フレームワーク ASP.NET Core3入門』は、初心者向けにASP.NET Core 3によるWeb開発の基本をわかりやすく解説した参考書です。
MVCアプリケーションとRazorページアプリの2つのアーキテクチャーを中心に、一般的なWebアプリ、Entity Frameworkによるデータベース利用の開発、そのほかのWeb API、Blazor、Reactなどの技術を利用したWeb開発などについて説明をしています。
内容は以下の通りです。
• Chapter1 ASP.NET Coreの環境構築
• Chapter2 MVCアプリケーションの作成
• Chapter3 Razorページアプリケーションの作成
• Chapter4 Entity Framework Coreによるデータベースアクセス
• Chapter5 データベースを使いこなす
• Chapter6 さまざまなプロジェクトによる開発
• Chapter7 アプリケーションを強化する
著者の掌田 津耶乃氏は、技術系分野で200冊以上の著作があるテクニカルライター兼プログラマーです。最近の著作には『ブラウザだけで学べる Googleスプレッドシート プログラミング入門』『Google AppSheetではじめるノーコード開発入門』などがあります。
2.5.3 独習ASP.NET Webフォーム 第6版
『独習ASP.NET Webフォーム 第6版』は、Visual StudioでWebアプリケーション・Webフォームを開発するときに必要となる基礎的な知識やASP.NETの仕組みから、サーバーコントロールの使い方と使い分け、データベース連携、状態管理、Ajax/jQueryまで、丁寧に解説している参考書です。
解説、練習問題、理解度チェックという3つのステップで、Webアプリケーション開発の基礎・基本テクニックをしっかりと習得できます。
内容は以下の通りです。
• Chapter1 イントロダクション
• Chapter2 ASP.NETの基礎
• Chapter3 基本サーバーコントロール
• Chapter4 データバインドコントロール
• Chapter5 データソースコントロール
• Chapter6 組み込みオブジェクト
• Chapter7 状態管理
• Chapter8 ASP.NET Identity
• Chapter9 リッチコントロール
• Chapter10 部品化技術
• Chapter11 Ajax開発
著者の山田 祥寛氏は、NECにてシステム企画業務に携わったのち、フリーライターに転身。「Microsoft MVP for Visual Studio and Development Technologies」の受賞経験を持ち、ほかに『独習Java 新版』『独習PHP 第4版』などの著作があります。
3. まとめ
今回は、
•【初心者・中級者向け】C#のおすすめ参考書・技術書
•【Unity開発向け】C#のおすすめ参考書・技術書
•【Xamarin向け】C#のおすすめ参考書・技術書
•【ASP.NET向け】C#のおすすめ参考書・技術書
という流れで、C#を学ぶのにおすすめの参考書を解説します。
C#は学習難易度がやや高めですが、汎用性が高く学習するメリットが大きい言語です。
自分のレベルや目的などに合わせて、適した参考書を選び、学習に活かしましょう。
今回ご紹介した内容を参考に、ぴったりの1冊を見つけてみてくださいね。