Applying NASA Coding Standards to JavaScript
Offered By: JSConf via YouTube
Course Description
Overview
Syllabus
Intro
Unification - effective method to decrease diversity. Aim for unification is to place elements in particular order building strict system which is comfortable to use.
The same works for engineering Unification never stops
Unification Decreases development cost standardizing development flow and technologies stack
Do one thing Long functions: less readable, not reusable, harder to test, harder to reactor
Predictability • If you want to write reliable code-drop to write cool one and write predictable • Define coding standard and follow it . Use static analysis to support standard and reduce chance for defect: ESLint + whole lot of plugins, presets • Collect metrics: Sonarube, Scrutinizer, Plato • Analyze types: Flow/ Closure Tools / Type
Do not use dynamic memory allocation after initialization
Test well • Higher tests density is less defects you get • Minimal amount of tests is 2 per function • Watch for anomalies in system state during run time. Generate and handle errors in case of critical failures
Data objects must be declared at the smallest possible level of scope
The return value of non-void functions must be checked by each calling function, and the validity of parameters must be checked inside each function
The use of pointers should be restricted. Specifically, no more than one level of dereferencing is allowed. Function pointers are not permitted
All code must be compiled, from the first day of development, with all compiler warnings enabled
If red? Do not panic. Simply, prioritize, refactor and add tests piece by piece.
Taught by
JSConf
Related Courses
Deno - Next Generation JavaScript RuntimeJSConf via YouTube How I Got 1600 Stars on GitHub in 2 Months of Open Source Work
JSConf via YouTube Is it Okay to Pursue Functional Programming on Frontend - JSConf Korea
JSConf via YouTube If - Extensible Design - Return "Work Life Balance"
JSConf via YouTube React x Web Components - How It Is and How It Could Be
JSConf via YouTube