Я видел очень оптимизированный код, выполненный очень медленно, и неоптимизированный код, выполненный быстро, и поэтому компиляторы знают, как компьютер хочет работать, и разработчики компилятора фокусируются на легком для оптимизации кода сначала.
может случиться так, что Ваши 150 алгоритмов строки компилируют во что-то, что это намного быстрее во время выполнения, чем Ваши 20 версий строки. Ваши 20 алгоритмов строки могут закончить тем, что были медленнее, потому что компилятор не знает, как оптимизировать его.
я также предположил бы, что Вы могли бы хотеть поместить, если еще версия в блоке комментария выше версии алгоритма с 20 строками (или наоборот) так, чтобы специалисты по обслуживанию могли понять то, что Ваша сложная версия пытается сделать. Наличие их обоих в коде облегчает тесту производительности два также (и как только Вы ввели их обоих в, нет никакой причины удалить другой). Это будет также допускать легкую миграцию на другие языки/платформы/компиляторы продвижение. Вы не можете ожидать его, но если код будет работать, это, вероятно, будет жить на в течение многих десятилетий и видеть много различных компиляторов и платформ.
Я все еще изучаю терминологию, и мне нужно было ее разъяснить. Если кому-то из вас понадобится то же самое ...
В качестве примера, если:
TestSite
BusinessLogic
PageAuthorization
в файле Web.config ...
<configuration>
<system.web>
<httpModules>
<add type= "BusinessLogic.PageAuthorization, TestSite" name="PageAuthorization" />
</httpModules>
</system.web>
</configuration>
В моем случае мне пришлось пометить свой класс с помощью IHttpModule
. Определение класса будет выглядеть так:
public class PageAuthorization : IHttpModule
По умолчанию Visual Studio помещает «использование» в начало файлов. Однако рекомендуемый подход заключается в помещении операторов using внутри пространства имен. Даже stylecop от MS улавливает это и говорит, что использование VS по умолчанию неверно.
Оба метода работают нормально.
Правило StyleCop гласит: Размещение нескольких элементов пространства имен в одном файле обычно плохая идея, но если и когда это готово, рекомендуется разместить все using директивы в каждом из элементы пространства имен, а не глобально вверху файла. Эта будет ограничивать пространства имен плотно, и также поможет избежать поведение, описанное выше.
Важно отметить, что когда код был написан с использованием директив размещен вне пространства имен, забота следует принимать во внимание при перемещении этих директивы в пространстве имен, чтобы убедитесь, что это не меняет семантика кода. Как объяснено выше, разместив директивы using-alias внутри элемента пространства имен позволяет компилятор на выбор конфликтующие типы, которые будут не происходит, когда директивы размещены вне пространства имен.
Вот несколько ссылок для дальнейшего изучения:
Значение типа
имеет формат {Class}, {assembly}
.
Таким образом, в вашем случае это должно быть MyHttpModule, MyDllName
Где MyDllName
- имя скомпилированной библиотеки DLL.