토픽
Generic Host / 앱 설계 토픽
Generic Host, BackgroundService, DI, 설정, 로그, 기동과 정지의 설계를 한데 모아 따라갈 수 있는 .NET 앱 설계 토픽입니다.
이 토픽에서 정리하고 싶은 것
.NET 앱이 조금 커지면 Main, Program.cs, 폼 초기화, 상주 처리, 설정 읽기, 로그 초기화가 흩어지기 시작합니다.
이 토픽은 앱 전체의 기동과 정지를 어떻게 설계할 것인가를 Generic Host를 축으로 한데 모아 따라가기 위한 자리입니다.
- DI, 설정, 로그를 어디에서 연결할 것인가
BackgroundService나 상주 처리의 수명을 누가 가질 것인가- graceful shutdown이나 정지 시 flush를 어떻게 다룰 것인가
- UI 바깥에 있는 처리를 어떻게 정리할 것인가
상담에서 자주 나오는 논점
Task.Run이나 타이머가 여기저기 생겨나 있어, 정지 책임이 모호하다Host.CreateApplicationBuilder와BackgroundService를 어디까지 도입해야 할지 고민이다- 콘솔, worker, 데스크톱 앱에서 토대를 어떻게 맞출지 정리하고 싶다
- 설정, 로그, DI의 연결을 나중에 덧붙여 가고 있어 괴롭다
맞는 진행 방식
Generic Host 이야기는 API 이름만 외워서는 효과가 적고, 기동·수명·책임 분할을 한데 모아 보면 정리하기 쉽습니다. 관련 글 3편을 입구로, Windows 앱 개발이나 설계 리뷰 페이지와 함께 보면 host를 어디까지 도입해야 할지의 윤곽이 잡힙니다.
문의하기
이 페이지의 내용과 비슷한 과제가 있다면, 현재 상황과 필요한 지원 형태를 함께 적어 문의해 주세요.