public static ComputingCore InitComputingCore() { var data_cell_repository = new DataCellRepository(); var function_repository = new FunctionRepository(data_cell_repository); var command_repository = new CommandRepository(); var control_execution_service = new ControlExecutionService(); var execution_manager = new ExecutionManager( new List <IExecutionService>() { new BasicExecutionService(), control_execution_service, new CSharpExecutionService(function_repository) } ); var job_manager = new JobManager(execution_manager); var preparation_command_service = new PreparationCommandService(data_cell_repository, function_repository); var data_flow_logics_service = new DataFlowLogicsService(job_manager, preparation_command_service, data_cell_repository); control_execution_service.SetDataFlowLogicsService(data_flow_logics_service); var computing_core = new ComputingCore( function_repository, data_cell_repository, command_repository, data_flow_logics_service ); function_repository.Add(BasicFunctionModel.AllMethods.Select(x => (Function)x.Value.BasicFunction).ToList()); return(computing_core); }