Claude Fable 5 が教えてくれた FastEnum の高速化テクニック (1)
DRANK

数日前、@neuecc 先生が Claude Fable 5 を利用したパフォーマンスチューニング手法を投稿してました。それを読んで「できるところから真似してみよう!」と思い立ち、早速やってみました。 2 日ほど Fable をぶん回してみたら出るわ出るわw 「.NET 界最速の enum ユーティリティ」を狙ってここまでやってきたけれど、まだまだやれることがあったんですね...(ぴえん。ということで (?) ひとつの記事で解説するにはだいぶ長くなってしまうので、記事を分離してちょっとずつ書いていこうと思います。初回は文字列のハッシュ値生成の独自実装について解説していきます。FastEnum では、.TryParse() や .IsDefined(string) の内部実装のために文字列から値を Lookup するための辞書を自作しています。.NET 標準の辞書だとだいぶ遅いので自作もやむなし。このとき辞書内で文字列のハッシュ値を取得する必要がありますが、ここに独自のハッシュ関数を実装することで高速化したというお話です。 Case Sensitive な文字列に対する実装について。これは非常にシンプルで string.GetHashCode() を呼び出しているだけでした。CaseSensitive.GetHashCode() : 改善前public static class …

zenn.dev
Related Topics: AI AI Text Generator