[V3] Implement new Concept Exercise: concept/classes-intermediate
See original GitHub issueThis issue describes how to implement the class
concept exercise for the JavaScript track and is a continuation of exercism/javascript#942 .
Getting started
Please please please read the docs before starting. Posting PRs without reading these docs will be a lot more frustrating for you during the review cycle, and exhaust Exercism’s maintainers’ time. So, before diving into the implementation, please read up on the following documents:
Please also watch the following video:
Goal
The goal of this exercise is to teach the student how to consume classes and their properties/methods both from static and instantiation standpoints within JavaScript.
Learning objectives
- Understand the
new
keyword. - Understand the
static
keyword. - Understand how to consume instance methods and fields
- Understand how to consume static methods.
Out of scope
- Factory functions
- Class expressions (declaring a class with a var statement)
- Static properties & static methods
- extends keyword
- Class inheritance with super
- Class properties (
get
,set
, andObject.defineProperty
)
Concepts
- Class instantiation with the
new
keyword - Accessing class properties from outside of a class
- Calling class methods from outside of a class
- Calling static methods from outside of a class
Prerequisites
classes-intro
booleans
numbers
strings
Resources to refer to
Hints
Note: most resources also include inheritance and so suggestions are welcome for resources that expressly tackle the goals without venturing out of scope.
After
Note: most resources also include inheritance and so suggestions are welcome for resources that expressly tackle the goals without venturing out of scope.
- MDN class fields - after because it goes out of scope and touches on TC39 proposals (possibly a bad resource?)
Representer
No changes needed.
Analyzer
No changes needed.
Implementing
See the Implementation Guide for JavaScript Concept Exercises
for more details.
Help
If you have any questions while implementing the exercise, please post the questions as comments in this issue.
Issue Analytics
- State:
- Created 3 years ago
- Reactions:1
- Comments:11 (7 by maintainers)
Top GitHub Comments
Intermediate
one is currently at a standstill. Some work stuff came up and I am now the only person working on what needs to be delivered in a week.@SleeplessByte PR coming for
classes-intro
soon! Just finishing up the tests.