Telegram Group & Telegram Channel
Пригадую, як у своїй першій компанії доводилось проходити різні “екзамени”, щоб отримати вищий рівень (ну і зарплату, само собою). Якогось цілком конкретного фреймворку для цього не було, тому це проходило більше у форматі звичайної розмови, нагадувало інтерв’ю в компанію, але з глибшими питаннями.

Так як я тоді не знав, до чого готуватись, то сам склав собі Trello-дошку з можливими темами по JS і загалом програмуванню. Та дошка потім пішла як спадщина по тімейтах.

Одна з таких тем називалась Hidden Classes. Насправді, крім таких співбесід, ніде більше не зустрічав цієї теми, але прикольно знати — дає краще уявлення про роботу JS і оптимізатора.

Ось коротко:

Так як в JS ми можемо динамічно створювати об’єкти, то це створює масу варіантів того, якої форми ці об’єкти набудуть (форма, тобто структура, назва полів та їх порядок). Але вже під час рантайму відбувається оптимізація і створюються ці Hidden Classes. На кожну форму об’єкта створюється прихований клас, який потім використовується двигуном, щоб швидше діставати значення.

Ось приклад, скопіював з LLM:


function Point(x, y) {
this.x = x; // creates hidden class A
this.y = y; // transitions to hidden class B
}

const p1 = new Point(1, 2); // uses class B
const p2 = new Point(3, 4); // reuses class B — fast

p2.z = 5; // creates a new hidden class — potential slowdown


Малоімовірно, що така оптимізація потрібна буде у відносно простих додатках. Але, наприклад, якби я працював у New Relic чи PostHog, Sentry, то, можливо, це б мало значення для великих об’ємів даних.

Ось цікава відповідь, щоб почитати: stackoverflow
А також стаття: v8.dev



group-telegram.com/thirdwavedev/145
Create:
Last Update:

Пригадую, як у своїй першій компанії доводилось проходити різні “екзамени”, щоб отримати вищий рівень (ну і зарплату, само собою). Якогось цілком конкретного фреймворку для цього не було, тому це проходило більше у форматі звичайної розмови, нагадувало інтерв’ю в компанію, але з глибшими питаннями.

Так як я тоді не знав, до чого готуватись, то сам склав собі Trello-дошку з можливими темами по JS і загалом програмуванню. Та дошка потім пішла як спадщина по тімейтах.

Одна з таких тем називалась Hidden Classes. Насправді, крім таких співбесід, ніде більше не зустрічав цієї теми, але прикольно знати — дає краще уявлення про роботу JS і оптимізатора.

Ось коротко:

Так як в JS ми можемо динамічно створювати об’єкти, то це створює масу варіантів того, якої форми ці об’єкти набудуть (форма, тобто структура, назва полів та їх порядок). Але вже під час рантайму відбувається оптимізація і створюються ці Hidden Classes. На кожну форму об’єкта створюється прихований клас, який потім використовується двигуном, щоб швидше діставати значення.

Ось приклад, скопіював з LLM:


function Point(x, y) {
this.x = x; // creates hidden class A
this.y = y; // transitions to hidden class B
}

const p1 = new Point(1, 2); // uses class B
const p2 = new Point(3, 4); // reuses class B — fast

p2.z = 5; // creates a new hidden class — potential slowdown


Малоімовірно, що така оптимізація потрібна буде у відносно простих додатках. Але, наприклад, якби я працював у New Relic чи PostHog, Sentry, то, можливо, це б мало значення для великих об’ємів даних.

Ось цікава відповідь, щоб почитати: stackoverflow
А також стаття: v8.dev

BY Розробка третьої хвилі




Share with your friend now:
group-telegram.com/thirdwavedev/145

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

"And that set off kind of a battle royale for control of the platform that Durov eventually lost," said Nathalie Maréchal of the Washington advocacy group Ranking Digital Rights. Since January 2022, the SC has received a total of 47 complaints and enquiries on illegal investment schemes promoted through Telegram. These fraudulent schemes offer non-existent investment opportunities, promising very attractive and risk-free returns within a short span of time. They commonly offer unrealistic returns of as high as 1,000% within 24 hours or even within a few hours. Elsewhere, version 8.6 of Telegram integrates the in-app camera option into the gallery, while a new navigation bar gives quick access to photos, files, location sharing, and more. But the Ukraine Crisis Media Center's Tsekhanovska points out that communications are often down in zones most affected by the war, making this sort of cross-referencing a luxury many cannot afford. Telegram does offer end-to-end encrypted communications through Secret Chats, but this is not the default setting. Standard conversations use the MTProto method, enabling server-client encryption but with them stored on the server for ease-of-access. This makes using Telegram across multiple devices simple, but also means that the regular Telegram chats you’re having with folks are not as secure as you may believe.
from sg


Telegram Розробка третьої хвилі
FROM American