devGYU World
Exercism 설치하기 본문
Dart 언어를 공부하는 중인데 따로 연습 예제를 풀어볼만한 마땅한 사이트가 없어 찾고 있던 와중에 Exercism을 발견했다.
국내의 백준과 같이 다양한 언어들로 예제들을 풀어볼 수 있는 사이트인 것 같은데,
필자가 공부하고자 하는 Dart 언어는 Online editor가 아닌 사용자 호스트 머신에서 직접 제출해야 한다고 한다.
백준의 경우에도 Dart는 채점이 되지 않는 이유로 미지원이라고 한 것 같은데... 그나마 여기는 되기라도 하니 다행일까.
일단 이렇게라도 공부하기 위해 이번에는 사용자가 자신의 머신에 Exercism을 설치하는 방법을 알아보고자 한다.
우선 Exercism을 사이트에 접속하여 가입한다.
Exercism
Learn, practice and get world-class mentoring in over 50 languages. 100% free.
exercism.org
사이트에 가입하면 사용자마다 사용 가능한 API Token을 제공한다.
오른쪽 상단의 프로필 사진 -> Settings -> (왼쪽의) API/CLI 탭에서 확인 가능하다.
다음으로 brew를 통해 exercism을 호스트에 설치해준다.
brew update
brew install exercism
설치한 뒤 방금전 확인했던 token을 등록한다.
exercism configure --token={user_api_token}
token을 등록하고 나면 간략하게 호스트에 대한 자신의 설정값들을 보여준다.
예제를 다운로드하여 제출할 Workspace는 기본 설정 외에도 -w, --workspace 옵션을 활용하여 변경가능하다.
exercism configure --workspace={/path/to/workspace/}
간략한 설정을 통해 사용자 호스트에서 갖추어야 할 설정이 끝났다.
이제 실제로 사이트에 등록된 예제를 통해 코드를 제출해 보자.
상단의 카테고리 중 Track을 선택한 뒤 검색어로 Dart를 검색하면 우리가 공부하고자 하는 Dart 언어의 예제들을 볼 수 있다.
총 37개로 많은 양은 아니지만 며칠 정도 공부할 수준은 된다.
1번 예제인 Hello World을 기준으로 예제를 풀고 제출하는 방법을 설명하겠다.
필자는 이미 해당 예제를 제출하였기에 사진과 같이 나오지만 처음인 사용자는 다른 화면으로 나타날 것이다.
Online editor가 지원되는 언어는 오른쪽의 Open in editor를 통해 코드를 작성하고 제출 가능하지만, Dart의 경우 사진과 같이 online editor를 지원하지 않는다고 나온다.
그러므로 우리는 그 아래에 있는 WORK LOCALLY 를 활용한다.
코드 복사 버튼을 누르고 터미널에 명령어를 입력하면 선택한 예제에 해당하는 템플릿 코드가 우리가 지정한 workspace에 저장된다.
exercism download --exercise=hello-world --track=dart
저장된 경로에서 소스코드를 열고 사용자가 선호하는 editor를 통해 예제의 조건을 갖춰 dart test를 무사히 통과하면 소스코드의 제출이 가능하다.
제출 시에는 exercism submit 명령어를 통해 제출한다.
필자의 경우에는 이미 test를 통과하고 제출하여 위와 같이 나오지만 정상적인 제출이라면 submit이 성공할 것이다.
이제 다시 exercism 사이트를 확인하면 필자와 같이 위 예제 화면이 나올 것이다.
참고
Exercism
Learn, practice and get world-class mentoring in over 50 languages. 100% free.
exercism.org
[Exercism Dart] Hello World 솔루션
본 문제는 가장 기본적인 "Hello world"를 리턴하는 예제이다. 예제를 풀기 위한 코드는 아래와 같다. class HelloWorld { String hello() { return "Hello, World!"; } } 참고 Hello World in Dart on Exercism..
devgyuworld.tistory.com