Important concepts in LArSoft design include:
- Designing in LArSoft – design principles and practices
 - Data Products – the means by which a module can learn the result of other modules.
 - Algorithms – An algorithm is a class, with one or more instances managed by user code, that performs a task or part of it
 - Services – A LArSoft service is a class, with a single instance managed by the framework, that performs an operation
 - V10+ Geometry | PreV10 Geometry – Simulation/reconstruction knows how to access different geometries, but is not dependent on any specific one.