Skip to content

Latest commit

 

History

History
78 lines (59 loc) · 4.15 KB

js-post-oop.md

File metadata and controls

78 lines (59 loc) · 4.15 KB

MIT Licensed Awesome        Telegram

OOP exercise

Now you know a lot about JavaScript OOP. Remember that tiny JS world? Time to use your new power.

Assignment

  1. Improve your tiny JS world model you forked from here. This time use your favourite JS OOP methods to keep your code DRY and SOLID.

    You don't need forking this time, work with the repo you've already got. Git keeps history for you.

    You will find these materials helpful.

Most common issues to address

  • If peer classes (siblings) have same properties those must be generalized to their base (parent) class
  • Classes for species that do not have hands by natural design, do not consequently have hands or any equivalent property and do not inherit such properties from any of the base/parent classes
  • Class properties that are parts of an object's presentation string are listed/specified explicitly (i.e. Object methods values, keys, entires or constructions like for (key in obj) aren't used)
  • Object's presentation string builder is a class method, not an independent function
  • Class constructor is defined with named parameters
  • A class doesn't assign or change property owned by any other class (defined in any other class)
  • A child class shouldn't directly use an inherited property to build an object's presentation string
  • The code is OOP, SOLID (eng, rus) and DRY compliant
  • Got stuck or anything is not really clear? Ask a question

Code review and assignment finalization

When complete do the following:

  1. You will require code review for this task:
    • For Frontend 2021 course students: please, follow these instructions
    • For p2p course students: please, follow these instructions
    • Note, that especially this task requires you to submit a single file (index.js only) to the frontend-2021-homeworks or frontend-2019-p2p repo for code review.
  2. Great job! Go ahead and share your progress with others – post a message in course channel: OOP Exercise — #done (or OOP Exercise — #p2p_done if you are p2p course student) and add the link to your repo. This step is important, as it helps mentors to track your progress!
  3. Study Extra Materials below to improve your skills and read an article or two on OOP under the links in this repo

You have completed OOP tasks section. We shall appreciate your feedback on this section especially if you're doing this course from Ukraine. Please, grant us 10-15 minutes of your time and complete this feedback form.

When you finish this task you can proceed to the next one.

Extra Materials

Fun Fun Function - Composition over Inhertance

Done?

➡️ Go forward to Offline Web Applications

⤴️ Back to Contents