Python програмування. Рівень 2.

e-Learning group/community All Groups

View all challenges in the group Python програмування. Рівень 2.

Group challenge - Об’єктно-орієнтоване програмування. Модифікуємо "Хрестики Нолики"

Completed: 2 (%8), Skipped: 0 (%0)
2

Ми вже зробили програму Хрестики Нолики. Але ця програма є "некрасивою". Її важко розширювати чи модифікувати. 

Також важко використати цю програму як компонент до іншої більшої програми.

Ми розділимо наш код на модулі та створимо класи щоб використовувати їх в інших системах.

Завдання.

Модифікувати код програми "Хрестики Нолики". Розділити її на 3 компоненти:

  • клас TicTacToe який керує процесом гри. Об’єкт цього класу містить стан гри та апрацьовує ходи
  • клас Gamer отримує об’єкт класу TicTacToe та виконує хід від імені комп’ютера. він використовується тоді коли користувач грає із комп’ютером тільки.
  • основна програма. виконує ввід та вивід. створює об’єкти відповідних класів

потрібно розібратися який найкращий спосіб передати об’єкт TicTacToe у Gamer. чи є в python підтримка передачі об’єкта "за почиланням" (по ссилці) чи треба передавати копію кожного разу коли треба зробити хід щоб мати актувальний стан гри.

Коли ми будемо мати ці 2 класи ми зможемо легко міняти інтерфейс програми, адже логіка вже буде окремо

Members completed: