• Decomposing programs into functions for modular code.
  • Organizing code using modules for flexibility and reuse.