C#を習得するのにかなりの本を読みました。
その中でも最近特に一押しな一冊をご紹介します。
実戦で役立つC#プログラミングのイディオム/定石&パターン
井出秀行さんの著した実戦で役立つ Cプログラミングのイディオム/定石&パターンという本です。
かつては参考書やサンプルなどを見ながら自分流にアレンジを加えてコーディングしていました。
「なぜそうなるか」がいま一つ理解しきれていない中で「動けばOK」的な感じです。しかし時立つうちにそれでは通用しなくなってきました。
そんなときに見つけたのがこの参考書でした。今回はこの本を3回に分けてレビューします。
対象となるレベルは?
C#初心者が中級にレベルアップするのにもってこいのような気がします。
ということで、最低限C#の基本を知っている必要があります。一通りアプリを作ってみたことがある人ならばすんなり入っていけるでしょうね。
しかし、全くの初心者が読んでも意味がないかというとそんなことはありません。というより、初心者の方にこそまず初めの1冊として手元において頂きたい理由があります。それは、「スタイル、ネーミング、コメント」に関する指針や「変数、メソッド、クラス」に関する指針が取り上げられているからです。
今はまだ難しいと感じたとしても、いずれこの本が役立つときが来るはずです。懐に余裕があるのならば買って損はないでしょう。
個人的に役立った項目
「ラムダ式とLINQの基礎」
わかっているようでわかっていなかったラムダ式。そもそもラムダ式が必要とされる場面はどこか、かつてはどう書いていたか、現在はどうか等々・・・無理なく理解できるよう工夫されています。この章では基礎的な事が扱われていました。
「基本イディオム」
「初期化」の基本が解説されていて為になります。
変数、配列、リスト、Dictionary、オブジェクトなども初期化をどう扱えるか・・・等々。
例えば、Listを初期化すると同時に初期値を代入するという、「あれ、どう書くんだっけ?」となりそうな基本が扱われています。
「ディクショナリの操作」
珍しく、ディクショナリの説明に多くのページが費やされています。個人的にはこの章が一番参照頻度が高いように感じますね。今まではListで済ませていたものの多くが、Dictionaryで扱った方が良いことに気づきました。パフォーマンス的に少しでも早い処理が求められるケースなど、応用度抜群です。
「LINQを使いこなす」
次に個人的に多く参照した章が、このLINQの応用です。すでに取得しているデータを再利用する際、LINQの知識は不可欠。取り上げている内容としては、以下にあげるように基本的なものに加え複雑な応用編も取り上げています。
基本的なもの
- 最小値の要素を1つ取り出す
- 平均値以上の要素をすべて取り出す
- 重複を取り除く..等
複雑な応用編
- グルーピングしてグループごとに最大値をもつものを求める
- ToLookupメソッドでグルーピングする
- 入力ソースが複数の場合のLINQ
- 2つのシーケンスをグルーピングして結合する…等
今回はここまでです。次回は「EntityFramework」の章に関して取り上げてみたいと思います。
(書籍を実際に購入し、読んでみたうえでの感想です。あくまで個人の感想ですのでご理解ください。)
コメント