Review, Research, and Discussion
- Name 3 advantages to Test Driven Development
- Better program design and higher code quality.
- Reduces the time required for project development.
- Code flexibility and easier maintenance.
- In what case would you need to use beforeEach() or afterEach() in a test suite?
- when a method needs to be run before a test and another method run after it.
- What is one downside of Test Driven Development ?
- if the developer leaves or forgets the reason that the test returns one specific value and not some other.
- What’s the primary difference between ES6 Classes and Constructor/Prototype Classes?
- ES6 Classes are syntactical sugar so it is much easier to implement.
- Why REST?
1) REST is Easy to Understand and Implement. 2) REST Makes your Application More Scalable. 3) Caching is Easier with REST. 4) REST is Flexibile.
Vocabulary Terms
functional programming :
- is the process of building software by composing pure functions, avoiding shared state, mutable data, and side-effects.
object-oriented programming (OOP) :
- It is the ability of creating different objects from a common object.
class :
- Classes are a template for creating objects.
super
andthis
: super
a keyword to call the super constructor .this
a keyword to define properties inside the{}
Test Driven Development (TDD) :
- is the act of first deciding what you want your program to do (the specifications), formulating a failing test, then writing the code to make that test pass.
Jest :
- Is a JavaScript testing framework designed to ensure correctness of any JavaScript codebase.
Continuous Integration (CI) :
- Is a pattern of programming combining testing, safety checks, and development practices to confidently push code from a development branch to production ready branch continuously.
REST
- Stands for REpresentational State Transfer, it is web standards based architecture and uses HTTP Protocol.
Data Model
- a model that describe the data and their relations.