주요글: 도커 시작하기
반응형

Scala 언어가 재미있지만 실제 프로젝트에 적용하려면 콘솔에서 컴파일하거나 실행해 볼 수는 없다. 실제 프로젝트에 Scala를 적용하려면 먼저 편리한 개발 환경을 구축해 주어야 한다. 필자의 경우 개발시 주로 이클립스와 메이븐을 사용하기 때문에, Scala를 이 환경에서 개발하기 위한 내용을 찾아보았으며, 각 내용들은 한 곳에 모아 보았다. (나중에 또 돌아다니면서 찾는 건 귀찮기에 이곳에 정리한다.)


이클립스와 메이븐(m2e 플러그인) 환경을 이용해서 Scala를 적용하려면 다음과 같은 준비를 하면 된다.

  • Scala IDE 설치
  • M2Eclipse Scala 플러그인 설치
  • Maven 프로젝트에 pom.xml 파일에 maven-scala-plugin 설정

Scala IDE 설치하기


먼저 Scala IDE를 설치한다. 이클립스 업데이트 사이트는 아래와 같다. 참고로 아래 주소는 Scala 2.9 버전 기준이다. (참고 사이트는 http://scala-ide.org/index.html 이다.)

  • http://download.scala-ide.org/releases-29/stable/site

M2Eclipse Scala 플러그인 설치


그 다음 할 작업은 Maven 프로젝트와 Scala IDE를 연결해 줄 플러그인을 설치해주는 것이다. 업데이트 주소는 아래와 같다. (참고 사이트는 https://github.com/sonatype/m2eclipse-scala 이다.)


  • http://alchim31.free.fr/m2e-scala/update-site/

pom.xml 파일에 maven-scala-plugin 설정하기


이제 남은 작업은 이클립스에서 실행할 메이븐 프로젝트의 pom.xml 파일에 maven-scala-plugin 설정을 하는 것이다. pom.xml 파일의 설정 예는 https://github.com/sonatype/m2eclipse-scala 사이트에서 찾아볼 수 있다. pom.xml 파일을 알맞게 작성한 뒤에 Scala 소스 코드를 작성하면, 알맞게 컴파일되고, 실행해 볼 수 있고,  자바 코드에서 Scala가 생성한 클래스를 사용하는 등의 작업을 할 수 있다.


참고로, 그럼 내가 왜 Scala를 사용해보려고 하느냐? 여러 이유가 있겠지만 다음이 주요 이유다.

  • 언어 자체의 재미: 언어가 다소 복잡하지만 재미는 있다.
  • Combinator Parser: 뭔가 규칙에 기반해서 텍스트를 파싱해야 할 때, 언어 차원에서 Parser를 지원하기 때문에, ANTLR 등을 사용하지 않아도 쉽게 파싱할 수 있다.
  • DSL(Domain Specific Language): 위의 내용과 더불어 DSL을 만들기에 Ruby나 Groovy 등의 언어들 만큼 좋다.
  • 자바와의 호환성: JVM 기반으로 동작하며 자바와의 호환이 당연히 잘 된다.
  • 함수형 언어이고 Clousure 등을 지원하기에 테스트 코드에 적용하면 테스트 코드에서 발생하는 중복을 많이 줄일 수 있으므로, 그것만으로도 가치가 있다.



+ Recent posts