Тепер ви знаєте багато про JavaScript OOP. Пам'ятаєте tiny JS world? Час використовувати свою нову силу.
-
Удосконалюйте свій tiny JS world model, яку ви форкнули звідси. Цього разу використовуйте свої улюблені методи JS ООП для збереження принципів DRY and SOLID.
На цей раз вам не потрібен форк, працюйте з наявним репо. Git зберігає історію для вас.
Ці матеріали будуть корисні.
- Якщо класи одного рівня (peer classes/siblings) мають такі самі властивості, то вони повинні бути узагальнені в їхньому базовому (батьківському) класі
- Класи для видів, які не мають рук за природним задумом - не мають рук або будь-якої еквівалентної властивості і не успадковують такі властивості від жодного з базових/батьківських класів
- Властивості класу, які є частинами рядка презентації об’єкта, перераховуються/вказуються явно
(i.e.
Object
методиvalues
,keys
,entires
або такі конструкціїfor (key in obj)
не використовуються) - Конструктор рядків презентації об’єкта є методом класу, а не незалежною функцією
- Конструктор класу визначається іменованими параметрами
- Клас не призначає і не змінює властивість, що належить будь-якому іншому класу (визначена в будь-якому іншому класі)
- Дочірній клас не повинен безпосередньо використовувати успадковану властивість для створення рядка презентації об’єкта
- Код є OOP, SOLID (eng, rus) та DRY compliant
- Застряг або щось не зовсім зрозуміло? Задайте питання
- Для цього завдання вам знадобиться review коду:
- Для студентів курсу Frontend 2022: будь ласка, дотримуйтесь цих інструкцій
- Для студентів p2p course: будь ласка, дотримуйтесь цих інструкцій
- Зауважте, що особливо це завдання вимагає від вас подання
один файл (
index.js
лише) доfrontend-2022-homeworks
абоfrontend-2019-p2p
репозиторію для перевірки коду.
- Чудова робота! Діліться своїми досягненнями з іншими –
опублікувати повідомлення в course channel:
OOP Exercise — #done
(абоOOP Exercise — #p2p_done
якщо ви студент курсу p2p) і додайте посилання до свого репо. Цей крок важливий, оскільки він допомагає наставникам відстежувати ваш прогрес! - Прочитайте одну-дві статті про ООП за посиланнями в цьому репо
Fun Fun Function - Composition over Inhertance
➡️ Ідіть далі Offline Web Applications