Knaph

Encapsulation

Keeping an object's data behind its methods and properties, so the object can make sure its own rules always hold.

Depth 1 · Foundation

You protect an object's invariants by keeping its data behind methods and properties: `_name` for internal attributes, `@property` to let others read without writing, and setters that raise on invalid values, used in `__init__` too.

Sign in to prove what you know with a short quiz, see how deep you've gone, and earn XP for it.

Sign in with Google

Depths of understanding

  1. 1

    Foundation

    You protect an object's invariants by keeping its data behind methods and properties: `_name` for internal attributes, `@property` to let others read without writing, and setters that raise on invalid values, used in `__init__` too.

Your path here

What's still between you and Encapsulation, depth 1, in the order you can learn it.

  1. 1ProgramDepth 1 · Foundation · Program Basics
  2. 2ExpressionDepth 1 · Foundation · Program Basics
  3. 3Variables in codeDepth 1 · Foundation · Program Basics
  4. 4Program stateDepth 1 · Foundation · Program Basics
  5. 5Input and outputDepth 1 · Foundation · Program Basics
  6. 6Functions in codeDepth 1 · Foundation · Functions
  7. 7Return valuesDepth 1 · Foundation · Functions
  8. 8BooleansDepth 1 · Foundation · Control Flow
  9. 9ConditionalsDepth 1 · Foundation · Control Flow
  10. 10LoopsDepth 1 · Foundation · Control Flow
  11. 11Accumulator patternDepth 1 · Foundation · Control Flow
  12. 12Floating-point numbersDepth 1 · Foundation · Data Types
  13. 13Basic typesDepth 1 · Foundation · Data Types
  14. 14Character encodingDepth 1 · Foundation · Data Types
  15. 15StringsDepth 1 · Foundation · Data Types
  16. 16ListsDepth 1 · Foundation · Data Structures
  17. 17DictionariesDepth 1 · Foundation · Data Structures
  18. 18Classes and objectsDepth 1 · Foundation · Objects and Classes
  19. 19Type conversionDepth 1 · Foundation · Data Types
  20. 20ExceptionsDepth 1 · Foundation · Writing Correct Code
  21. 21EncapsulationDepth 1 · Foundation · Objects and Classes

Where it fits