Optimizing names
- Uncle Bob Clean Code Pdf
- Clean Code Github
- Clean Code Cheat Sheet Roblox
- Robert C Martin Clean Code
- Clean Code Cheat Sheet Pdf
Title: Enablon Clean Code Cheat Sheet by Galad - Cheatography.com Created Date: 5014Z. Call of duty 4 profil download ebene 55 soda. Pandemic 2gaming potatoes. Mcdonalds ethical issues ethics of mcdonalds. Git commands listed in a one-page reference cheat sheet. Download the Git Commands Cheat Sheet with all the important commonly used commands.
- Why it exists?- What does it do?
- How is it used?Differences between variables should be as close to the beginning of the name as possible.Avoid noisy labels. Use mature optional typing system.Make Siri say it. Avoid abbreviation and make your names self-explanatory.Adding the datatype to a variable should be replaced with typing information.
features: DataFrame
vs. features_df
No magic numbers. Use constants.Be consistent! Pick a single word per concept, and use it everywhere it fits in.Use technical names for backend, and domain names as you get closer the customer.Optimize functions
Small is beautiful. 3, 5, maybe 5 lines max!FUNCTIONS SHOULD DO ONE THING. THEY SHOULD DO IT WELL. THEY SHOULD DO IT ONLY. Stop at maximum 3 arguments!Avoid boolean arguments. This points to the fact that the function does more than one thing.Lengthy list of configuration arguments should be grouped in a configuration object that share a concept.Comman Query Separation (CQS)- Command:
Uncle Bob Clean Code Pdf
a function is changing some external “state”.- Query: a function is returning some “information”.Avoid side effects in feature engineering pipelines.Make temporal couplings explicit.DRY: Don't Repeat Yourself Eliminate Duplicates, Doubles, and Homologues.
Naming conventions
FunctionUse verbs to represent actions. Useis_
for functions that return a boolean.get_features, fit, is_completed
VariableSee scope length guidelines.x, var, my_variable
ClassUse nouns to represent objects.Model, DataLoader
MethodLowercase word(s). Separate with underscore.class_method, method
ConstantUppercase single letter or word(s). Separate with underscore.CONSTANT, MY_CONSTANT, MY_LONG_CONSTANT
ModuleShort lowercase word(s). Separate with underscore.module.py, my_module.pyPackageShort lowercase word(s). Do NOT separate with underscore.package, mypackageThe Scope Length Guidelines
How to avoid side effects in DataFrames
Copy any data coming in the function and return a fresh copy, after all the modifications.Return only the transformed columns as a separated objects.Clean Code Github
Append-only inside the functions.Handling Exceptions
Promote the Happy Path with Exceptions.Separate the Happy Path from the Outliers.Don’t reuse unrelated Exceptions types.Programming recommendations
Don’t compare Boolean values to True or False using the equivalence operator.Use the fact that empty sequences are falsy in if statements.Useis not
rather than not .. is
in if
statements.Don’t use if x:
when you mean if x is not None:
.Use .startswith()
and .endswith()
instead of slicing strings.Blank lines
Surround top-level functions and classes with two blank lines.Surround method definitions inside classes with a single blank line.Use blank lines sparingly inside functions to show clear steps.Formulas always break before binary operations.Whitespaces in Expressions and Statements
Assignment operators (=, +=, -=,
and so forth).Exception: when =
is used to assign a default value to a function argument, do not surround it with spaces.Comparisons (, !=, >, <. >=, <=
) and (is, is not, in, not in
).It is better to only add whitespace around the operators with the lowest priority, especially when performing mathematical manipulation.Booleans (and, not, or
).