Showing 55 of 128 total issues
File Algorithm.cs
has 609 lines of code (exceeds 250 allowed). Consider refactoring. Open
Open
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Text;
File Storage.cs
has 600 lines of code (exceeds 250 allowed). Consider refactoring. Open
Open
using System;
using System.Collections.Generic;
using System.Data.SQLite;
using System.IO;
using System.Linq;
File GrasshopperInOut.cs
has 511 lines of code (exceeds 250 allowed). Consider refactoring. Open
Open
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Windows.Forms;
Class OptimizationWindow
has 36 methods (exceeds 20 allowed). Consider refactoring. Open
Open
public partial class OptimizationWindow
{
private void TpeDefaultButton_Click(object sender, EventArgs e)
{
TLog.MethodStart();
File Storage.cs
has 352 lines of code (exceeds 250 allowed). Consider refactoring. Open
Open
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
Class SqliteStorage
has 32 methods (exceeds 20 allowed). Consider refactoring. Open
Open
public class SqliteStorage : IOptunaStorage
{
private readonly Dictionary<int, Study.Study> _studies = new Dictionary<int, Study.Study>();
private readonly SQLiteConnectionStringBuilder _sqliteConnection;
private int _nextStudyId;
File SettingsTab.cs
has 321 lines of code (exceeds 250 allowed). Consider refactoring. Open
Open
using System;
using Optuna.Sampler;
using Serilog.Events;
Class JournalStorage
has 30 methods (exceeds 20 allowed). Consider refactoring. Open
Open
public class JournalStorage : IOptunaStorage
{
private readonly Dictionary<int, Study.Study> _studies = new Dictionary<int, Study.Study>();
private int _nextStudyId;
private int _trialId;
Method CreateBaseTables
has 90 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
private void CreateBaseTables()
{
var commands = new StringBuilder();
commands.Append("CREATE TABLE IF NOT EXISTS alembic_version(");
commands.Append(" version_num VARCHAR(32) PRIMARY KEY NOT NULL");
Class IOptunaStorage
has 28 methods (exceeds 20 allowed). Consider refactoring. Open
Open
public interface IOptunaStorage
{
// Basic study manipulation
int CreateNewStudy(StudyDirection[] studyDirections, string studyName);
void DeleteStudy(int studyId);
Method RunSingleOptimizeStep
has 79 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
private TrialGrasshopperItems RunSingleOptimizeStep(OptimizationHandlingInfo optInfo, Parameter[] parameter, int trialNum, DateTime startTime)
{
TLog.MethodStart();
dynamic trial;
int progress = trialNum * 100 / optInfo.NTrials;
Class Algorithm
has 26 methods (exceeds 20 allowed). Consider refactoring. Open
Open
public class Algorithm : PythonInit
{
public Parameter[] OptimalParameters { get; private set; }
public EndState EndState { get; private set; }
Class GrasshopperInOut
has 25 methods (exceeds 20 allowed). Consider refactoring. Open
Open
public class GrasshopperInOut
{
private readonly GH_Document _document;
private readonly List<Guid> _inputGuids;
private readonly GH_Component _component;
Method RunSingleOptimizeStep
has a Cognitive Complexity of 32 (exceeds 20 allowed). Consider refactoring. Open
Open
private TrialGrasshopperItems RunSingleOptimizeStep(OptimizationHandlingInfo optInfo, Parameter[] parameter, int trialNum, DateTime startTime)
{
TLog.MethodStart();
dynamic trial;
int progress = trialNum * 100 / optInfo.NTrials;
- Read upRead up
Cognitive Complexity
Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.
A method's cognitive complexity is based on a few simple rules:
- Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
- Code is considered more complex for each "break in the linear flow of the code"
- Code is considered more complex when "flow breaking structures are nested"
Further reading
Method SolveInstance
has 54 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
protected override void SolveInstance(IGH_DataAccess DA)
{
CheckVariablesInput(Params.Input[0].Sources.Select(ghParam => ghParam.InstanceGuid));
CheckObjectivesInput(Params.Input[1].Sources.Select(ghParam => ghParam.InstanceGuid));
CheckArtifactsInput(Params.Input[3].Sources.Select(ghParam => ghParam.InstanceGuid));
Method GetTrial
has 46 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
public Trial.Trial GetTrial(int trialId)
{
var trial = new Trial.Trial();
using (var connection = new SQLiteConnection(_sqliteConnection.ToString()))
{
Method Solve
has 44 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
public void Solve()
{
TLog.MethodStart();
EndState = EndState.Error;
OptimizeLoop.IsForcedStopOptimize = false;
Method SetInputSliderValues
has 44 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
private void SetInputSliderValues(List<VariableBase> variables)
{
TLog.MethodStart();
int i = 0;
Method CreateNewStudy
has 43 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
public int CreateNewStudy(StudyDirection[] studyDirections, string studyName)
{
long maxLength;
using (var connection = new SQLiteConnection(_sqliteConnection.ToString()))
{
Method StorageLoadTest
has 43 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
[Theory]
[InlineData(@"TestFile/sqlite.db", "sqlite")]
[InlineData(@"TestFile/journal.log", "log")]
public void StorageLoadTest(string path, string type)
{