Following my previous question非常に長い機能の背後にある理論的根拠については、piece of codeに関する特定の質問をお伝えしたいと思います。これは、Linuxカーネルの機能であり、かなり長い(412行)複雑なものです(MCC index3の133)。基本的に、それは長くて入れ子になったスイッチのステートメントですこのカーネル関数を読みやすくすることはできますか? (学術研究に必要なアイディア)
率直に言って、私はこの混乱を改善する方法を考えることはできません。ディスパッチテーブルは巨大で非効率的であると思われ、サブルーチン呼び出しではコードの大部分をカバーするためには考えられない数の引数が必要になります。
この機能を効率的に失うことなく、より読みやすい方法で書き換えることができると思いますか?そうでない場合は、コードが読みやすいように見えますか?
言うまでもなく、私の研究に表示される回答は、ここと提出された論文の両方で全面的に評価されます。
Link to the function in an online source browser
あなたは非常に興味深い研究を進めています... –
このトピックに関するこれ以上の投稿は、コミュニティWiki、IMHOでなければなりません。 –
私は、カーネルコードを通常のアプリケーションコードとは非常に異なるものとして扱います。そして、特に変更や進化が必要ではない非常によく定義され、理解された概念を実装するコード。 – nos