Scala
Scala?
| 2004년 마틴 오더스키가 발표한 객체 지향 언어의 특징과 함수형 언어의 특징을 가지는 다중 패러다임 프로그래밍 언어 JVML(Java Virtual Machine Language)라고 들어보셨나요? 쉽게 생각하면 자바 가상 머신에서 동작하는 JVML이라고 생각하시면 됩니다. 주로 사용하는 언어는 Java, Scala, Kotlin, Groovy가 있습니다. JVML을 사용하는 언어들의 장점은 자바의 모든 라이브러리를 사용할 수 있습니다. 스칼라는 컴파일러를 통해 Scala 코드를 바이트 코드로 변환하고, 바이트 코드는 JVM 상에서 자바와 동일하게 실행되게 됩니다.
함수형 언어?
Scala는 함수형 언어 의 특징을 가지고 있어서 자바에 비해서 코드를 길이가 짧습니다. 겟터, 셋터, 생성자를 제거하고 표현식을 간소화하여 자바에 비해 짧은 코드를 동일하게 작성할 수 있습니다. 자신만의 로직을 구현하는 것도 좋지만 Scala를 사용하게 된다면 증명된 함수를 사용하여 더 빠르게 개발할 수 있습니다. 또한 바이트 코드 최적화를 하였기 떄문에 기존 자바보다 20%가 빠릅니다. 또한 Scala는 동시성이 강하다는 것입니다. Scala는 변경 불가능한 불변의 변수를 많이 가지고 있습니다. 또한 순수 함수를 사용하여 병렬 프로그래밍 처리에 강합니다.