Программирование экспериментов

Редактирование: для разъяснения существует безумный пограничный случай , где можно добраться null из конструктора класса, но откровенно я не думаю, что любой реальный код должен когда-либо , ожидают иметь дело с этим уровнем сумасшедших: What' s самый странный угловой случай you' ve замечен в C# или.NET? . Ко всему нормальный намерения: этого не произойдет.

нет, Вы не можете стать пустыми от конструктор класса (Thread, класс). Единственный случай, который я знаю того, где конструктор может (кажутся) возврат null Nullable - т.е.

object foo = new int?(); // this is null

Это - немного большая проблема с дженериками:

static void Oops() where T : new() {
    T t = new T();
    if (t == null) throw new InvalidOperationException();
}

static void Main() {
    Oops();
}

(конечно, существуют способы проверить/обработать, что сценарий, такой как : class)

Кроме этого, конструктор будет всегда или возвращать объект (или инициализировать структуру), или выдайте исключение.

8
задан Martijn Pieters 8 November 2013 в 16:28
поделиться

5 ответов

На предыдущей работе у нас был проект в SVN под названием Area51, в котором люди писали тестовый код. Правила были

  1. создавать пространство имен пакетов
  2. запускать через публичный статический void main
  3. добавлять комментарии через javadocs
  4. оставлять проект в компилируемом состоянии
  5. проект никогда не может зависеть от другого кода

В команде из трех человек это сработало нормально. Мы могли поместить туда код «что, если», и его было легко запустить через ide или командную строку

5
ответ дан 5 December 2019 в 10:04
поделиться

Когда я это делаю, они обычно относятся к проекту, поэтому они помещаются в подкаталог проекта (в моем случае обычно называемый «Investigations»). Это проверяется системой контроля версий вместе со всем остальным.

Результаты (где необходимо) попадают в тот же подкаталог «Investigations», что и код, использованный для получения результатов.

5
ответ дан 5 December 2019 в 10:04
поделиться
3
ответ дан 5 December 2019 в 10:04
поделиться

У меня есть папка, которую я называю OneOffCode

Это папка просто код, который я написал, либо изучаю новую технологию, пытаясь доказать концепцию, и т. д. . Это непроизводственный код.

Я обычно создаю резервную копию на промежуточном диске и перемещаю его с собой от работы к работе или с компьютера на компьютер.

2
ответ дан 5 December 2019 в 10:04
поделиться

Обычно я переключаюсь с C # на C ++. Итак, у меня есть тестовое консольное приложение для C # и C ++ в месте «песочницы» под контролем версий. Оба консольных приложения настраиваются одинаково, когда есть Main, который вызывает тест, который я пытаюсь сделать в то время. Когда я закончу, я сохраняю старые методы и комментарии и просто очищаю Main, когда наступает следующий тест.

Я не знаю, лучший ли он, но после его настройки это довольно быстро войти, получить ответы, выйти и сохранить все на следующий раз.

2
ответ дан 5 December 2019 в 10:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: