Предлагается программы, которые проводят комплекс действий с некоторым алгоритмом, писать как-то так:
class Program
{
[Show("some plot")]
void ShowPlot(LogData) { //paints plots; }
[Assemble]
TSystem Assemble() { creates system and returns it; }
[Run]
void Run(TSystem factory) { runs the experiment; }
public static void Main()
{
new PrimeExperimentWindow(new Program()).Run();
}
}
PrimeExperimentWindow проходит по атрибутам,и создает окошко с кнопками, которое позволяет или запустить эксперимент (причем с системами, которые собираются разными сборщиками и позволяют запускать эксперимент на реальном роботе или эмулятору или эмуляторе с разными параметрами), смотреть результаты ранее проведенных экспериментов, или, в перспективе, отлаживать эти эксперименты.
Сейчас это достигается кучей проектов на один эксперимент, что очень неудобно, или ручной правкой кода с указанием того, что мы, собственно, хотим.
Предлагается программы, которые проводят комплекс действий с некоторым алгоритмом, писать как-то так:
class Program
{
[Show("some plot")]
void ShowPlot(LogData) { //paints plots; }
[Assemble]
TSystem Assemble() { creates system and returns it; }
[Run]
void Run(TSystem factory) { runs the experiment; }
public static void Main() { new PrimeExperimentWindow(new Program()).Run(); }
}
PrimeExperimentWindow проходит по атрибутам,и создает окошко с кнопками, которое позволяет или запустить эксперимент (причем с системами, которые собираются разными сборщиками и позволяют запускать эксперимент на реальном роботе или эмулятору или эмуляторе с разными параметрами), смотреть результаты ранее проведенных экспериментов, или, в перспективе, отлаживать эти эксперименты.
Сейчас это достигается кучей проектов на один эксперимент, что очень неудобно, или ручной правкой кода с указанием того, что мы, собственно, хотим.