Щорічне опитування State of JavaScript є одним із найбільш авторитетних джерел, що висвітлює стан екосистеми JavaScript. Воно включає дані від тисяч розробників, які поділилися своїм досвідом використання інструментів, бібліотек і функцій мови. У звіті за 2024 рік розглядаються найважливіші тренди, проблеми та інновації, що формують майбутнє JavaScript, йдеться у матеріалі Info World.
Використання ШІ-інструментів у JavaScript
Штучний інтелект активно впливає на процес розробки. В опитуванні розробників запитали, як вони використовують ШІ-інструменти для написання коду:
- 67% використовують ChatGPT, лідера серед AI-генераторів коду.
- 48% віддають перевагу GitHub Copilot.
- 23% застосовують Claude, а 14% — Gemini.
Цікаво, що 14% респондентів узагалі не використовують AI-генератори коду. Це свідчить про певний рівень скептицизму серед розробників, які все ще покладаються на ручне написання коду.
Головні проблеми JavaScript
JavaScript залишається потужною мовою, проте розробники вказують на кілька важливих недоліків.
Відсутність статичних типів:
- 32% розробників вважають це суттєвим недоліком.
- Запропоновані типові анотації дозволять додати статичні типи без необхідності використання TypeScript.
- Однією з переваг цього підходу є усунення етапу компіляції, необхідного в TypeScript.
Відсутність стандартної бібліотеки:
- 43% респондентів вважають її необхідною.
Інші функціональні обмеження:
- Потреба в Signals (39%).
- Відсутність pipe-оператора (23%).
Труднощі у використанні:
- Проблеми з архітектурою (35%).
- Управління станом (31%).
- Менеджмент залежностей (29%).
- Низька продуктивність (24%).
Нові функції JavaScript: що використовують розробники
Nullish coalescing
Цей оператор спрощує перевірку на null або undefined, дозволяючи вказати значення за замовчуванням:
let machineStatus = report?.machine?.status ?? "No thinking machines!";
Оператор став популярним серед розробників — 85% респондентів уже використовують його.
Promise.allSettled() та Promise.any()
Ці методи полегшують роботу з асинхронними операціями:
- 47% використовують
Promise.allSettled()
. - 43% —
Promise.any()
.
Array.toSorted()
Новий метод для сортування масивів, який автоматично підтримує природний порядок (наприклад, алфавітний для рядків). Його використовують 40% респондентів:
const sortedInventory = spiceInventory.toSorted((a, b) => b.quantity - a.quantity);
Методи для Set
Нові функції для роботи з множинами (union
, intersection
, difference
) все ще маловідомі, але вже набирають популярність:
Set.union()
— 16%.Set.intersection()
— 15%.Set.difference()
— 15%.
Object.groupBy()
Ця функція дає можливість групувати об’єкти за певними властивостями. Її використовують 33% розробників:
const booksByGenre = Object.groupBy(books, (book) => book.genre);
Популярність бібліотек і фреймворків
Фронтенд-фреймворки:
- React залишається найбільш впізнаваним.
- 43% позитивно оцінюють свій досвід роботи з ним.
- Лише 24% не висловили жодної думки про нього.
- Svelte та Vue лідирують за рейтингом would use again із 88% та 87% відповідно.
- Angular демонструє відновлення популярності після тривалого спаду.
Інструменти для зборки:
- Vite є найбільш популярним інструментом для зборки із 98% позитивного фідбеку.
- pnpm, швидкий замінник npm, має 93% схвальних відгуків.
- esbuild і SWC (заснований на Rust) також демонструють високий рівень задоволення серед користувачів.
Хостинг
Популярні платформи для хостингу JavaScript-застосунків:
- AWS — 44%.
- Vercel — 40%.
- Netlify та GitHub Pages — по 38%.
Екосистема JavaScript і далі розвивається, додаючи нові функції та вдосконалюючи інструменти. Опитування State of JavaScript 2024 демонструє як успіхи, так і виклики, з якими стикаються розробники. Впровадження інновацій, таких як AI-генератори коду та популяризація нових функцій мови, показують, що JavaScript залишається основним вибором для розробки вебзастосунків.
Читайте також на ProIT: Node.js налаштовано на стабілізацію видалення типів.
Підписуйтеся на ProIT у Telegram, щоб не пропустити жодної публікації!