-
Notifications
You must be signed in to change notification settings - Fork 249
JavaScript Foundations
Below are some short lessons and resources on programming concepts.
As a single threaded language, JavaScript or ECMAScript, can only execute one line of code at a time. The currently running line is kept as part of a call stack (which you can see in your debugger) as a list of functions. Each new function, as it is executed, is pushed to the top of the call stack and popped from the top upon return. Using the callback queue and the event loop, built into the ECMAScript environment, it is possible to queue function calls on a new call stack for later execution. This is primarily how DOM events, such as click or scroll, are able to execute callback handler functions.
Video - What is the heck is the event loop anyway?
A 'set' is, mathematically speaking, an unordered group/pile of unique items; think venn diagrams. Two sets can intersect, such that they have a series of indentical and potentially differing items. A set may be a subset or superset of any other, in that it contains only part of or includes the entirety of the second set. Sets can be joined in a union forming larger sets or split into further subsets.
Webpage - Basic set theory
Video - Introduction to set theory - Discrete Mathematics
Set theory is used in a variety of ways in both the Web APIs and libraries associated with JavaScript.
jQuery is a utility library, predominantly used for manipulating the DOM. jQuery's main function, usually $()
, returns a subset of document elements (<div>, <span>, <a>
) against which to perform functions. jQuery has functions for uniting jQuery sets, for generating jQuery subsets and for traversing the DOM heirarchy. It is possible using jQuery to attach a single event handler to all of the elements in the set using a single line. jQuery uses an extended version of the CSS selector syntax to create a subset of the elements in the document.
Array is a core JavaScript class designed to hold a set of variables ordered by an index, starting at index 0. Array has native functions for uniting arrays, for generating Array subsets and for transforming and manipulating array items.
Underscore.js and lodash are both utility libraries for JavaScript. They both contain a series of functions which allow for Array interections, differences, unions, sorting, grouping, etc.
As may be apparant from the above libraries, implementations of the core set theory concepts often allow for non-unique set items and often extend sets with sort order, item names and a whole raft of problem specific capabilities.
SQL (structured query language)
jQuery Array lodash underscore sql CSS
- Framework in Five Minutes
- Setting up Your Development Environment
- Manual Installation of the Adapt Framework
- Adapt Command Line Interface
- Common Issues
- Reporting Bugs
- Requesting Features
- Creating Your First Course
- Styling Your Course
- Configuring Your Project with config.json
- Content starts with course.json
- Course Localisation
- Compiling, testing and deploying your Adapt course
- Core Plugins in the Adapt Learning Framework
- Converting a Course from Framework Version 1 to Version 2
- Contributing to the Adapt Project
- Git Flow
- Adapt API
- Adapt Command Line Interface
- Core Events
- Core Model Attributes
- Core Modules
- Web Security Audit
- Peer Code Review
- Plugins
- Developing Plugins
- Developer's Guide: Components
- Developer's Guide: Theme
- Making a theme editable
- Developer's Guide: Menu
- Registering a Plugin
- Semantic Version Numbers
- Core Model Attributes
- Adapt Command Line Interface
- Accessibility v3
- Adapt Framework Right to Left (RTL) Support