38 KiB
План реализации: Физика 8 (Беларусь, Исаченкова, 2018)
Источник: fizika_8kl_isachenkova_rus_2018.pdf (≈180 стр., 3 содержательные главы + лабораторный практикум)
Издательство: «Народная асвета», Минск, 2018
Уровень: базовый (для 8 класса УОСО с русским языком обучения).
Авторы (исходник, в hub НЕ показываем): Л. А. Исаченкова, Ю. Д. Лещинский, В. В. Дорофейчик.
Второй физический учебник в проекте после Физики 10. Унаследует ВСЁ из инфраструктуры Физики 10:
phys.js, цветовая палитра, slider'ы в СИ, snap-точки, drawArrow, magneticFieldGrid, batteryEMF, resistor. Новый блок — геометрическая оптика, который требует расширенияphys.jsпакетомOPTICS(хелперы для зеркал, преломления, тонких линз, построения изображений). Также нужен полноценный конструктор электрической цепи (Ом для участка, последовательное/параллельное соединения, реостат, расчёт мощности).
🎯 Содержание учебника
Глава 1. Тепловые явления (§§1–11)
| § | Тема | Ключевые формулы |
|---|---|---|
| §1 | Внутренняя энергия | U — сумма E_k и E_p всех молекул; зависит от T |
| §2 | Способы изменения внутренней энергии | Совершение работы, теплопередача |
| §3 | Теплопроводность | Передача без переноса вещества; коэф. теплопроводности материалов |
| §4 | Конвекция | Перенос энергии потоками вещества (газ/жидкость) |
| §5 | Излучение | Тепловое излучение, поглощение тёмными/светлыми поверхностями |
| §6 | Расчёт количества теплоты при нагревании и охлаждении. Удельная теплоёмкость | Q = cm\Delta T, c — таблица |
| §7 | Горение. Удельная теплота сгорания топлива | Q = qm, q — таблица топлив |
| §8 | Плавление и кристаллизация | T_{пл}, графики T(t) при плавлении |
| §9 | Удельная теплота плавления и кристаллизации | Q = \lambda m |
| §10 | Испарение жидкостей. Факторы | Зависимость от T, S, ветра, рода жидкости |
| §11 | Кипение жидкостей. Удельная теплота парообразования | Q = Lm, T_{кип} |
Глава 2. Электромагнитные явления (§§12–31)
| § | Тема | Ключевые формулы |
|---|---|---|
| §12 | Электризация тел. Взаимодействие зарядов | Два рода зарядов, F притяжения/отталкивания |
| §13 | Проводники и диэлектрики | Свободные/связанные носители |
| §14 | Электризация через влияние | Индукция, разделение зарядов |
| §15 | Электрический заряд. Элементарный заряд | e = 1.6\cdot10^{-19} Кл, q = Ne |
| §16 | Строение атома. Ионы | Ядро + электроны, катион/анион |
| §17 | Электрическое поле. Электрическое напряжение | Поле как материя; U как работа поля на единицу q |
| §18 | Единица электрического напряжения. Расчёт работы | A = qU, [U] = В = Дж/Кл |
| §19 | Электрический ток. Источники тока | I — упорядоченное движение зарядов |
| §20 | Сила и направление электрического тока | I = q/t, направление за положительными |
| §21 | Электрическая цепь. Измерение силы тока и напряжения | Амперметр (последов.), вольтметр (паралл.) |
| §22 | Связь силы тока и напряжения. Закон Ома для участка цепи | I = U/R |
| §23 | Единица сопротивления. Расчёт сопротивления | R = \rho l / S, [R] = Ом |
| §24 | Последовательное соединение проводников. Реостат | $I=$const, U=U_1+U_2, R=R_1+R_2 |
| §25 | Параллельное соединение проводников | $U=$const, I=I_1+I_2, 1/R = 1/R_1+1/R_2 |
| §26 | Работа и мощность электрического тока. Закон Джоуля–Ленца | A=UIt, P=UI, Q=I^2Rt |
| §27 | Использование и экономия электроэнергии. Безопасность | Тарифы, \text{кВт}\cdot\text{ч}, ТБ |
| §28 | Постоянные магниты | Полюсы, магнитное поле Земли |
| §29 | Магнитное поле | \vec{B}, линии магнитной индукции |
| §30 | Магнитное поле тока | Опыт Эрстеда |
| §31 | Магнитное поле прямого проводника и катушки с током. Электромагнит | Правило правой руки, соленоид |
Глава 3. Световые явления (§§32–40)
| § | Тема | Ключевые формулы |
|---|---|---|
| §32 | Источники света | Естественные/искусственные, тепловые/люминесцентные |
| §33 | Скорость света. Прямолинейное распространение | c = 3\cdot10^8 м/с, тень/полутень |
| §34 | Отражение света | \alpha = \beta, диффузное/зеркальное |
| §35 | Зеркала. Изображение в плоском зеркале | Мнимое, равное, симметричное |
| §36 | Преломление света | Закон Снеллиуса (на качественном уровне), \sin\alpha/\sin\beta = n |
| §37 | Линзы. Оптическая сила линзы | D = 1/F, [D] = дптр |
| §38 | Построение изображений в тонких линзах | 3 «золотых» луча, 1/F = 1/d + 1/f |
| §39 | Глаз как оптическая система | Аккомодация, расстояние наилучшего зрения 25 см |
| §40 | Дефекты зрения. Очки | Близорукость (−), дальнозоркость (+) |
Глава 4. Лабораторный эксперимент (7 ЛР — отдельная страница physics_8_lab.html)
| № | Тема | Связан с § |
|---|---|---|
| ЛР-1 | Изучение явления теплообмена при смешивании воды разной температуры | §6 |
| ЛР-2 | Определение удельной теплоёмкости твёрдого тела | §6 |
| ЛР-3 | Сборка простейшей электрической цепи и измерение силы тока и напряжения | §21 |
| ЛР-4 | Изучение последовательного соединения проводников | §24 |
| ЛР-5 | Изучение параллельного соединения проводников | §25 |
| ЛР-6 | Определение работы и мощности электрического тока | §26 |
| ЛР-7 | Изучение явления отражения света | §34 |
ИТОГО: 3 содержательные главы, 40 параграфов, 7 виртуальных лабораторных работ.
🎨 SVG-СТАНДАРТ КАЧЕСТВА
Унаследовано из Физики 10 (phys.js — БЕЗ изменений)
drawArrow(x1,y1,x2,y2,color,width,headSize)fieldLinesPointCharge(cx,cy,sign,scale,numLines)chargeMark(cx,cy,sign,r,label)magneticFieldGrid(x0,y0,w,h,cols,rows,direction)—in/outbatteryEMF,resistor,capacitorSymbol,ammeterSymbol,voltmeterSymbol,lightbulbSymbol,inductorSymbol,wirecreateGasSim(opts)— для §10 (испарение) и иллюстрации МКТ в §1molecule(x,y,r,color)- Конвертеры:
celsiusToKelvin,kelvinToCelsius,atmToPa,litersToM3 - Из 2D-математики:
axes2D,plotFunc— для графикаT(t)при плавлении/кипении и для ВАХI(U).
НОВЫЙ модуль frontend/js/optics.js (window.OPTICS)
Для главы 3 нужны хелперы геометрической оптики — выносим в отдельный модуль (чище, чем раздувать phys.js).
// === Луч со стрелкой посередине (для световых пучков) ===
function ray(x1, y1, x2, y2, color, dashed) {
// линия + треугольник-стрелка на середине, опционально пунктир
}
// === Плоское зеркало ===
function mirrorPlane(x, y, len, angle) {
// линия + штриховка с тыльной стороны
}
// === Сферическое зеркало (вогнутое/выпуклое) ===
function mirrorSpherical(cx, cy, R, kind) {
// дуга + штриховка
}
// === Тонкая линза (собирающая / рассеивающая) ===
function thinLens(cx, cy, h, kind) {
// kind: 'converging' (двойная стрелка наружу) или 'diverging' (внутрь)
// главная оптическая ось + фокусы F и 2F
}
// === Построение изображения в тонкой линзе ===
function buildLensImage(F, d, h) {
// Возвращает {f, h2, virtual, kind}
// f = d*F/(d-F); h2 = -h*f/d; virtual = (f<0)
}
// === Преломление на границе двух сред ===
function refractRay(x0, y0, angleIn, n1, n2, len) {
// По закону Снеллиуса: n1*sin(α)=n2*sin(β)
// Возвращает SVG: падающий + преломлённый + отражённый луч + нормаль
}
// === Отражение от зеркала ===
function reflectRay(x0, y0, angleIn, mirrorAngle, len) {
// α_отраж = α_падения, всё относительно нормали
}
// === Глаз (упрощённая схема) ===
function eyeDiagram(cx, cy, R, accommodation) {
// Овал + роговица + хрусталик + сетчатка + фокусное пятно
}
// === Источник света (точечный / протяжённый стрелка) ===
function lightObject(x, y, h, kind) {
// kind: 'point' (звезда) или 'arrow' (вертикальная стрелка-предмет)
}
Расширение phys.js для главы 1 (тепловые явления)
// === Термометр (вертикальная шкала) ===
function thermometer(x, y, h, tMin, tMax, tValue) {
// Резервуар + столбик ртути + шкала с делениями + подпись T
}
// === Калориметр-стакан (для смешения воды) ===
function calorimeter(x, y, w, h, level, color) {}
// === Анимация теплопроводности (градиент tcolor по стержню) ===
class HeatBarSim {
// Двухсторонний нагрев, цвет по температуре (синий→красный)
}
// === Анимация конвекции (тороидальный поток молекул) ===
class ConvectionSim {}
// === График фазовых переходов T(t) с плато ===
function phaseGraphTT(W, H, pad, points) {
// Сегменты: нагрев твёрдого → плато плавления → нагрев жидкости → плато кипения
}
// === Цветовая палитра температуры ===
function tempColor(t, tMin, tMax) {
// HSL: 240° (синий, холод) → 0° (красный, горячо)
}
Цветовая кодировка для Физики 8
- Тепло / горячее тело — красный (
#dc2626) - Холод / холодное тело — синий (
#2563eb) - Температурный градиент — HSL
hue=240·(1-t),sat=70%,light=55% - Положительный заряд — красный (
#dc2626) - Отрицательный заряд — синий (
#2563eb) - Электрическое поле $\vec{E}$ — оранжевый (
#ea580c) - Магнитное поле $\vec{B}$ — фиолетовый (
#7c3aed) - Ток — янтарный (
#d97706) - Резистор / провод —
#374151 - Световой луч — жёлтый (
#fbbf24) с обводкой - Падающий луч — голубой (
#0891b2) - Отражённый луч — зелёный (
#10b981) - Преломлённый луч — фиолетовый (
#a855f7) - Нормаль — пунктир
#94a3b8 - Линза собирающая —
#22c55e - Линза рассеивающая —
#f97316 - Мнимое изображение — пунктир
- Действительное изображение — сплошное
Правила (обязательны с §1, наследие Физики 10)
- Все единицы измерения через KaTeX —
\\text{Дж},\\text{Ом},\\text{кВт}\\cdot\\text{ч},\\text{дптр}. Никогда сырой текст. - Slider'ы — в реальных физических величинах:
- Температура:
-100..200°C (snap на 0, 100) - Масса:
0.01..10кг - Удельная теплоёмкость: из таблицы (вода 4200, лёд 2100, алюминий 920, медь 380, железо 460, …)
- Напряжение:
1..220В (snap 1.5, 9, 12, 220) - Ток:
0.001..10А - Сопротивление:
0.1..1000Ом - Длина проводника:
0.1..10м - Площадь сечения:
0.1..10мм² (отображать в мм², считать в м²) - Удельное сопротивление: из таблицы (медь 0.017, алюминий 0.028, нихром 1.1 Ом·мм²/м)
- Заряд:
\pm 10^{-9}..10^{-6}Кл - Фокусное расстояние:
-50..50см (отрицательное — рассеивающая) - Расстояние от предмета до линзы:
5..200см
- Температура:
- Snap-точки на эталонных значениях: 0 °C, 100 °C, 220 В, 9 В, 1.5 В (батарейка),
F = 10см,D = 1дптр. - Все формулы — KaTeX, двойной backslash:
\\dfrac{U}{R},\\sin\\alpha. - Векторы — со стрелками через
drawArrow. В KaTeX —\\vec{B},\\vec{E}. - Подписи единиц измерения — обязательны на всех осях, во всех результатах.
- Симуляции —
requestAnimationFrameс паузой / сбросом /cancelAnimationFrameпри unmount. - Эмодзи запрещены. Только inline SVG
.icили HTML-сущности (✓,★,✦). - Никаких пикселей в подписях — всё в СИ или производных единицах; масштаб
K = px/единицав каждом виджете. - Авторов нет — в hub footer'е только «Интерактивный учебник «Физика — 8 класс» · LearnSpace». Раздел «Об авторах» из учебника не переносим.
- innerHTML для строк с HTML-сущностями (а не
textContent). - KaTeX-аудит после каждого Wave: регексп
[^\\]\\[a-zA-Z]{2,}по JS-блокам в HTML. - JS parse-check после каждого Wave:
new Function(scriptBody)в скрипте-проверке.
Типы интерактивов по темам
| Тип | Применение |
|---|---|
| Анимация теплопроводности (стержень с градиентом) | §3 |
| Симуляция конвекции (тороидальный поток) | §4 |
| Симуляция излучения (цвет поверхности vs нагрев под лампой) | §5 |
| Калькулятор $Q = cm\Delta T$ с таблицей материалов | §6 |
| Смесь двух жидкостей: $t_{см}$ | §6 |
| Калькулятор $Q = qm$ (топливо) | §7 |
| График фазовых переходов $T(t)$ с интерактивной точкой по времени | §8, §9, §11 |
| Симуляция испарения (молекулы покидают свободную поверхность) | §10 |
| Виртуальный электроскоп (видна индукция при поднесении заряженного тела) | §12, §14 |
| Конструктор атома (ядро + электроны, потеря/приобретение → ион) | §15, §16 |
Линии \vec{E} для одного/двух зарядов |
§17 |
| Калькулятор $A = qU$ | §18 |
Симуляция тока (поток электронов по проводу с регулировкой I) |
§19, §20 |
| Конструктор простейшей цепи (батарея + лампа + амперметр + вольтметр) | §21 |
ВАХ-плоттер $I(U)$ для резистора с разным R |
§22 |
| Калькулятор $R = \rho l / S$ с таблицей материалов | §23 |
| Конструктор последов. цепи + реостат (slider реостата → яркость лампы) | §24 |
Конструктор паралл. цепи (две ветви, разные R, общий I) |
§25 |
Калькулятор A, P, Q Джоуля-Ленца + симуляция нагрева резистора |
§26 |
| Счётчик электроэнергии (тариф × кВт·ч за месяц по приборам) | §27 |
Магнитное поле полосового магнита (линии \vec{B} от N к S) |
§28 |
| Опилки и магнитная стрелка — симуляция выравнивания | §29 |
| Опыт Эрстеда — стрелка отклоняется при включении тока | §30 |
| Поле прямого проводника / соленоида (правило правой руки) | §31 |
| Тени и полутень (точечный/протяжённый источник + экран) | §33 |
Закон отражения (угол \alpha slider → угол \beta) |
§34 |
| Плоское зеркало (предмет, зеркало → построение мнимого изображения) | §35 |
Закон Снеллиуса (slider \alpha, n_1, n_2 → угол \beta) |
§36 |
| Калькулятор $D = 1/F$ + изображение линзы | §37 |
Главный визуал главы 3: «Конструктор изображения в линзе» (slider F, d, h → 3 золотых луча + положение и размер изображения) |
§38 |
Симуляция аккомодации глаза (близкий/далёкий предмет, изменение F хрусталика) |
§39 |
| Близорукость/дальнозоркость + очки (выбор линзы исправляет фокус) | §40 |
🚀 ПОРЯДОК РЕАЛИЗАЦИИ
40 параграфов + 7 ЛР → 8 фаз (как у Физики 10).
Phase 0: Архитектура (фундамент)
physics_8_hub.html— палитра violet/indigo (по обложке учебника — сиренево-фиолетовый):--pri:#7c3aed(violet-600),--pri-d:#5b21b6,--pri-soft:#ede9fe. Header gradientlinear-gradient(110deg,#312e81 0%,#7c3aed 55%,#c4b5fd 100%). Палитра не пересекается с Физикой 10 (yellow/amber) и обеими 11-ми (teal/cyan).- 3 ch-файла:
physics_8_ch1.html(тепловые),_ch2.html(электромагнитные),_ch3.html(световые) - 1 отдельная страница:
physics_8_lab.html(7 ЛР) - Миграция
037_physics_8_hub.sql(следующий свободный номер; 036 — последний) - Расширение
frontend/js/phys.js: новые хелперы для тепла (thermometer, calorimeter, HeatBarSim, ConvectionSim, phaseGraphTT, tempColor) - Новый модуль
frontend/js/optics.js→window.OPTICS: ray, mirrorPlane, mirrorSpherical, thinLens, buildLensImage, refractRay, reflectRay, eyeDiagram, lightObject - 2D-хелперы (axes2D, plotFunc) подключены в каждый ch
- KaTeX CDN + auto-render
- POLISH CSS + bump-score JS
- Тестовая страница
physics_8_test.html(рендер всех новых хелперов) — НЕ публикуется
Phase 1: Глава 1 «Тепловые явления» (§§1–11) — 5 волн
- Wave 1: §1 (внутренняя энергия, симуляция «горячее тело — быстрые молекулы») + §2 (способы изменения: трение, теплопередача — анимация).
- Wave 2: §3 (теплопроводность, HeatBarSim — главный визуал) + §4 (конвекция, ConvectionSim) + §5 (излучение, симуляция «светлая/тёмная поверхность под лампой»).
- Wave 3: §6 (калькулятор
Q = cm\Delta T+ смесь двух жидкостей + таблица материалов) + §7 (калькуляторQ = qm, таблица топлив). - Wave 4: §8 (плавление, график
T(t)с плато — главный визуал) + §9 (калькулятор\lambda, баланс «лёд + вода»). - Wave 5: §10 (испарение, симуляция «молекулы покидают поверхность») + §11 (кипение, удельная теплота парообразования
L) + Финал главы 1 (7 боссов: смесь, нагрев, плавление, кипение, баланс теплоты, КПД нагревателя, «ледяная задача»; ачивка «Мастер теплоты»).
Phase 2: Глава 2 «Электростатика» (§§12–18) — 3 волны
Первая половина электромагнитной главы — статика и заряды.
- Wave 1: §12 (электризация, виртуальный электроскоп) + §13 (проводники/диэлектрики, симуляция «куда уходят электроны») + §14 (индукция, разделение зарядов в проводнике).
- Wave 2: §15 (
q = Ne,e = 1.6\cdot10^{-19}Кл, калькулятор «сколько электронов») + §16 (строение атома, конструктор «нейтральный → ион»). - Wave 3: §17 (электрическое поле, линии $\vec{E}$ для +/− и для двух зарядов) + §18 (напряжение, калькулятор
A = qU, связьUс работой поля).
Phase 3: Глава 2 «Постоянный ток» (§§19–27) — 4 волны
- Wave 1: §19 (источники тока, симуляция «поток электронов в проводе») + §20 (
I = q/t, направление тока). - Wave 2: §21 (конструктор простейшей цепи — главный визуал: батарея + лампа + амперметр + вольтметр; правила подключения) + §22 (закон Ома, ВАХ-плоттер $I(U)$).
- Wave 3: §23 (
R = \rho l/S, таблица материалов) + §24 (последовательное соединение, реостат-симулятор — slider положения движка → яркость лампы) + §25 (параллельное соединение, две ветви с разнымиR). - Wave 4: §26 (Джоуль-Ленц:
A = UIt,P = UI,Q = I^2Rt, симуляция нагрева резистора) + §27 (счётчик электроэнергии, тарифы кВт·ч) + Финал главы 2 (часть электр.) — 7 боссов: Ом, последов., паралл., смешанная цепь, мощность, кВт·ч, баланс.
Phase 4: Глава 2 «Магнетизм» (§§28–31) — 2 волны
- Wave 1: §28 (постоянные магниты, линии
\vec{B}от N к S, поле Земли) + §29 (магнитное поле, опилки — симуляция выравнивания мелких магнитных стрелок). - Wave 2: §30 (опыт Эрстеда — стрелка отклоняется при включении тока) + §31 (поле прямого проводника / соленоида, электромагнит-конструктор — slider
Iи числа витков → сила притяжения скрепок) + Финал главы 2 целиком (10 боссов: статика + ток + магнетизм; ачивка «Мастер электромагнетизма»).
Phase 5: Глава 3 «Световые явления» (§§32–40) — 4 волны
- Wave 1: §32 (источники света, классификация) + §33 (скорость света, прямолинейное распространение, симуляция тени и полутени).
- Wave 2: §34 (отражение, slider $\alpha \to \beta$, диффузное vs зеркальное) + §35 (плоское зеркало, построение мнимого изображения симметрией).
- Wave 3: §36 (преломление, закон Снеллиуса — slider
\alpha,n_1,n_2→\beta, полное внутреннее отражение как бонус) + §37 (линзы,D = 1/F, типы линз). - Wave 4: §38 (главный визуал курса: «Конструктор изображения в тонкой линзе» — 3 золотых луча, формула
1/F = 1/d + 1/f, sliderF,d,h) + §39 (глаз как оптическая система, аккомодация) + §40 (близорукость/дальнозоркость, выбор очков) + Финал главы 3 (7 боссов: отражение, плоское зеркало, преломление, тонкая линза × 2, глаз/очки; ачивка «Мастер света»).
Phase 6: Лабораторный практикум (physics_8_lab.html) — 1 волна
Отдельная страница с 7 виртуальными ЛР. Каждая ЛР = карточка с интро + симуляцией + таблицей измерений + расчётной формулой + автогенерированным отчётом.
- ЛР-1 теплообмен при смешивании (§6) — два калориметра, slider массы и
T_1, T_2. - ЛР-2 удельная теплоёмкость твёрдого тела (§6) — образец + калориметр, по таблице вычислить
c. - ЛР-3 простейшая цепь (§21) — drag-and-drop элементов, проверка корректности подключения амперметра/вольтметра.
- ЛР-4 последовательное соединение (§24) — измерить
IиUна двух резисторах, проверить правила. - ЛР-5 параллельное соединение (§25) — то же для двух ветвей.
- ЛР-6 работа и мощность (§26) — амперметр + вольтметр + секундомер,
AиP. - ЛР-7 отражение света (§34) — оптическая скамья, slider
\alpha, измерение\beta.
Ачивка «Лаборант 8 класса» (+50 XP) за прохождение всех 7 ЛР.
Phase 7: Финал курса Физика 8
- Итоговая шпаргалка (3 mini-карточки: тепло, электромагнетизм, свет)
- 10 интегрированных боссов, комбинирующих темы из разных глав:
- Тепло + энергия: расчёт нагрева воды в электрочайнике через
A = UItиQ = cm\Delta T(КПД). - Плавление + Q: сколько электроэнергии (в кВт·ч) нужно для плавления льда.
- Цепь + Джоуль-Ленц + нагрев:
\Delta Tнихрома по току. - Закон Ома + смешанная цепь: 3 резистора, найти токи.
- Электромагнит: рассчитать
Iдля нужной силы притяжения (по простой модели). - Преломление + линза: какова оптическая сила
Dдля собирания пучка на сетчатке. - Дефекты зрения: подбор очков — собирающая или рассеивающая, какое
D? - Тень и расстояние: размер тени при сдвиге предмета.
- Стоимость электроэнергии за месяц: лампа + чайник + ТВ, тариф.
- Магистр Физики 8 — интегральный вопрос со связкой всех 3 глав.
- Тепло + энергия: расчёт нагрева воды в электрочайнике через
- Ачивка «Магистр физики 8» (+150 XP).
- Кнопка «К каталогу учебников» →
/textbooks.
📦 Структура каждого § (стандарт, наследует Физику 10)
Каждый § содержит:
- 3 теоретические карточки (
theory,rule,example) с SVG-схемами/графиками. - 4 интерактива (
.wgвиджеты):- Главная симуляция / визуализатор (специфичный для темы)
- Калькулятор закона (ввод параметров → формула с подстановкой → результат с единицами)
- DnD / Квикфайр (понятийный тренажёр)
- Тренажёр расчётных задач (5–6 задач с числовым ответом, допуск 1–5 %)
- Кнопка «Я прочитал § (+10 XP)»
- Прогресс/XP: IV1 15 % / 10 XP, IV2 15 % / 10 XP, IV3 25 % / 15 XP, IV4 25 % / 15 XP, чтение 30 % / 10 XP
Финал главы:
- Итоговая шпаргалка с формулами и единицами.
- 5–10 интегрированных боссов (синтез тем главы)
- Ачивка «Мастер главы N» + 50 XP + confetti
- Кнопка перехода к следующей главе
📊 Оценка объёма
| Глава | § | LOC |
|---|---|---|
| Phase 0: skeleton + расширение phys.js + новый optics.js | — | 3 000 |
| Глава 1 Тепловые (§§1-11) | 11 | 14 000 |
| Глава 2 Электростатика (§§12-18) | 7 | 8 500 |
| Глава 2 Пост. ток (§§19-27) | 9 | 11 500 |
| Глава 2 Магнетизм (§§28-31) | 4 | 5 500 |
| Глава 3 Световые (§§32-40) | 9 | 12 500 |
| Phase 6: Лабораторный практикум (7 ЛР) | — | 4 500 |
| Phase 7: финал курса | — | 1 500 |
| Итого | 40 | ~61 000 LOC |
Это больше Физики 10 (~54 500) из-за дополнительной страницы лабораторного практикума и того, что в 8 классе всё нужно объяснять с нуля (больше теоретических карточек и симуляций «здравого смысла»).
⚠️ Критические правила (унаследовано + новое)
❌ НЕ делать
- Slider'ы в пиксельных диапазонах (40..150). Только в реальных физических единицах с правильным масштабом отрисовки (
K = px/единица). - Подписи без единиц измерения (
U = 12— это что? В? мВ?). Всегда:U = 12В. - Эмодзи (
⚠,🌡️,🔋,💡). Только inline SVG.icили HTML-сущности (✓,★). - Одиночный
\перед буквой в JS template literals:\dfrac,\sin,\vec. ВСЕГДА\\dfrac. - Сырой KaTeX в
<option>— KaTeX там не рендерится. Только unicode-текст (U/R,Δt,α°). \degreeне существует в KaTeX — используй^\\circ.textContentдля строк с HTML-сущностями — толькоinnerHTML.- Бесконечные симуляции без паузы — всегда кнопка «Пауза / Сброс» и
cancelAnimationFrameпри закрытии виджета. - Авторов в hub / footer — Исаченкову, Лещинского, Дорофейчика НЕ упоминаем (как для всех остальных учебников проекта).
- Дублирование Физики 10 — не копировать §1 МКТ из 10 в 8. В 8-м классе уровень проще, формулировки другие.
- Симуляции с нарушенной размерностью — например,
cв формулеQ = cm\Delta Tдолжна быть в Дж/(кг·К), не в кал.
✅ Обязательно
- Все единицы СИ в формулах и подписях, табличные значения — с указанием единиц (Дж/(кг·К), Ом·мм²/м, дптр).
- Snap-точки в slider'ах для эталонных значений: 0 °C, 100 °C, 220 В, 9 В, 1.5 В,
F = 10см. - Цветовая кодировка едина по всем § (тепло±, заряд±, поле $E$/
B, луч, ток). - KaTeX-аудит через
nodeпосле каждого Wave (паттерн[^\\]\\[a-zA-Z]{2,}в JS-блоках). - JS parse-check через
new Function(scriptBody)после каждого Wave. - Поиск по коду — ТОЛЬКО
ast-index, никакогоgrep(правило проекта). - Push после каждого Wave:
git add <files> && git commit -m "feat(phys8 chN): Wave M — описание" && git push origin master. - Реалистичные значения в задачах:
c_{воды} = 4200,c_{льда} = 2100,\lambda_{льда} = 3.34\cdot10^5,L_{воды} = 2.26\cdot10^6,\rho_{меди} = 0.017,e = 1.6\cdot10^{-19},c_{света} = 3\cdot10^8.
🎬 Запуск
Phase 0: skeleton 3 ch + physics_8_hub.html + physics_8_lab.html + миграция 037_physics_8_hub.sql + расширение phys.js (термо-хелперы) + новый frontend/js/optics.js.
Палитра hub: violet/indigo (по обложке учебника). После Phase 0 → Phase 1 Wave 1 (§1 внутренняя энергия + §2 способы изменения).
После завершения всех 8 Phase Физика 8 → 4-й физический курс проекта будет первым полным учебником 8 класса (наряду с Алгеброй 8 и Геометрией 8, уже частично сделанными). Это закрывает «нижний» класс по физике до уровня качества Физики 10.
🔗 Связи с системой
- Миграция БД:
037_physics_8_hub.sql— добавить запись вtextbooks(id, slugphysics-8, title «Физика — 8 класс», author'', grade 8, subject_id физики). - Маршруты:
/textbooks/physics-8→ hub,/textbooks/physics-8/ch1..3,/textbooks/physics-8/lab. - Каталог: появляется на
frontend/textbooks.htmlв секции 8 класса. - Достижения: 4 ачивки глав («Мастер теплоты», «Мастер электромагнетизма», «Мастер света», «Лаборант 8 класса») + 1 финальная («Магистр физики 8»). Все добавляются через миграцию или скрипт-сидер.
- XP: ~40 § × ~60 XP + 4 ач × 50 + финал 150 ≈ 2750 XP за полное прохождение курса.