Прикладне корпоративне метапрограмування на JavaScript [rus]
Чи можливо написати таку програму, яка суттєво змінює свою поведінку прямо під час виконання, не змінюючи вихідний код? А як щодо нативної підтримки TypeScript у Node.js? Чи може написання такого JavaScript коду, щоб він був повністю валідним, але синтаксично не був схожим на самого себе? Відповіді на всі ці та багато інших запитань ми детально розглянемо у цій доповіді. Від основ теорії метапрограмування до практичних прикладів його застосування в корпоративних проєктах. Ми поговоримо про металінгвістичні абстракції, про предметно-орієнтовані мови, як їх створювати та які проблеми можна вирішувати за їх допомогою. Подивимося, як популярні фреймворки та бібліотеки, такі як React.js, Express.js, Nest.js та Lodash, застосовують метапрограмування для розробки систем, які використовуються у всьому світі. Навчимося думати термінами метапрограм та пізнаємо для себе великий світ метасистем.
Рівень: (middle+) краще, якщо ви добре знаєте JavaScript, але ми раді всім охочим, оскільки починатимемо з основ.
- Lead Software Engineer у компанії SoftServe
- 7 років досвіду в програмній інженерії в якості full-stack розробника
- Сертифікований Node.js розробник (JSNAD та JSNSD)
- Провів більше 50 технічних інтерв'ю по WebUI
- Магістр наук з програмної інженерії, наукові праці по метапрограмуванню та розробці нативних модулів для Node.js на C та C++
- Активний спікер на конференціях
- Колись підвищив надійність релізів у 3 рази для одного з клієнтів шляхом автоматизії процесів розробки та тестування ПЗ
- У вільний час мандрую стежками JavaScript та Node.js у пошуках нових металінгвістичних абстракцій
- Github, Linkedin