Skip to content

feat(30-variables): перенос теории из Python и адаптация под java#308

Open
fey wants to merge 1 commit into
mainfrom
update-30-variables-from-python
Open

feat(30-variables): перенос теории из Python и адаптация под java#308
fey wants to merge 1 commit into
mainfrom
update-30-variables-from-python

Conversation

@fey

@fey fey commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Что сделано

Перенесена теория модуля "Переменные" из эталонного Python-курса в Java, с адаптацией примеров и формулировок под Java.

Объемы теории (символы README, % от Python)

Урок (Python → Java) Было Стало % от Python Действие
10-definition → 10-definition 2036 4507 110% расширен (типы, литералы)
12-change → 12-change 1187 2819 119% расширен (зачем менять, отладка)
13-variables-naming → 13-variables-naming 1249 2223 104% расширен (хорошие/плохие имена)
15-variables-expressions → 15-variable-expressions 2671 2671 91% README не тронут (только data.yml)
18-variable-concatenation → 18-variables-concatenation 605 2532 139% сильно расширен
19-naming-style → 19-naming-style 1303 2193 132% добит (стили, чего избегать)
20-magic-numbers → 20-magic-numbers 1692 1692 93% не тронут
23-constants → 23-constants 635 2457 127% сильно расширен (final)

Адаптации под Java

  • Типизация переменных: var greeting = "Father!";, явные типы int/double/String.
  • Имена в стиле lowerCamelCase вместо snake_case.
  • Константы через final и static final, стиль UPPER_SNAKE_CASE для констант уровня класса.
  • Конкатенация строки с числом через + работает без явного преобразования (адаптировано вместо Python str()); добавлен разбор порядка вычисления "Sum: " + 2 + 3.
  • Статическая типизация: тип переменной не меняется после создания.
  • Изображения ./assets/*.png из Python не переносились (в Java-уроках нет каталога assets); используются текстовые ASCII-схемы.

data.yml

Перенесены definitions/tips из Python. Имена уроков (name) оставлены как в Java. Java-специфичные tips сохранены (\n в 15 и 18).

Что НЕ тронуто

  • 14-errors (есть только в Java) — KEEP.
  • Все *.java, EXERCISE.md, локали es/ и en/, файлы уровня модуля.
  • Задания и тесты не менялись.

Проверки

  • git diff --name-only — только ru/README.md и ru/data.yml внутри modules/30-variables.
  • yamllint: 0 проблем.
  • ajv-cli (lesson.json) по всем измененным data.yml: все valid.
  • rumdl: 0 проблем в измененных ru/README.md (предсуществующие проблемы в es/* и EXERCISE.md не трогались).
  • Греп ё / ёлочек в измененных файлах: пусто.
  • Тесты в Docker: PASS для всех 9 уроков (10/12/13/14/15/18/19/20/23).

🤖 Generated with Claude Code

Расширены уроки: 10-definition (типы и литералы), 12-change (зачем менять
значение, отладка), 13-variables-naming (хорошие/плохие имена, советы),
18-variables-concatenation (строка + число, порядок вычисления),
19-naming-style (стили имен, чего избегать), 23-constants (final и static
final, UPPER_SNAKE_CASE).

Адаптация под Java: типизация переменных, lowerCamelCase, final-константы.
data.yml: перенесены definitions/tips из Python, имена уроков оставлены Java.
Задания (App.java/Test.java/EXERCISE.md) не менялись. Локаль только RU.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant