본문으로 건너뛰기

환경 설정

튜토리얼을 시작하기 전에 다음 항목을 확인하세요.

도구버전용도
.NET SDK10.0 이상빌드 및 실행
VS Code최신코드 편집
C# Dev Kit최신C# 개발 지원

이 튜토리얼을 학습하기 위해 다음 개념을 알고 있어야 합니다:

개념수준설명
C# 제네릭기초List<T>, where T : class 등 기본 제네릭 문법
인터페이스기초인터페이스 정의, 구현, 다형성
Record 타입기초record class, sealed record, positional record
Mediator 패턴선택Part 2부터 필요 (Part 1은 불필요)
Terminal window
# 저장소 클론
git clone https://github.com/hhko/Functorium.git
cd Functorium
# 튜토리얼 빌드
dotnet build Docs.Site/src/content/docs/tutorials/usecase-pipeline/usecase-pipeline.slnx
# 튜토리얼 테스트
dotnet test --solution Docs.Site/src/content/docs/tutorials/usecase-pipeline/usecase-pipeline.slnx
# 전체 솔루션 빌드
dotnet build Functorium.slnx

이 튜토리얼의 프로젝트는 두 가지 유형으로 나뉩니다:

유형Part참조설명
StandalonePart 1, 2(2~3장), 3LanguageExt.Core만개념 학습용, 독립 실행 가능
Functorium 참조Part 2(1장), 4, 5Functorium.csproj실전 적용, Pipeline/Usecase 사용
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="LanguageExt.Core" />
</ItemGroup>
</Project>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\..\..\Src\Functorium\Functorium.csproj" />
</ItemGroup>
</Project>

Part 13은 순서대로 학습하는 것을 권장합니다. Part 45는 Part 3 완료 후 자유롭게 선택하여 학습할 수 있습니다.

Q1: Part 1은 Mediator 패턴 지식 없이도 학습 가능한가요?

섹션 제목: “Q1: Part 1은 Mediator 패턴 지식 없이도 학습 가능한가요?”

A: 네. Part 1은 C# 제네릭 변성(공변/반공변/불변)만 다루므로 Mediator 패턴 지식이 필요하지 않습니다. Part 2부터 IPipelineBehavior가 등장하므로, 그때까지 Mediator 패턴의 기본 개념을 알아두면 충분합니다.

Q2: Standalone 프로젝트와 Functorium 참조 프로젝트의 차이는 무엇인가요?

섹션 제목: “Q2: Standalone 프로젝트와 Functorium 참조 프로젝트의 차이는 무엇인가요?”

A: Standalone 프로젝트는 LanguageExt.Core만 참조하며, 개념 학습용으로 독립 실행이 가능합니다. Functorium 참조 프로젝트는 Functorium.csproj를 참조하며, 실전 Pipeline과 Usecase 구현에 사용됩니다. Part 13은 주로 Standalone, Part 45는 Functorium 참조 프로젝트입니다.

Q3: .NET SDK 10.0 이전 버전으로도 튜토리얼을 따라갈 수 있나요?

섹션 제목: “Q3: .NET SDK 10.0 이전 버전으로도 튜토리얼을 따라갈 수 있나요?”

A: 이 튜토리얼은 C# 11의 static abstract 멤버와 최신 record 구문을 사용합니다. .NET 7 이상이면 static abstract를 지원하지만, 프로젝트 빌드 설정이 .NET 10을 기준으로 되어 있으므로 .NET SDK 10.0 이상을 권장합니다.


Mediator Pipeline의 전체 구조와, 각 Pipeline이 응답 타입에 대해 필요로 하는 능력을 살펴봅니다.

0.3장: Usecase Pipeline 아키텍처 개요