Cocona - .NET Console 애플리케이션을 만들기 위한 마이크로 프레임워크

Cocona를 이용하면 콘솔에서 실행하는 애플리케이션을 구조적으로 만들 수 있습니다.

  • ASP.NET Core와 유사한 미니멀 API
  • UNIX 도구 표준과 같은 명령줄 옵션 처리
  • 기본 제공 도움말 문서 지원
  • 사용자 정의 가능한 CLI 프레임워크
using Cocona;
CoconaApp.Run((string name) =>
{
    Console.WriteLine($"Hello {name}");
})
$ dotnet run
Usage: ConsoleAppSample [--name <String>]

Options:
  --name <String>    (Required)
  -h, --help         Show help message
  --version          Show version

$ dotnet run -- --name Cocona
Hello Cocona

6 Likes

저도 Cocona를 통해 Console의 신세계를 접했었는데…

매번 콘솔앱에도 IoC Container를 보일러 플레이트처럼 생각없이 붙이다가 문득 Cocona에 제네릭 호스트가 붙어있는 것은 없을까 하던 찰나에 Cocona 문서의 가장 마지막 줄을 읽어보고 Cocona에서 ConsoleAppFramework 로 갈아타게되었습니다.

단지 ConsoleAppFramework는 .net core 이상의 환경에서 최신 버전들을 지원하기 때문에 .NET Framework 4.8 환경에서는 어쩔 수 없이 Cocona + Generic Host 환경에서 개발하고 있네요. ㅠㅠ

디모이님께서도 일전에 소개해주셨습니다.

포럼에서도 2번이나 소개되었네요.

(다 같은 회사 사람들…대단대단…)

5 Likes

ConsoleAppFramework 만든 분이 게임 개발자인데 게임 개발쪽은 신규 게임 개발 할때는 언제나 그때의 최신 기술을 사용하는 경향이 있어서 이 분도 오래된 버전은 잘 지원하지 않는 것 같습니다. 보통 최저 기준이 Unity에서 지원하는 닷넷 버전입니다

3 Likes

System.CommandLine은 유기된걸까요… 시험판에서 전혀 손보지 않고있네요
System.CommandLine.DragonFruit 적용해보니 편한데 제대로 쓰기에는 어설펏거든요

2 Likes