Best Coding Practices

From Coder Merlin
Within these castle walls be forged Mavens of Computer Science ...
— Merlin, The Coder

What are the General Coding Standards?[edit]

Coding standards are the rules and techniques for writing clean, more readable, and maintainable code in a programming language.

Think of it like casting a spell inscribed on a magic book. The book represents a style guide on formatting the code to make sure it is efficient and free of errors. The spell is the operation being executed by the interpreter according to a set of instructions. Test it out for yourself by right-clicking on “inspect” to catch a glimpse of the markup on a webpage.

While different industries have their own standards, there are universal rules for documenting code you should follow to preserve its integrity and scalability. When learning to code, the key concepts are naming, commenting, indenting, debugging, scoping, and testing.

Best PracticeHintIcon.png
👍 #249

Flowcharts are your friend

Best PracticeHintIcon.png
👍 #657

Use appropriate capitalization

  • Names of types and protocols are UpperCamelCase (Pascal case)
  • Everything else is lowerCamelCase
Best PracticeHintIcon.png
👍 #359

Clarity is more important than brevity

Best PracticeHintIcon.png
👍 #563

Preconditions are your friend

  • Include sufficient information for the message to be useful
Best PracticeHintIcon.png
👍 #174

Great functions exhibit these three vital properties:

  • Easy to read and comprehend
  • Easy to debug
  • Easy to modify to solve a variation of the original task[1]
Best PracticeHintIcon.png
👍 #057

No global variables

  • Global variables are evil
Best PracticeHintIcon.png
👍 #207

Always use appropriate and descriptive variable names

  • nouns are usually most appropriate
Best PracticeHintIcon.png
👍 #208

Always use appropriate and descriptive function names

  • verbs are usually most appropriate
Best PracticeHintIcon.png
👍 #394

Orderly exits from functions

  • In general, avoid mid-function exits
Best PracticeHintIcon.png
👍 #444

Avoid repetition

  • DRY: Do Not Repeat Yourself
  • DIE: Duplication is Evil
Best PracticeHintIcon.png
👍 #502

Scope appropriately

  • Scope is no wider than absolutely necessary
Best PracticeHintIcon.png
👍 #523

Loop appropriately

  • Correct loop type
  • In general, avoid mid-loop exits
Best PracticeHintIcon.png
👍 #029

Always use appropriate indentation

  • Helpful white space
  • Appropriate placement of closing braces and parentheses
Best PracticeHintIcon.png
👍 #074

Use comments to advantage others

  • Deliberate and helpful comments
  • Avoid "obvious" comments
Best PracticeHintIcon.png
👍 #617

Nest appropriately

  • Avoid deep nesting
  • Avoid inappropriate nesting of functions
  • Indent correctly according to nested level
Best PracticeHintIcon.png
👍 #831

Limit line length

Best PracticeHintIcon.png
👍 #907

Organize files appropriately

  • Generally one class per file
Best PracticeHintIcon.png
👍 #947

Hardcode only when there is no other choice

  • All other values should be one of the following:
    • Calculated
    • Retrieved from configuration
Best PracticeHintIcon.png
👍 #959

Do not place extraneous files into source control

  • Exclude all build artifacts
  • Exclude any "backup" files (e.g. main.swift~)

Exercises[edit]

ExercisesExercisesIcon.png
  •  M1297-28  Complete  Merlin Mission Manager  Mission M1297-28.


References[edit]