• Как продвинуть сайт на первые места?
    Вы создали или только планируете создать свой сайт, но не знаете, как продвигать? Продвижение сайта – это не просто процесс, а целый комплекс мероприятий, направленных на увеличение его посещаемости и повышение его позиций в поисковых системах.
    Ускорение продвижения
    Если вам трудно попасть на первые места в поиске самостоятельно, попробуйте технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Если ни один запрос у вас не продвинется в Топ10 за месяц, то в SeoHammer за бустер вернут деньги.
    Начать продвижение сайта


  • Иллюстрированный самоучитель по практике программирования

    Замеры времени и профилирование

    Автоматизируйте замеры времени. В большинстве систем существуют команды, позволяющие выяснить, сколько времени работала программа. В Unix такая команда называется time:

    Иллюстрированный самоучитель по практике программирования › Производительность › Замеры времени и профилирование

    Эта команда запускает программу и возвращает три числа, означающих время в секундах: время real – физическое время, израсходованное до завершения работы программы; время user – время процессора, потраченное на исполнение самой программы; время sys – время, потраченное на программу операционной системой. Если в вашей системе есть аналогичная команда, используйте ее – числа будут более информативными и надежными, и делать отсчеты будет проще, чем при использовании секундомера.

    Ведите подробные записи. При работе над программой – внесении модификаций и/или проведении измерений – у вас накопится огромное количество данных, в которых вам будет трудно разобраться по памяти уже через день-два. (Какая именно версия работает на 20% быстрее?) Многие технологии, которые мы обсуждали в главе о тестировании, могут быть адаптированы и к измерениям времени и улучшению производительности. Используйте компьютер для запуска набора тестов и измерения времени их работы, а самое главное – используйте регрессивное тестирование, чтобы удостовериться в том, что "улучшения" производительности не нарушили корректности программы.

    Если в вашей системе нет команды time или вы хотите замерить время работы отдельно взятой функции, не так трудно создать себе оснастку для таких замеров – по аналогии с тестовой оснасткой. В С и C++ существует стандартная функция clock, которая сообщает, сколько процессорного времени программа использовала до текущего момента. Ее можно вызвать перед интересующей вас функцией и после нее и таким образом вычислить время ее исполнения процессором:

    Иллюстрированный самоучитель по практике программирования › Производительность › Замеры времени и профилирование

    Масштабирующий коэффициент CLOCKS_PEfi_SEC характеризует разрешение таймера, возвращаемое clock. Если функция выполняется за доли секунды, запустите ее в цикле, но (если измерения должны быть особо точными) не забудьте компенсировать затраты времени на сам цикл:

    Иллюстрированный самоучитель по практике программирования › Производительность › Замеры времени и профилирование

    В Java функции класса Date выдают текущее системное время, которое приблизительно равно времени, использованному процессором:

    Иллюстрированный самоучитель по практике программирования › Производительность › Замеры времени и профилирование

    Значение, возвращаемое getTime, измеряется в миллисекундах.

    Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.