Änderungen von Dokument Checkstyle u. Statische Codeanalyse

Zuletzt geändert von Celina Bock am 2025/09/17 10:43

Von Version 1.5
bearbeitet von Celina Bock
am 2025/07/08 09:31
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 1.4
bearbeitet von Celina Bock
am 2025/07/08 09:23
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Inhalt
... ... @@ -1,167 +1,1 @@
1 -Für die Programmierfächer aus Semester 1 und 2 wurde Checkstyle eingeführt. Bei der Aufgabenerstellung muss der Haken bei "statische Codeanalyse" gesetzt werden. Späteres Hinzufügen von Checkstyle ist umständlich (Export in einen anderen Kurs,
2 -
3 -
4 -
5 -<?xml version="1.0"?>
6 -<!DOCTYPE module PUBLIC "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN" "https://checkstyle.org/dtds/configuration_1_3.dtd">//
7 -
8 -
9 -<module name="Checker">
10 - <!--    artemis conifg -->
11 - <property name="severity" value="warning" />
12 -
13 - <property name="fileExtensions" value="java" />
14 -
15 - <!-- See https://checkstyle.org/filefilters/beforeexecutionexclusionfilefilter.html -->
16 -
17 - <module name="BeforeExecutionExclusionFileFilter">
18 - <!-- Filtert alle Dateien, die nicht SortedArray heißen -->
19 - <property name="fileNamePattern" value="^(?!.*([
20 -/])?(SortedArray)\.java$).*" />
21 - </module>
22 -
23 - <!--    gdp checks-->
24 - <module name="TreeWalker">
25 - <property name="tabWidth" value="4" />
26 - <module name="JavadocMethod">
27 - <property name="accessModifiers" value="public" />
28 - </module>
29 - <module name="JavadocStyle">
30 - <property name="scope" value="public" />
31 - <property name="checkFirstSentence" value="false" />
32 - </module>
33 - <module name="LocalFinalVariableName" />
34 - <module name="LocalVariableName" />
35 - <module name="MemberName" />
36 - <module name="MethodName" />
37 - <module name="PackageName">
38 - </module>
39 - <module name="ParameterName" />
40 - <module name="StaticVariableName" />
41 - <module name="TypeName">
42 - </module>
43 - <module name="AvoidStarImport">
44 - </module>
45 - <module name="IllegalImport" />
46 - <module name="RedundantImport" />
47 - <module name="UnusedImports" />
48 - <module name="MethodLength">
49 - <property name="max" value="75" />
50 - </module>
51 - <module name="ParameterNumber">
52 - </module>
53 - <module name="EmptyForIteratorPad">
54 - </module>
55 - <module name="MethodParamPad">
56 - </module>
57 - <module name="NoWhitespaceAfter">
58 - <property name="tokens" value="LNOT,DOT,BNOT,DEC,UNARY_MINUS,UNARY_PLUS,INC,ARRAY_INIT" />
59 - <property name="severity" value="info" />
60 - </module>
61 - <module name="NoWhitespaceBefore">
62 - <property name="allowLineBreaks" value="true" />
63 - <property name="tokens" value="SEMI,DOT,POST_DEC,POST_INC" />
64 - <property name="severity" value="info" />
65 - </module>
66 - <module name="OperatorWrap">
67 - </module>
68 - <module name="ParenPad">
69 - </module>
70 - <module name="TypecastParenPad">
71 - </module>
72 - <module name="WhitespaceAfter">
73 - <property name="tokens" value="COMMA" />
74 - <property name="severity" value="info" />
75 - </module>
76 - <module name="WhitespaceAround">
77 - <property name="severity" value="info" />
78 - </module>
79 - <module name="AvoidNestedBlocks">
80 - </module>
81 - <module name="EmptyBlock">
82 - </module>
83 - <module name="LeftCurly">
84 - </module>
85 - <module name="NeedBraces">
86 - <property name="severity" value="info" />
87 - </module>
88 - <module name="EmptyStatement">
89 - </module>
90 - <module name="EqualsHashCode">
91 - </module>
92 - <module name="HiddenField">
93 - <property name="ignoreConstructorParameter" value="true" />
94 - <property name="ignoreSetter" value="true" />
95 - </module>
96 - <module name="InnerAssignment">
97 - </module>
98 - <module name="MissingSwitchDefault" />
99 - <module name="SimplifyBooleanExpression">
100 - <message key="simplify.expression" value="Der Ausdruck sollte vereinfacht werden." />
101 - </module>
102 - <module name="SimplifyBooleanReturn">
103 - </module>
104 - <module name="ArrayTypeStyle">
105 - </module>
106 - <module name="TodoComment">
107 - </module>
108 - <module name="UpperEll">
109 - </module>
110 - <module name="ReturnCount">
111 - <property name="max" value="8" />
112 - </module>
113 - <!-- <module name="MagicNumber">
114 - <metadata name="net.sf.eclipsecs.core.comment"
115 - value="-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9"/>
116 - <property name="ignoreNumbers" value="-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9"/>
117 - <property name="severity" value="info"/>
118 - </module> -->
119 - <module name="ReturnCount">
120 - <property name="max" value="4" />
121 - <message key="return.count"
122 - value="Möglichst nicht mehr als {1,number,integer} return-Anweisungen." />
123 - </module>
124 - <module name="JavadocType">
125 - <property name="authorFormat" value=".{2,}" />
126 - <message key="type.tagFormat" value="Autor sollte mindestens zwei Buchstaben haben" />
127 - </module>
128 - <module name="JavadocVariable">
129 - <property name="scope" value="public" />
130 - </module>
131 - <module name="ConstantName">
132 - <message key="name.invalidPattern"
133 - value="Nur Großbuchstaben, Zahlen und Unterstriche für Konstanten verwenden." />
134 - </module>
135 - <module name="ModifierOrder">
136 - </module>
137 - <module name="CyclomaticComplexity">
138 - <property name="max" value="20" />
139 - </module>
140 - <module name="NPathComplexity">
141 - <property name="max" value="80" />
142 - </module>
143 - <module name="RightCurly">
144 - </module>
145 - </module>
146 - <module name="LineLength">
147 - <property name="max" value="140" />
148 - <property name="fileExtensions" value="java" />
149 - <property name="ignorePattern"
150 - value="^package.*|^import.*|a href|href|http://|https://|ftp://" />
151 - </module>
152 -
153 -
154 - <module name="JavadocPackage" />
155 - <module name="FileLength">
156 - <property name="max" value="1000" />
157 - </module>
158 - <module name="FileTabCharacter">
159 - <property name="severity" value="info" />
160 - </module>
161 - <module name="RegexpHeader">
162 - <property name="header" value="^package" />
163 - <message key="header.mismatch" value="Angabe eines Packages fehlt." />
164 - </module>
165 -
166 -</module>
167 -
1 +Für die Programmierfächer aus Semester 1 und 2 wurde Checkstyle eingeführt. Bei der Aufgabenerstellung muss der Haken bei "statische Codeanalyse" gesetzt werden. Späteres Hinzufügen von Check