ch10
dz / grokking_simplicity / ch10Summary
Grokking Simplicity Chapter 10: First Class Functions Part 1
Node Tree
- first_class_vs_not
- higher_order
- implicit_argument_function_name
- implicit_funcname_examples
- replace_body_with_callback
Nodes
| implicit_argument_function_name | |
| content | Code Smell: implicit argument in function name |
| children | make_implicit_explicit |
| make_implicit_explicit | |
| content | Refactor: make implicit explicit |
| children | value_first_class |
| parents | implicit_argument_function_name |
| implicit_funcname_examples | |
| content | Examples of Implicit Argument in Function Name: do_foo, do_bar, do_blah, etc. |
| value_first_class | |
| content | makes value first class |
| parents | make_implicit_explicit |
| first_class_vs_not | |
| content | First Class vs Not First Class |
| children | non_firstclass_js, things_firstclass_can_do |
| non_firstclass_js | |
| content | Non-Firstclass things in JS |
| children | arith_op, for_loops, try_catch, if_stmt |
| parents | first_class_vs_not |
| arith_op | |
| content | Arithmetic Operations |
| parents | non_firstclass_js |
| for_loops | |
| content | For Loops |
| parents | non_firstclass_js |
| if_stmt | |
| content | If Statement |
| parents | non_firstclass_js |
| try_catch | |
| content | Try/Catch |
| parents | non_firstclass_js |
| things_firstclass_can_do | |
| content | things first-class values can doo |
| children | pass_arg_to_function, store_in_array, assign_to_variable, return_from_function |
| parents | first_class_vs_not |
| assign_to_variable | |
| content | Assign to Variable |
| parents | things_firstclass_can_do |
| pass_arg_to_function | |
| content | Pass as argument to function |
| parents | things_firstclass_can_do |
| return_from_function | |
| content | Return from function |
| parents | things_firstclass_can_do |
| store_in_array | |
| content | Store in array |
| parents | things_firstclass_can_do |
| higher_order | |
| content | Higher Order: functions that take functions as input |
| replace_body_with_callback | |
| content | Replace Body With Callback |
| children | extract_body_section, extract_into_function, identify_before_body_after |
| identify_before_body_after | |
| content | Identify Before, Body, and After sections |
| children | before_after_dont_change, extract_into_function |
| parents | replace_body_with_callback |
| extract_into_function | |
| content | extract whole thing into function |
| children | extract_body_section |
| parents | identify_before_body_after, replace_body_with_callback |
| extract_body_section | |
| content | extract body section into a function passed as argument to that function |
| parents | extract_into_function, replace_body_with_callback |
| before_after_dont_change | |
| content | Before/After sections don't change. They form a "hole" that you slip different code into |
| parents | identify_before_body_after |