- Name 3 advantages to Test Driven Development source
- Reduced time required for project development
- Better program design and higher code quality
- Detailed project documentation
- In what case would you need to use beforeEach() or afterEach() in a test suite? source
- use
beforeEach()when you have work that needs to be completed repeatedly before multiple tests - use
afterEach()when to perform work that needs to be completed repeatedly after multiple tests - example initializing and clearing databases
- use
- What is one downside of Test Driven Development
- It adds time to the development lifecycle because that same set of code now requires the development of a test
- What’s the primary difference between ES6 Classes and Constructor/Prototype Classes?
- The primary difference is in how the syntax is written, they ultimately do the same thing, the ES6 Classes just do more behind the scenes source
- Why REST?
- One of the key advantages of REST APIs is that they provide a great deal of flexibility. Data is not tied to resources or methods, so REST can handle multiple types of calls, return different data formats and even change structurally with the correct implementation of hypermedia. source
- functional programming - Functional programming (also called FP) is a way of thinking about software construction by creating pure functions. It avoid concepts of shared state, mutable data observed in Object Oriented Programming. scource
- object-oriented programming (OOP) - Object-oriented programming (OOP) is a computer programming model that organizes software design around data, or objects, rather than functions and logic. source
- class - Classes are a template for creating objects. They encapsulate data with code to work on that data. source
- super - a keyword in Javascript used to access and call functions on an objects's Parent source
- this - a keyword in Javascript that is determined by how a function is called (runtime binding) source
- Test Driven Development (TDD) - can be boiled down to all production code is written in response to a test case source
- Think about the behaviors that your implementation requires. Select a behavior to implement.
- Write a test that validates the behavior. The test case must fail.
- Add only enough code to make the new test case and all previous test cases pass.
- Refactor the code to eliminate duplicate code, if necessary.
- Select the next requirement and repeat steps 1 - 4.
- Jest - a JavaScript testing framework designed to ensure correctness of any JavaScript codebase. It allows you to write tests with an approachable, familiar and feature-rich API that gives you results quickly. source
- Continuous Integration (CI) - Continuous Integration - workflow to help ensure new code developed will integrate into the current version of the software.
- REST - an acronym for REpresentational State Transfer and an architectural style for distributed hypermedia systems. source
- Data Model - Data modelling is the process used to structure how data is stored, as well as modelling relationships within the data. source
- Which 3 things had you heard about previously and now have better clarity on?
- TDD, class, super
- Which 3 things are you hoping to learn more about in the upcoming lecture/demo?
- Data Model, REST, functional programming
- What are you most excited about trying to implement or see how it works?
- REST