예전엔 실행옵션 처리를 위해 nuget에서 듣보잡 cli parser를 찾아 썻었는데,

System.CommandLine이라고 닷넷공식라이브러리가 있길레 썻었음.

https://learn.microsoft.com/en-us/dotnet/standard/commandline/get-started-tutorial

헌데 기존의 듣보잡 라이브러리랑 다르게 쓸데없이 장황한 작성이 필요함에 이상함을 느끼다가 뒤늦게 심플한 버전이 있음을 발견

https://github.com/dotnet/command-line-api/blob/main/docs/DragonFruit-overview.md

아무래도 System.CommandLine은 가능한 CLI명령 패턴을 최대한 지원하도록 설계하고 .DragonFruit는 그를 활용해 실 코드를 줄이는데 집중한듯 함.


내 요구사항을 완벽히 반영하는 닷넷 공식라이브러리가 "용과" 같은 개듣보잡이름일거라 감히 생각해본적이 없어서 찾아내는데 오래걸렸음.

꽤 시간이 흘럿음에도 여전히 둘다 되다만 시험판인것도 아쉬운듯.

그래도 간결하고 일관성있는 cli 작성을 통한 파라미터 자동완성이라던가 꽤 훌륭한 비전을 가지고있음.


특이사항으로 cli에 표시할 설명 등을 attribute가 아니라 xml주석내용을 가지고서 빌드에 반영시키는데, 어떤식으로 구현한건지 분석해 볼만 함.