Skip to content

feat(45-logic): перенос теории из Python и адаптация под java#313

Open
fey wants to merge 2 commits into
mainfrom
update-45-logic-from-python
Open

feat(45-logic): перенос теории из Python и адаптация под java#313
fey wants to merge 2 commits into
mainfrom
update-45-logic-from-python

Conversation

@fey

@fey fey commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Перенос теории модуля "Логика" из эталонного Python-курса в Java-курс плюс новый урок logical-expressions.

Урок logical-expressions создан в этой ветке (RU-only, 6 файлов). Тема: составные логические выражения, порядок операторов и сокращенное вычисление. Решение в App.java выводит результат выражения age >= 18 && hasConsent, тест ждет true. Компиляция и тест в Docker: PASS.

Объемы (RU README, символы)

Урок Java было Java стало Python % от Python
10-bool-type 2299 3852 3147 122%
25-logical-operators 2936 4221 4059 104%
28-logical-negation 869 3730 2967 126%
90-logical-expressions новый 3290 2400 137%

Превышение 110% структурное. Содержание перенесено из Python, но каждый пример в Java длиннее за счет System.out.println(...), public static boolean и явных типов. В 90-logical-expressions теория адаптирована под Java (вычисление в true/false, таблица приоритетов, пошаговый разбор, сокращенное вычисление &&/||) вместо питоновской truthy/falsy семантики.

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

  • Тип boolean с литералами true/false вместо питоновских True/False.
  • Логические операторы && (И), || (ИЛИ), ! (НЕ) вместо and/or/not.
  • Операции сравнения возвращают boolean, результаты выводятся через System.out.println(...).
  • Без if, тернарного оператора и циклов (модуль идет до условных конструкций).
  • Сравнение строк через .equals(...) в примере с квартирой.
  • Предикаты с префиксами is, has, can, was.
  • Двойное отрицание, приоритет операторов, законы де Моргана.

Не тронуто

  • 12-string-comparasion (уже 159%, богатый Java-материал про .equals и ==).
  • 20-combine-expressions (уже 105%).
  • Все *.java, EXERCISE.md, es/, en/, description.*.yml существующих уроков.

Проверки

  • wc -m: все уроки >= 85% от Python.
  • Нет ё, нет елочек в измененных и новых файлах.
  • Нет if/тернарника/циклов и питоновских операторов в README.
  • yamllint модуля проходит.
  • ajv для data.yml (включая новый): valid.
  • rumdl: измененные и новые README/EXERCISE без замечаний.
  • Тесты в Docker: PASS для всех уроков модуля, включая 90-logical-expressions.

🤖 Generated with Claude Code

fey and others added 2 commits June 24, 2026 01:52
Расширены три урока модуля "Логика" до объема эталонного Python-курса
с адаптацией под Java.

- 10-bool-type: операции сравнения, тип boolean, true/false, предикаты
- 25-logical-operators: операторы &&/||, скидка по OR, квартира, таблицы
- 28-logical-negation: оператор !, двойное отрицание, приоритет,
  пример с правами, законы де Моргана

Адаптации под Java: тип boolean с литералами true/false; операторы
&&, ||, !; операции сравнения возвращают boolean; вывод результатов
через System.out.println без if/тернарника/циклов; сравнение строк
через .equals().

Не тронуты: 12-string-comparasion, 20-combine-expressions, *.java,
EXERCISE.md, es/, en/.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Урок про составные логические выражения, порядок операторов
и сокращенное вычисление. Решение в App.java выводит результат
выражения age >= 18 && hasConsent.

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