Базовый CS с нуля
Значения и типы: свободное припоминание
Припоминание сильнее перечитывания. На каждый промпт проговори или запиши полный ответ по памяти, прежде чем открыть модельный — именно усилие вытащить его и закрепляет идею.
Восстанови хребет юнита, не подглядывая: что такое value, что делает type, почему одни и те же биты декодируются по-разному, повседневные примитивы JS, различие null/undefined и зачем вообще существуют системы типов.
- 01Что такое value на уровне машины и откуда берётся его смысл?
- 02Что такое type и какие две части информации он даёт?
- 03Покажи, как один паттерн битов даёт разные значения под разными типами.
- 04Назови повседневные примитивы JS/TS и один факт о том, как хранятся числа.
- 05Различи null и undefined и скажи, что возвращает typeof null.
- 06Зачем существуют системы типов и чем различаются статическая и динамическая проверка?
Если ты смог восстановить каждый ответ по памяти, ты держишь хребет юнита: value — это сырые биты, type — правило размер-плюс-интерпретация, дающее им смысл, одни и те же биты декодируются в разные значения под разными правилами, JS открывает горстку примитивов (каждый number — 64-битный IEEE 754 double, а null/undefined — два различных отсутствия), а система типов существует, чтобы ловить применение неверного правила — рано на этапе компиляции или поздно во время выполнения.