Code 401: Class 04 - Data Modeling
Questions
- Advantages to Test Driven Design
- Better overall code quality
- Time savings at deployment that offsets the upfront time investment of creating the tests
- Reduction in defect rates
-
beforeEach() Runs a function before each test to prep something for the test afterEach() Runs after every test which allows a developer to run a subsequent function to perform a clean up task after the test
-
The primary downside of test driven development is that there are significant upfront time costs.
-
ES6 Classes vs. Constructor/prototype classes primary difference is that classes can extend parent classes which is not possible with standard constructors
-
ReST (Representative State Transfer protocol) allows transfer of additional information to be transferred over http in terms of pseudo states
Vocabulary
- Functional programming concept regarding programming using pure functions, preventing side-effects, and reducing mutability
- Object-oriented Programming (OOP)
- Encapsulation individual object’s state is kept private in a class, public methods allow for interaction
- Abstraction mechanism that allows for high level interaction
- Inheritance child classes are allowed to use all fields of its parent class as well as add its own
- Polymorphism allows a child class to be treated exactly like its parent class
- Class a template for assembling objects
Super
keyword used to link a child class to its parent
This
keyword that refers to the particular instance in question
- Jest a JavaScript testing framework
- Continuous Integration (CI) a development method where frequent smaller code updates are automatically tested and deployed
- ReST Representational State Transfer protocol
- Data model an abstract representation of real world data in an organized fashion
- SQL (Structured Query Language)
- SQL is relational
- SQL must fit schema
- MongoDB / NoSQL
- Name comes from Humongous
- No strict schema
- Much more flexible
- No relations
- Collections built of documents which look like json
- Big companies often use both
- At very large scale SQL cannot scale horizontally and may hit a theoretical processing limit
- SQL known as relational databases, NoSQL are non-relational or distributed
- NoSQL are document based instead of table based
- Complex queries are better suited to SQL
- NoSQL is better suited to hierarchical data
- NoSQL preferred for big data
- MongoDB NoSQL that stores data in json like documents with dynamic schema
- Very quick for simple queries
- Horizontally scalable
- Dynamic schema allows changes to the schema without modifying all existing data
- NoSQL data modeling often starts with application-specific queries
- Designed to answer the question “What questions do I have?”
- May require better understanding of data structures
- Good for hierarchical or graph-like data
- Denormalization can lead to greater total data volume but more efficient querying
Return to reading-notes Deployed Site
Return to reading-notes Mark Down