短いコードを速くする努力とは
まずは短く。次いで速く。
そんなお話。
このブログにも実証コードはそのうち掲載していきたいところですが、当分はMicrosoftのリファレンスソースコードにリンクする事を主体としようと考えています。
多くの現場で経験してきた事ですが、使っているものに対する理解は多いほど引き出しが増えるものです。リファレンスコードは宝箱で玉石混交です。目から鱗のコードに出会うこともあれば、目を疑う実装に遭遇もします。
私自身は、公開されているコードを読んだ程度のところもあれば、IL分析までしたものもあれば、実際の機械語で分析したものもあります。
開発という全般を語ると全コードの8割以上は最短で最も読みやすいコードを心がけるべきです。そして残りの部分は、その最短のコードが最速で動く事を心がけることです。
Microsoftは自らのコードにLINQを用いていません。理由は古式な記述より遅いからです。しかし、LINQを可能な限り小さいまま速くする努力を怠っていない事を私達は読む事ができるようになっています。
ところで、公開されているコードだけでは大事なところがexternになってて実体が無く、ところどころ難儀しています。あの部分はどこかに置いてないのでしょうか。