mirror of
https://github.com/github/codeql.git
synced 2025-12-29 23:26:34 +01:00
38 lines
1.3 KiB
XML
38 lines
1.3 KiB
XML
<!DOCTYPE qhelp PUBLIC
|
|
"-//Semmle//qhelp//EN"
|
|
"qhelp.dtd">
|
|
<qhelp>
|
|
<overview>
|
|
<p>This metric measures the number of lines of code in each file. The value excludes docstrings, comments and
|
|
blank lines.</p>
|
|
|
|
<p>Organizing source into very large files is not recommended because:</p>
|
|
<ul><li>it can be difficult to understand and maintain the code, even with good support from
|
|
development tools</li>
|
|
<li>it increases the risk that multiple developers will work on the same file at once, and increases the
|
|
incidence of merge conflicts</li>
|
|
<li>it may be a symptom of weak code organization, where many different features are handled by functions in
|
|
a single file.</li>
|
|
</ul>
|
|
|
|
</overview>
|
|
<recommendation>
|
|
|
|
<p>The solution depends on the underlying cause:</p>
|
|
<ul><li>if individual classes or functions are too large then they should be refactored into smaller
|
|
modules</li>
|
|
<li>if the class contains many classes or functions, they should be
|
|
moved to their own modules (sometimes in a subsidiary module, where appropriate)</li>
|
|
<li>if the file has been automatically generated by a tool, then it should be left alone.</li>
|
|
</ul>
|
|
|
|
</recommendation>
|
|
<references>
|
|
|
|
<li>M. Fowler, <em>Refactoring</em>. Addison-Wesley, 1999.</li>
|
|
<li>Wikipedia: <a href="https://en.wikipedia.org/wiki/Code_refactoring">Code refactoring</a>.</li>
|
|
|
|
|
|
</references>
|
|
</qhelp>
|