스튜디오 킹덤, 쿠키런: 킹덤 서버 개발에 Scala 적용한 이유
·2022.10.24 09:00
핵심 내용
스튜디오 킹덤이 쿠키런: 킹덤 서버 개발에 Scala를 채택해 타입 시스템으로 로직 오류를 방지하고 확장성을 확보했다.
자세히 보기
스튜디오 킹덤은 히트작 쿠키런: 킹덤의 게임 서버 개발 언어로 Scala를 사용한다. 비록 대중적인 언어는 아니지만, 게임 서버 개발에 최적화된 선택이라고 평가한다.
타입 시스템 기반의 로직 정확성
Scala는 정적 타입 언어로, 컴파일 시점에 타입을 정의해 런타임 오류를 예방한다. 특히 Option[A] 타입을 사용해 null 처리 로직의 누락을 방지하고, Refined Types와 newtype을 활용해 값의 제약 조건을 명확히 한다. 예를 들어 양수만 허용하는 PosInt나 특정 의미를 부여한 KingdomLevel 타입을 통해 잘못된 값 전달을 컴파일 단계에서 차단한다.
함수의 의도를 드러내는 타입
타입을 문서화 수단으로 활용해 함수의 동작을 명확히 한다. Option[A]는 결과 유무, Either[E, A]는 성공/실패 여부, **ZIO[R, E, A]**는 환경 의존성과 사이드 이펙트 가능성을 나타낸다. 이러한 타입 파라미터를 통해 개발자는 함수가 어떤 계산과 부작용을 수행하는지 즉각 파악할 수 있으며, 타입 별칭(type alias)을 사용해 가독성을 높인다.
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.