diff --git a/Programming-Guide.md b/Programming-Guide.md index e08455e..b3daa8b 100644 --- a/Programming-Guide.md +++ b/Programming-Guide.md @@ -181,11 +181,11 @@ Each context is fully isolated—changes in one do not affect any others—makin ## Best Practices -* **Define keys as constants** – centralize Key definitions to avoid typos and ensure consistency across the codebase. -* **Scope listeners carefully** – register listeners only where reactive updates are needed; remove them when the owning component is disposed. (The framework uses weak references to help, but explicit cleanup is still good practice.) -* **Use descriptive, unique key names** – this prevents accidental collisions within a context and improves readability. -* **Separate concerns with multiple contexts** – create distinct contexts (e.g., "order", "user", "session") to isolate unrelated data and reduce coupling. -* **Treat named contexts as ephemeral** – hold onto a CtxInterface only for as long as you need it; once all strong references are gone, the context is automatically reclaimed by the garbage collector. +* **Define keys as constants** - centralize Key definitions to avoid typos and ensure consistency across the codebase. +* **Scope listeners carefully** - register listeners only where reactive updates are needed; remove them when the owning component is disposed. (The framework uses weak references to help, but explicit cleanup is still good practice.) +* **Use descriptive, unique key names** - this prevents accidental collisions within a context and improves readability. +* **Separate concerns with multiple contexts** - create distinct contexts (e.g., "order", "user", "session") to isolate unrelated data and reduce coupling. +* **Treat named contexts as ephemeral** - hold onto a CtxInterface only for as long as you need it; once all strong references are gone, the context is automatically reclaimed by the garbage collector. ## Complete Example