Unityでのゲーム開発・VRアプリケーション開発やWindowsソフトウェア開発で使われることの多い「C#」。
入門書やネット上のサイトを利用して基礎を学んだのはいいものの、文法だけを理解していて応用テクニックを身につけていない方は多いのではでしょうか。
書き方はわかっていても、やりたいことができなかったら意味がないですよね?例えると「包丁の使い方はわかるけど料理は作れない」みたいなものです。
そこで役立つのが逆引きリファレンス。逆引きリファレンスを使えばやりたいこと(目的)からプログラムを見つけ出すことができ、どんな関数を使えばやりたい処理を実現できるのか簡単に調べることができます。
逆引きリファレンスを使うメリット
全く知らない関数を知ることができる
C#プログラミングにおいて、やりたいことを自分でプログラムできない理由のほとんどが.NET Frameworkに用意されている関数やクラスを知らないことです。
どれだけ基礎文法を身につけてアルゴリズムを書くことができても、便利な関数やクラスなどを知らなければ良いプログラムを書くことはできません。
- asyncを使った非同期処理
- レジストリ値の操作
- データベースの操作
- リッチテキストボックスの使い方
などなど。知っていたら簡単で便利だけど、知らないと難しい・わからないということがよくあります。
逆引きリファレンスは、
- ファイル操作
- ウェブサーバーからデータをダウンロードする
- スレッドの制御
など、やりたいことが目次になっているので、簡単に調べることができます。
入門書にはなかった新しい文法を知れる
逆引きリファレンスに掲載されているサンプルコードの中には、入門者には書いてなかった新しい記法が使われていることがあります。
ほとんどの場合、効率的なプログラムを書くのに役立つため、C#基礎スキルをさらに高めることができます。
特にC#でWindowsフォームアプリケーションを開発する場合、ロード時などのイベントが発生した時に行う処理を定義するイベントリスナー・ハンドラ関係の知識が結構必要ですが、C#の入門書では詳しく触れられていない傾向にあります。
ですのでそういったイベントリスナー関係も触れられている逆引きリファレンスがより役立つでしょう。
おすすめのC#逆引きリファレンス
ここからはおすすめのC#逆引きリファレンスを紹介していきます。逆引きリファレンスは基本的にC#の基礎を学んでいる(最低限入門書を軽く読んだ程度)前提の参考書なので、これから初めてC#を触るという方は先に入門書を購入することをおすすめします。
現場ですぐに使える! Visual C# 2019逆引き大全 500の極意
とにかくサンプルコードの数が欲しいのであれば、こちらが一番オススメです。現在出版されているC#の逆引きリファレンスの中ではもっともサンプルコードの数が多く、プログラムを見て学ぶのが好きという方に最適です。
また、入門書ではあまり理解せずに進めがちな名前空間やクラス・オブジェクトについても解説してくれているので、初めて逆引きリファレンスを購入するけど、C#プログラミングスキルが足りているか不安という方にもおすすめです。
C#逆引きレシピ
C#の基礎スキルは十分。ほかの言語のプログラミング経験があるので逆引きリファレンスを軸にC#スキルを習得したいという方に最適です。
変数の扱いなどC#の基礎文法がわかっていないと理解が難しい一冊ですが、逆に考えれば基礎が身についている方に重宝する内容となっています。
- 数値の0埋めや3桁区切りでカンマを挿入する
- スレッドプールを利用してバックグラウンド処理を実行したい
- Visual Studioのインテリセンスに自作クラスのヘルプを表示したい
などなど。そもそも初めて見る言葉や入門書では絶対触れられないようなテクニックもたくさん登場するので、実用的なサンプルコードを使って学習したい方に最適です。
おまけ:C#逆引きレシピ[Advanced]
今紹介した「C#逆引きレシピ」に掲載しきれなかった応用テクニックだけが詰まった逆引きリファレンスです。「C#逆引きレシピ」を読むならこちらも合わせて持っておくといいでしょう。
[改訂新版]C#ポケットリファレンス
こちらもC#の逆引きリファレンスの中では人気がある参考書です。比較的新しいバージョンのC#7の文法・記法・クラスの扱いに対応しているので、最新の機能を使った応用テクニックを身につけるのに最適です。
C#の新しい言語仕様は便利ですが入門書は触れられないことが多いので、開発言語にC#が採用されているUnityでプログラミングをする人にはかなり役立つはずです(UnityではC#が採用されています)。
実用性重視なら「C#逆引きレシピ」がおすすめ
C#の基礎知識が身に付いていて、実際の開発で応用できるテクニックをたくさん知りたいと言うのであれば2番目に紹介した「C#逆引きレシピ」が一番おすすめです。
- クラス名からネームスペース(名前空間)を省略したい
- 日付の大小を比較したい
- 読み取り専用のコレクションを作成したい
- Zipファイルの圧縮・解凍がしたい
- ウェブサーバーに非同期でアクセスしたい
などなど。C#の他の逆引きリファレンスと比べるとかなり実用的ですぐに応用できるサンプルコードが網羅されているため、C#プログラミングの応用テクニックやできることを増やしたいという方に一番おすすめです。
拡張版の「C#逆引きレシピ[Advanced]」も合わせて持っておくとC#スキルをかなり伸ばせるでしょう。