2011-03-02 2 views
1

여러 .NET 프로젝트 (예 : FluentNHibernate)에서 NAnt 또는 MSBuild와 같은 .Net 도구를 사용하는 대신 Ruby의 레이크를 사용하여 빌드를 실행하는 것을 보았습니다. 이 작업을 수행하면 어떤 이점이 있습니까? 우리는 새로운 프로젝트를 시작하는 중이며 기존 NAnt 빌드를 계속 사용할지 또는 다른 것으로 마이그레이션할지 결정하려고합니다. 어떤 조언을 주시면 감사하겠습니다.레이크 오버 NAnt 또는 MSBuild를 사용하는 이유

차이점이 있다면 .Net 3.5를 사용하고 있습니다.

답변

5

나는 결코 그것을 사용한 적이 없기 때문에 나는 레이크와 이야기 할 수 없다. 그러나 나는 레이크와 똑같은 것이라고 생각하지만, 파이썬에서는 SCons을 사용했다.

스크립트 기반 make 도구의 가장 큰 장점은 빌드 파일이 실제로 실행 가능한 스크립트라는 것입니다. 즉, Rake에서 빌드 파일은 Ruby 스크립트이고 SCons에서는 Python 스크립트입니다. 빌드 시스템이 지원하는 언어로 코드를 작성할 수 있다면 빌드시에 할 수 있습니다. 따라서 유연성은 본질적으로 무제한입니다. 이를 NAnt와 비교해보십시오. 여기서 빌드 파일은 일련의 지침과 XML 선언입니다. 물론 NAnt 빌드 파일에 스크립트와 기타 파일을 임베드 할 수 있지만 작업을 표현하는 데 사용되는 언어의 흐름, 절차 및 구문에 여전히 문제가 있습니다.

학습 곡선이 있습니다. NAnt는 비교적 간단하지만, 빌드 파일을 본적이없는 C# 개발자라면 처음에는 다소 압도적 일 수 있습니다. 처음에 Ruby 개발자라면 Rake를 선택하면 학습 곡선이 훨씬 가파르게됩니다.

NAnt가 처리 할 수없는 무언가에 빠져 본적이 없습니다. 가장자리의 것들이 어렵다는 것을 인정합니다. 내가 SCons를 사용했다면, Python 스크립트 (우수한 Python 표준 라이브러리에 대한 액세스 권한)를 작성하는 옵션을 처음부터 가지고 있다면 훨씬 쉬울 것입니다.

관련 문제