oclint規則 索引

Rule Index 規則索引

OCLint 0.10.3 includes 71 rules.
  1. Basic 基本
    1. 條件位運算 BitwiseOperatorInConditional
    2. 錯誤Null檢查 BrokenNullCheck
    3. 錯誤Nil檢查 BrokenNilCheck
    4. 特殊判斷檢查 BrokenOddnessCheck
    5. 可以合併if語句 CollapsibleIfStatements
    6. 恆定條件運算 ConstantConditionalOperator
    7. IF條件恆定 ConstantIfExpression
    8. 無效代碼 DeadCode
    9. 雙重否定 DoubleNegative
    10. For應該轉換爲While ForLoopShouldBeWhileLoop
    11. Goto語句 GotoStatement
    12. 混亂的增量 JumbledIncrementer
    13. 錯位的Null檢查 MisplacedNullCheck
    14. 錯位的Nil檢查 MisplacedNilCheck
    15. 多餘運算符 MultipleUnaryOperator
    16. Finally包含Return ReturnFromFinallyBlock
    17. Finally拋出異常 ThrowExceptionFromFinallyBlock
  2. Cocoa
    1. 重寫isEqual必須重寫Hash MustOverrideHashWithIsEqual
    2. 必須調用超類 MustCallSuper
    3. 驗證禁止引用 VerifyProhibitedCall
    4. 驗證Protected方法 VerifyProtectedMethod
    5. 子類必須實現 SubclassMustImplement
  3. Convention 約定
    1. 循環最後避免分支 AvoidBranchingStatementAsLastInLoop
    2. BaseClassDestructorShouldBeVirtualOrProtected
    3. 全覆蓋的Switch不需要默認值CoveredSwitchStatementsDontNeedDefault
    4. default應該在Witch語句最後 DefaultLabelNotLastInSwitchStatement
    5. 虛擬類的析構函數 DestructorOfVirtualClass
    6. 邏輯倒置 InvertedLogic
    7. Switch語句缺少Break MissingBreakInSwitchStatement
    8. Switch中非case NonCaseLabelInSwitchStatement
    9. IvarAssignmentOutsideAccessorsOrInit
    10. 參數值重置 ParameterReassignment
    11. 使用短判斷 UseEarlyExitsAndContinue
    12. Switch缺少Default SwitchStatementsShouldHaveDefault
    13. Switch分支語句太少 TooFewBranchesInSwitchStatement
  4. Design 設計
    1. 避免虛擬方法的默認參數 AvoidDefaultArgumentsOnVirtualMethods
    2. 避免私有靜態成員 AvoidPrivateStaticMembers
  5. Empty 空
    1. 空Catch語句 EmptyCatchStatement
    2. 空Do While EmptyDoWhileStatement
    3. 空else語句 EmptyElseBlock
    4. 空Finally語句 EmptyFinallyStatement
    5. 空for語句 EmptyForStatement
    6. 空IF語句 EmptyIfStatement
    7. 空Switch EmptySwitchStatement
    8. 空Try語句 EmptyTryStatement
    9. 空While語句 EmptyWhileStatement
  6. Migration
    1. ReplaceWithBoxedExpression
    2. ReplaceWithContainerLiteral
    3. ReplaceWithNumberLiteral
    4. ReplaceWithObjectSubscripting
  7. Naming 命名
    1. 變量名過長 LongVariableName
    2. 變量名過短 ShortVariableName
  8. Redundant 沉餘
    1. 多餘條件運算 RedundantConditionalOperator
    2. 多餘IF語句 RedundantIfStatement
    3. 多餘本地變量 RedundantLocalVariable
    4. 多餘Nil檢查 RedundantNilCheck
    5. 多餘的Else語句 UnnecessaryElseStatement
    6. 釋放內存時多餘的Null檢查 UnnecessaryNullCheckForDealloc
    7. 無用的括號 UselessParentheses
  9. Size 大小
    1. 高[圈複雜度]HighCyclomaticComplexity
    2. 類太長 LongClass
    3. 行太長 LongLine
    4. 方法太長 LongMethod
    5. 高[有效代碼行]方法 HighNcssMethod
    6. 塊嵌套太深 DeepNestedBlock
    7. 高Npath複雜性 HighNPathComplexity
    8. 字段太多 TooManyFields
    9. 方法太多 TooManyMethods
    10. 參數太多 TooManyParameters
  10. Unused 無用
    1. 無用本地變量 UnusedLocalVariable
    2. 無用的方法參數 UnusedMethodParameter
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章