Не уверен что «это» будет хабраэффектом, т.к. приглашения рассылались определенному, ограниченному кругу лиц, соответственно логично выпустить столько же кодов доступа (один к одному).
Получил приглашение на video.mos.ru, но заходя по ссылке из письма (http://special.habrahabr.ru/dit/) для генерации логина/пароля и вводе своего email, выдается сообщение об ошибке — «К сожалению на данный момент коды закончились.»
А зачем при удаленном пополнении отдельно приходить к «автомату» и прикладывать карту, записывать на нее что-то, почему нельзя сделать что б при первом проходе это делалось автоматом?
смотрится жутко. Регексы как минимум должны создаваться один раз и быть прекомпилены в случае многократного использования.
Публичные переменные в рамках класса — тоже не супер. Для этого придумали auto-property.
Размер функции в несколько страниц — плохо. Постарайтесь разбить на осмысленные части.
Поменьше копи-паста кода:
Double b = Convert.ToDouble(stack.Pop().Value);
Double a = Convert.ToDouble(stack.Pop().Value);
<source>
Встречается в почти каждом case.
Но тогда надо иметь ввиду, что фабрика может быть вызвана больше 1 раза для одного ключа (из разных потоках, конечно) —
TValue resultingValue;
if (TryGetValue(key, out resultingValue))
return resultingValue;
TryAddInternal(key, valueFactory(key), false, true, out resultingValue);
Это не усложнение, а скорее облегчение, при создании мы не знаем сколько элементов в очереди (в общем случае). А нам необходимо будет динамически выделять новую память. Для реализации можно пойти 2-мя путями:
1. копировать имеющиеся данные (не выбранные) каждый раз в новый массив (аля, List). Здесь потребуется лок на всю структуру и как следствие — очень сильно «просядем» по производительности.
2. создать новый сегмент и в него писать новые элементы, а сегменты с выбранными данными — удалять. Здесь без локов и существенно больше производительность.
Например,
смотрится жутко. Регексы как минимум должны создаваться один раз и быть прекомпилены в случае многократного использования.
Публичные переменные в рамках класса — тоже не супер. Для этого придумали auto-property.
Размер функции в несколько страниц — плохо. Постарайтесь разбить на осмысленные части.
Поменьше копи-паста кода:
1. копировать имеющиеся данные (не выбранные) каждый раз в новый массив (аля, List). Здесь потребуется лок на всю структуру и как следствие — очень сильно «просядем» по производительности.
2. создать новый сегмент и в него писать новые элементы, а сегменты с выбранными данными — удалять. Здесь без локов и существенно больше производительность.