|
| 1 | +# Homework JavaScript3 Week 3 |
| 2 | + |
| 3 | +## **Todo list** |
| 4 | + |
| 5 | +1. Practice the concepts |
| 6 | +2. JavaScript exercises |
| 7 | +3. Code along |
| 8 | +4. PROJECT: Hack Your Repo III |
| 9 | + |
| 10 | +## **1. Practice the concepts** |
| 11 | + |
| 12 | +## **2. JavaScript exercises** |
| 13 | + |
| 14 | +## **3. Code along** |
| 15 | + |
| 16 | +## **4. PROJECT: Hack Your Repo III** |
| 17 | + |
1 | 18 | # Homework Week 3 |
2 | 19 |
|
3 | 20 | ``` |
@@ -38,8 +55,7 @@ The homework for week 3 will build on the work you did in week 2. You will creat |
38 | 55 | This week you will work with all JavaScript files in the `src` folder. The assignment consists of two parts: |
39 | 56 |
|
40 | 57 | 1. Refactor all `.then()` and `.catch()` methods with `async`/`await` and `try...catch`. |
41 | | -2. Make your app ARIA-compliant (see below). |
42 | | -3. Refactor your application to use ES6 classes. |
| 58 | +2. Refactor your application to use ES6 classes. |
43 | 59 |
|
44 | 60 | #### 2.2.1 async/await |
45 | 61 |
|
@@ -71,65 +87,3 @@ _Read:_ |
71 | 87 |
|
72 | 88 | - HYF fundamental: [ES6 Classes](https://github.com/HackYourFuture/fundamentals/blob/master/fundamentals/oop_classes.md#es6-classes) |
73 | 89 | - More on ES6 classes: [ES6 Classes in Depth](https://ponyfoo.com/articles/es6-classes-in-depth) |
74 | | - |
75 | | -#### 2.2.3 ARIA-compliance (BONUS) |
76 | | - |
77 | | -Please review the material from the HTML/CSS module: [Get familiar with Accessible Rich Internet Applications (ARIA)](https://github.com/HackYourFuture/HTML-CSS/tree/master/Week1#get-familiar-with-accessible-rich-internet-applications-aria). |
78 | | - |
79 | | -For the GitHub application ARIA-compliance means that the Contributors list should either be a native HTML list (i.e. using `ul` and `li` elements) or otherwise marked with an appropriate ARIA **role**. Furthermore, a user should be able to navigate through all interactive elements using the keyboard (e.g., using the **Tab** key). Pressing **Enter** on such an element should be equivalent to clicking the mouse. |
80 | | - |
81 | | -#### 2.2.4 Handing in your homework |
82 | | - |
83 | | -If necessary, review the instructions how to [Hand in homework](https://github.com/HackYourFuture/fundamentals/blob/master/fundamentals/homework_pr.md) using GitHub pull request. |
84 | | - |
85 | | -To test whether your code will be accepted when you submit your homework as a pull request you need to ensure that it does not contain ESLinr errors. Open a terminal window in VSCode and type the following command: |
86 | | - |
87 | | -``` |
88 | | -npm test |
89 | | -``` |
90 | | - |
91 | | -If any errors or warnings are reported by this command you need to fix them before submitting a pull request. |
92 | | - |
93 | | -In addition, check for the following: |
94 | | - |
95 | | -- Have you removed all commented out code (should never be present in a PR)? |
96 | | -- Do the variable, function and argument names you created follow the [Naming Conventions](../../../../fundamentals/blob/master/fundamentals/naming_conventions.md)? |
97 | | -- Is your code well-formatted (see [Code Formatting](../../../../fundamentals/blob/master/fundamentals/code_formatting.md))? |
98 | | - |
99 | | -If the answer is 'yes' to the preceding questions you are ready to follow these instructions: |
100 | | - |
101 | | -1. Push your `week3` branch to GitHub: |
102 | | - |
103 | | - ``` |
104 | | - git push -u origin week3 |
105 | | - ``` |
106 | | - |
107 | | -2. Create a pull request for your `week3` branch. |
108 | | - |
109 | | -## Step 3: Read before next lecture |
110 | | - |
111 | | -_Deadline Sunday morning_ |
112 | | - |
113 | | -Go trough the reading material in the [README.md](https://github.com/HackYourFuture/Node.js) of the Node repository to prepare for your next class. |
114 | | - |
115 | | -## Alternative _BONUS_ : Code Kata Race |
116 | | - |
117 | | -If you haven't already join our clan: "Hack Your Future" in codewars |
118 | | - |
119 | | -Solve the following problems: |
120 | | - |
121 | | -- [Problem 1](https://www.codewars.com/kata/keep-up-the-hoop) |
122 | | -- [Problem 2](https://www.codewars.com/kata/find-the-first-non-consecutive-number) |
123 | | -- [Problem 3](https://www.codewars.com/kata/negation-of-a-value) |
124 | | -- Some more [Homework](https://www.codewars.com/collections/hyf-homework-1) |
125 | | - |
126 | | -_Hints_ |
127 | | - |
128 | | -- Hint for Q1: split your code into two parts, one part for the case that one of the two strings has an extra letter at the start or the end but is otherwise identical & one part for the case that the strings are the same length but one character is different in one of the strings |
129 | | -- Also for Q1 this function on strings might be useful: [JavaScript String slice() method](https://www.w3schools.com/jsref/jsref_slice_string.asp) |
130 | | -- Also potentially useful: [JavaScript String charAt() Method](https://www.w3schools.com/jsref/jsref_charat.asp) |
131 | | -- [Hint for Q2](https://www.w3schools.com/jsref/jsref_sort.asp) Also there are no sample tests, you need to use submit |
132 | | - |
133 | | -Remember the person with the most kata points gets a prize from Gijs (and you can do exercises on this website without us assigning them - anything kyu 7 or kyu 8 you can try to do - kyu 6 or lower is probably too hard) --> |
134 | | - |
135 | | --[MORE BONUS](https://www.codewars.com/collections/hyf-homework-1-bonus-credit) :collision: |
0 commit comments