Вхід Реєстрація
Реклама
Ваше рекламне місце
Забронюйте цей слот без конкуренції на обраний період.
Купити рекламу →
Логотип телеграм спільноти - Radio Kottans
Додано 06 гру 2025

Radio Kottans

@radio_kottans
Кількість підписників: 1 566
Фото: 126
Відео: 13
Посилання: 710
Опис:
Share the knowledge (c) Канал корисних посилань та новин зі світу програмування від спільноти розробників "Котани". https://kottans.org/ Бажаєш підтримати? https://www.patreon.com/kottans
Джерело

Radio Kottans | Вітаємо, Kottans.Новий рік починається із гарних новин для світу фронт...

Логотип телеграм спільноти - Radio Kottans Radio Kottans @radio_kottans
886 Охват/переглядів 2026-02-10 11:50 Повідомлення №847
Вітаємо, Kottans.Новий рік починається із гарних новин для світу фронтенду та спільноти ECMAScript. Наприкінці січня 2026 відбувся реліз останнього мінорного апдейту Babel 7 версії, життєвий цикл якої тривав із середини 2018 і до початку 2026. І разом із цим було оголошено, що Babel 8 отримав статус - Release Candidate 1, тобто вийшов на фінішну пряму. Про шалені бенефіти, які принесе Babel 8 для web- та mobile-застосунків, поговоримо окремо. А сьогодні хочемо розібратися, з чим ми живемо у Babel 7 і чому це вже не завжди ок.Babel - це невидимий фундамент майже кожного фронтенд проєкту. Навіть якщо ви ніколи не відкривали babel.config.json, він вже працює у вашому стеку через React, Vite, Next.js, Jest або Typescript. Тому зміни у Babel впливають не лише на “збірку”, а й на:- розмір бандлу- швидкість старту застосунку- продуктивність коду в рантаймі- можливості відмовитися від старих браузерівУ 2014 році виходить специфікація ES6(ES2015) із новими фічами: стрілочні функції, класи та інше, але жоден браузер їх не розуміє. Транспілятор “6to5”, який написав 17-річний австралійський розробник Себастьян Маккенсі, трансформував код із ES6 у ES5 (стандарт 2009 року) і обіцяв, що цей код буде працювати будь-де, а особливо у Internet Explorer 11.У чому проблема Internet Explorer 11? Він вийшов у 2013 році і на відміну від інших браузерів IE11 не оновлювався автоматично. У ті часи Chrome випускав апдейти кожні 4-6 тижнів. Корпорації ж використовували Windows 7,8,10 де IE11 був стандартним браузером, і крім того використовували спеціалізовані застосунки, написані спеціально під IE11. За таких умов авдиторія IE11 зростала, а у 2015-2017 роках 20%-30% усього трафіку йшло через цей стабільний, але старий браузер.Тому “6to5”, який згодом об'єднався із паралельним проектом “esnext” і вирішив змінити назву на “Babel”, що вирішував проблему кросбраузерності коду, став фундаментов майже всього фронтенду, що ми маємо. Babel оцінив та почав активно використовувати Facebook при запровадженні та імплементації JSX (React, React Native), а потім і Vue, Angular, Solid.За даними State of JS 2023, Babel у складі бандлерів використовують у 92% усіх проектів.І ось чому, станом на 2015-2020:- Internet Explorer 11 (все ще використовується у корпораціях) не розуміє class, async/await, ??, #private, arrow functions- Safari 10 — часткова підтримка ES2015- Chrome 45 — є класи, але немає приватних полів- Firefox 52 — є async/await, але немає optional chainingТе що було порятунком у 2015-2018, сьогодні вже рудімент або навіть баласт. В середині лютого буде вже три роки, як Microsoft замінила IE11 на Edge, а IE11 взагалі не підтримує у більшості версій Windows 10. Сучасні браузери підтримують 95% синтаксису ES2020+, а Babel 7 за інерцією продовжує транспілювати код у ES5, ніби ми живемо за часів давніх богів, воєвод та царів IE11.То хто за це все платить? Хто страждає і кому боляче?Коротка відповідь - користувач. Найбільше від агресивноЇ транспіляції страждають:- користувачі із слабкими пристроями- мобільні браузери з повільним CPU- великі SPA із довгом Time to Interactive- команди, які роками не чіпали конфіг BabelОсь таке історичне і практичне значення має ця бібліотека. У наступній статті розберемо, як Babel трансформує сучасний код із дефолтним налаштуванням та як це вплине на ваш застосунок.