-
Notifications
You must be signed in to change notification settings - Fork 11
Advanced javascript backend #264
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
b4c739a
7d40b96
80dcb90
e61dbe1
17bdb56
c482fbe
9abf0fb
04efac1
efdfe70
bcf88f6
bb03b8a
45d6033
5a56269
752267f
5523180
dc4f577
f923695
4d1ad76
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,3 @@ | ||
| week*/session-materials/solutions.js | ||
| week*/assignment-solutions.js | ||
| _teaching-notes.md |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,9 +1,28 @@ | ||
| # Advanced JavaScript (Backend) | ||
| # Advanced JavaScript | ||
|
|
||
| Coming soon | ||
| This module is about the JavaScript patterns that power backend systems: transforming data with array methods, handling asynchronous operations with callbacks and Promises, consuming APIs, and modeling domains with classes. | ||
|
|
||
| ## Contents | ||
|
|
||
| | Week | Topic | Preparation | Session Plan | Assignment | | ||
| | ---- | ---------------------------------------------------------- | ------------------------------------- | ----------------------------------------------------- | ----------------------------------- | | ||
| | 1. | [Array Methods](./week1/README.md) | [Preparation](./week1/preparation.md) | [Session Plan](./week1/session-plan.md) (for mentors) | [Assignment](./week1/assignment.md) | | ||
| | 2. | [Callbacks & Delayed Execution](./week2/README.md) | [Preparation](./week2/preparation.md) | [Session Plan](./week2/session-plan.md) (for mentors) | [Assignment](./week2/assignment.md) | | ||
| | 3. | [Promises & async/await](./week3/README.md) | [Preparation](./week3/preparation.md) | [Session Plan](./week3/session-plan.md) (for mentors) | [Assignment](./week3/assignment.md) | | ||
| | 4. | [Classes & Object-Oriented Programming](./week4/README.md) | [Preparation](./week4/preparation.md) | [Session Plan](./week4/session-plan.md) (for mentors) | [Assignment](./week4/assignment.md) | | ||
|
|
||
| ## Module Learning Goals | ||
|
|
||
| By the end of this module, you will be able to: | ||
|
|
||
| TODO | ||
| - [ ] Use array methods (`forEach`, `map`, `filter`, `reduce`) to transform, query, and aggregate data | ||
| - [ ] Chain array methods into data transformation pipelines | ||
| - [ ] Write concise arrow functions with implicit and explicit returns | ||
| - [ ] Pass functions as arguments and return functions from functions (higher-order functions) | ||
| - [ ] Use callbacks for synchronous and asynchronous operations, including error-first callbacks | ||
| - [ ] Explain the difference between synchronous and asynchronous code execution in JavaScript | ||
| - [ ] Consume and create Promises using `.then()`, `.catch()`, and `new Promise()` | ||
| - [ ] Use `async`/`await` with `try`/`catch` for clean asynchronous code | ||
| - [ ] Fetch data from APIs and run parallel requests with `Promise.all()` | ||
| - [ ] Declare classes with constructors, methods, and static methods | ||
| - [ ] Use inheritance with `extends` and `super()` | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This data should live in hyf-assignment-repo so trainees have it available on their local machines already. I will move it there after this PR is merged, no worries :) |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this file is missing the "contents" and "module learning goals" sections. These are required. They can be seen in the template here
The module learnings goals are a higher level summary of the learning goals of each session, if that helps (AI can probs summarise that nicely :D)
I can see you have a kind of similar "course overview" section, but that needs renaming and reformatting, and moving to the top of the page.
(required because, for example, we pull the learning goals here into the course summary page for an overview of everything trainees learn on the course).