Clojure 시작하기(Getting Started)

Clojure 시작하기(Getting Started)

Clojure에 오신 걸 환영해요! 이 문서는 Clojure를 처음 시작할 때 필요한 도구가 무엇인지, 그 도구들을 어떻게 다루는지, 언어 자체를 어떻게 배우고 어디서 질문하면 좋은지 딱 필요한 만큼만 안내해 줘요.

시작하며 짚고 갈 핵심만 먼저 정리할게요.

  • Clojure는 동적(dynamic) 개발 환경이에요. 프로그램을 실행하면서 그 자리에서 고치고 키워 나가는 방식이죠
  • 그래서 코드 안에서 바로 평가(evaluate)할 수 있고 구조적으로 편집할 수 있는 에디터가 필요해요
  • 본격 학습 전에 기본 흐름 — 파일 만들기, REPL 연결, 코드 작성·평가 반복 — 을 익히면 좋아요
  • 배울 수 있는 곳이 공식 가이드, 책, 연습 문제, 커뮤니티까지 다양하게 있어요

출처: Clojure 공식문서

본문

어떤 도구가 필요할까?

Clojure는 동적 개발 환경(dynamic development environment) 이에요. 프로그램을 쓰면서 동시에 그 프로그램과 상호작용하고, 실행 중인 상태를 계속 키워나가는 방식이죠. 그래서 Clojure를 다루려면 두 가지가 갖춰진 에디터가 필요해요. 소스 파일 안에서 코드를 평가(evaluate) 할 수 있으면서, 구조적 편집(structural editing) — 문자 단위가 아니라 중첩된 폼(form) 단위로 작업하는 것 — 이 가능해야 해요.

여기서 먼저 설치할 것들을 정리하면 이래요.

  • Clojure — 언어 자체와 REPL(Read-Eval-Print Loop), 라이브러리 지원, 프로그램 실행기를 제공해요
  • 에디터 — 위에서 말한 인터랙티브한 개발 환경을 지원하는 에디터가 필요해요

운영체제별 설치 방법을 단계별 동영상으로 보고 싶다면 아래 영상들을 참고하면 돼요.

이 도구들을 어떻게 다루지?

구체적인 절차는 운영체제와 에디터에 따라 조금씩 달라지겠지만, 어떤 조합이든 기본 흐름은 똑같아요.

  • 파일을 만들거나 연다
  • Clojure 환경(즉 REPL)을 연결한다
  • 에디터에 Clojure 코드를 쓴다
  • 연결된 환경을 이용해 에디터에서 그 코드를 평가한다
  • 이 과정을 반복한다!

여기서 더 자세히 알아볼 거리는 두 가지가 있어요.

  • REPL — REPL이 뭔지, 어떻게 인터랙티브하게 쓰는지 더 알고 싶다면 REPL 가이드를 참고해요
  • 구조적 편집 — 코드를 텍스트가 아니라 폼으로 다루는 방식이 궁금하다면 구조적 편집 문서를 봐요

언어 자체는 어떻게 배우지?

Clojure 언어를 배우는 방법도 여러 가지예요. 이 튜토리얼이 기본기를 다루고 있는데요, 기초를 체계적으로 훑으려면 Learn Clojure 가이드부터 시작해 보세요.

책으로 공부하고 싶다면 아래 책들이 좋은 출발점이 돼요.

손으로 직접 풀어보면서 익히고 싶다면 연습 문제도 마련돼 있어요.

이 밖에도 Clojure Camp — 초보 Clojure 개발자를 위한 인터랙티브 커뮤니티 — 를 비롯해 더 많은 학습 자료(튜토리얼 및 학습 자료 모음)가 있으니 다른 학습 리소스에서 이어서 살펴볼 수 있어요.

어디서 질문하면 좋을까?

Clojure 개발자들과 이야기할 수 있는 곳도 여럿 있어요.

질문하고 싶은 내용이 생기면 이런 곳들에서 자유롭게 물어보면 돼요. 초보자부터 경험자까지 폭넓게 도움을 주고받는 생태계거든요.

더 알아보기