Ефективність табуляції та пробілів в HTML

2 хв. читання

Як ви робите відступи у вашій розмітці? З допомогою табуляції чи пропуску? Невже це важливо для продуктивності? Давайте проведемо експеримент.
Розглянемо сторінку, яка створює список з 50-ти предметів:

    <ul>
        @for (int i = 0; i < 50; i++)
        {
            <li>The count is @i</li>
        }
    </ul>

Код генерує довгий список з li елементів і зберігає відступи з допомогою параметрів редактора. За замовчуванням у багатьох редакторах є пробіли й tab, розміром 4.

З пробілами виглядає так:

Ефективність табуляції та пробілів в HTML

з табами так:

Ефективність табуляції та пробілів в HTML

Ясно видно, що відступ займає 4 знаки, а таб - 1. Якщо ми порівняємо загальний розмір файлу у двох варіантах, ось що ми отримаємо:

Ефективність табуляції та пробілів в HTML

Ми зберігаємо 18%!

Це, однак, не показує справжню картину веб-сторінки. Всі сучасні веб-сервери використовують стиснення у вигляді GZip або Deflate перед подачею HTML-коду в браузер. Отже, давайте подивимося на цифри після GZip:

Ефективність табуляції та пробілів в HTML

При використанні GZIP-стиснення, економія становить всього 1,5%. Але це все- таки щось.

Але знову ж, це не все, тому що деякі веб-розробники мінімізують HTML шляхом видалення зайвих пробілів, непотрібних лапок та ін.

Так що давайте мінімізуємо HTML і подивимося, які результати ми отримаємо:

Ефективність табуляції та пробілів в HTML

Як видно, мінімізація не впливає на розмір файлу при стисненні.

Підводимо підсумки

Залежно від можливостей вашого сервера, ось невеликий список того, що можна зробити, ґрунтуючись на вищенаведеній інформації:

  • Мініфікація - не має ефекту (різниці)
  • Використовуємо стиснення без мініфікації - не має ефекту
  • Не стискаємо і не використовуємо мініфікацію - Табуляція
Помітили помилку? Повідомте автору, для цього достатньо виділити текст з помилкою та натиснути Ctrl+Enter
Codeguida 5.6K
Приєднався: 8 місяців тому
Коментарі (0)

    Ще немає коментарів

Щоб залишити коментар необхідно авторизуватися.

Вхід / Реєстрація