brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
kotlin-best-practicesCore Kotlin patterns for scope functions, backing properties, and read-only collection interfaces. Use for let/apply/run/also/with choices or encapsulating mutable state; defer general language constructs, extension functions, coroutines/runCatching, Android/Room recipes, and testing/tooling setup.
Independent GitHub snapshot · Automated classification · Original documentation governs
apply: Object configuration (returns object).also: Side effects / validation / logging (returns object).let: Null checks (?.let) or mapping (returns result).run: Object configuration and mapping (returns result).with: Grouping multiple method calls on object (returns result)._state (private mutable, e.g., private val _state = MutableStateFlow(initial)) exposed as val state = _state.asStateFlow() (public read-only). Pattern: _prop private, prop public.List/Map (read-only) publicly; keep MutableList internal.runCatching for simple error handling over try/catch blocks.private or internal. Minimize public surface area.object singletons.