Code Fellows Notes
It is software which lies between an operating system and the applications that are running on it. Allowing communication and acting as a bridge between the system/database and applications.
Node Web Framework
The framework is flexible, and allows you to handle tasks how you choose. You can insert almost any compatible middleware that you like into the request handling chain, in whatever order you like. The app can be structured however you choose.
A module is a JavaScript library/file that you can import into other code using Node’s require()
function. Express itself is a module, as are the middleware and database libraries that we use in our Express applications.
Modularity is useful as it allows you to organie your code into manageable parts. “a monolithic single-file application is hard to understand and maintain. Using modules also helps you manage your namespace, because only the variables you explicitly export are imported when you use a module.”
npm consists of three distinct components:
Use the website to discover packages, set up profiles, and manage other aspects of your npm experience. For example, you can set up organizations to manage access to public or private packages.
The CLI runs from a terminal, and is how most developers interact with npm.
8.19.1
npm install jshint
“Test-driven development” refers to a style of programming in which three activities are tightly interwoven: coding, testing (in the form of writing unit tests) and design (in the form of refactoring).
Rules:
Tests help reduce defects in code and lead to improved design qualities.
“By focusing on writing only the code necessary to pass tests, designs can often be cleaner and clearer than is achieved by other methods.” - Kent Beck Test Driven Development by Example
Individual:
Team:
Delivery develops software in a way that it is released at any time versus deployment is an extension of CI that allows changes in real time