Skip to content

TASK-C05: Design Patterns and .NET Techniques

  • Status: Ready
  • Scope Type: Repo-centered engineering techniques module
  • Recommended Model Tier: Balanced to Frontier
  • Recommended Reasoning: Medium

Objective

Write the course module that teaches the repo through OOP, patterns, MVVM, state management, DI, testing seams, and modern .NET techniques.

Scope

Create one substantial module that explains:

  • domain modeling and boundaries
  • MVVM and presentation separation
  • service abstractions and dependency injection
  • state store pattern
  • persistence boundaries
  • testing seams
  • modern C# and .NET techniques visible in the repo

Non-Scope

  • a general textbook on design patterns
  • duplicating every lesson in full
  • large code refactors

Files To Read First

  • relevant pages under docs/lessons/industrial-desktop-systems
  • docs/adrs/ADR-001-use-central-app-state-store.md
  • src/InspectionPrototype.Application
  • src/InspectionPrototype.Presentation
  • tests/InspectionPrototype.Tests

Deliverable

  • docs/course/05-design-patterns-and-dotnet-techniques.md

Verification

  • theory is tied to actual code, not generic examples
  • existing lessons are linked where appropriate
  • npm run docs:build

Copy/Paste Prompt

text
You are working in C:\Lcn.Workspaces\lcn-wafer-inspection-desktop.

Audience: a newcomer software engineer or automation engineer learning this project.
Goal: turn this repo into a high-quality engineering training course, not just reference docs.
Style: practical, detailed, blog-quality English; clear headings; concrete examples; no fluff.
Ground all claims in the repo docs and code. Do not invent behavior that the current project does not support.
Prefer reusing and linking existing content under docs/lessons, docs/specs, docs/tasks, docs/adrs, docs/implementation, and the source code when helpful.
For diagrams, do not generate binary assets. Instead, produce a Draw.io-friendly diagram brief: title, purpose, nodes, edges, grouping, caption, and destination file path.
If you edit docs, keep VitePress navigation coherent and make sure npm run docs:build passes.

Task: Write the design and engineering techniques course module for this repo.

Create:
- docs/course/05-design-patterns-and-dotnet-techniques.md

Explain the project through these lenses:
- OOP boundaries and domain modeling
- MVVM and presentation separation
- service abstractions and dependency injection
- state store pattern
- persistence boundaries
- testing seams
- modern C# and .NET techniques actually visible in this codebase

Prefer linking to existing lessons where they already cover theory well.
Only add new theory where the repo-specific explanation is missing.
End with a “what to imitate vs what to be careful with” section.

Verify with npm run docs:build.

Docs-first project memory for AI-assisted implementation.