実は、Unity以外ではC#をあまり書かないので、オイラはC#の言語仕様についてあまり詳しくないのです。Unityで使う以外でC#の言語仕様について知る機会が無いオイラのような人、案外いるんじゃなかろうか。
オイラは初めて学んだプログラミング言語がJavaだったので、Unity開発の際はJavaのような感覚でC#コーディングしていた。
その後、Unityの勉強会でラムダ式とかLinqとか言われて知らないことが沢山あることに気づいたのでした。
今更ながら、Unityの知識を使ってC#の言語仕様の特徴について学べる良い資料を見つけた。↓
こちらの資料は少し古いけど、C#の基本的な内容なので、すぐに廃れるような情報ではない。学ぶというほど詳細に突っ込んでいるわけでもないけど。
UnityのC#環境も.NET4.6, C#6へ対応が進んでいる。(今はまだEditorだけ)
http://tsubakit1.hateblo.jp/entry/2016/10/05/221135
今まではMono固有の仕様を意識して書かなきゃいけなかったUnityプログラミングも、普通のC#, .NETと変わらない環境になれば、知識の転用の幅が広がるし、学習コストも下がるね。
ここ最近は、オブジェクト指向言語の恩恵を受けるほど長期的に付き合うコードを全然書いていないのだけど、学生の頃にオブジェクト指向というものに触れておいて良かったと思うことも結構ある。
自分の頭の中にもともと全く存在していなかった考え方を習得するには長い時間が必要だから。
スポンサーリンク