
책 소개
요약
줄리아(Julia)는 강력하고 기능이 풍부한 현대적인 프로그램 언어다. 코드를 쉽게 작성할 수 있을 뿐만 아니라 실행 속도도 빠르다. 빠른 개발 주기, 대량의 데이터, 다양한 컴퓨팅 환경이라는 현실에서 줄리아는 높은 추상력과 다중 패러다임을 지원하여 쉽고 빠르게 개발할 수 있도록 한다. R, MATLAB, 파이썬(Python)과 같은 계산력을 지원하지만 휠씬 빠르다. 다른 언어와의 뛰어난 접착성뿐만 아니라, 언어 태생부터 멀티코어 환경을 고려하여 우아한 병렬 기능을 제공한다. 고성능 프로그램을 개발하고자 한다면 반드시 고려해야 할 언어다.
이 책에서 다루는 내용
고성능을 발휘하는 줄리아 개발 환경 설정
고수준 동적 언어의 문제 해결과 필요시 데이터 타입을 명시하는 방법
기본 타입 시스템을 확장해 사용자 타입 생성
IJulia와 시각화 패키지로 시각화
테스팅, 디버깅, 성능 비교 등 기본 매크로 사용
분산 환경에서 병렬적으로 문제를 해결하기 위해 줄리아 적용
C, 파이썬, 매트랩 등의 언어와 통합
이 책의 대상 독자
이 책은 데이터 과학자나 기술적, 과학적 계산 프로젝트를 수행하는 연구자에게 적합하며, 단순한 프로젝트 애플리케이션을 줄리아로 시작할 수 있도록 돕는다. 매트랩(MATLAB), R, 파이썬, 루비(Ruby)와 같은 고수준 동적(high-level dynamic) 언어에 대한 기본적인 지식이 있으면 이 책의 내용을 더 쉽게 이해할 수 있다.
이 책의 구성
0장, ‘줄리아를 사용해야 하는 근거’에서는 줄리아의 기본 원칙과 다른 언어와의 차이를 살펴본다.
1장, ‘줄리아 플랫폼 설치’에서는 줄리아 환경에 필요한 모든 구성 요소를 설치해본다. 줄리아 콘솔(REPL)의 작동법과 좀 더 편리한 개발 편집기에 대해 다룬다.
2장, ‘변수, 타입, 연산’에서는 코드를 작정하는 데 필요한 기본 타입과 이를 실행하는 연산자를 살펴본다.
3장, ‘함수’에서는 함수가 줄리아에서 기본 구현 블록인 이유와 효과적으로 사용하는 방법을 설명한다.
4장, ‘흐름 제어’에서는 줄리아의 뛰어난 흐름 요소와 오류 처리, 코드 실행을 구성하는 코루틴(coroutine)을 사용하는 방법을 살펴본다.
5장, ‘컬렉션 타입’에서는 개별 값을 그룹화하는 배열(array), 매트릭스(matrix), 튜플(tuple), 딕셔너리(dictionary), 셋(set) 같은 타입을 살펴본다.
6장, ‘타입, 메소드, 모듈’에서는, 타입 개념에 대해 좀 더 자세히 살펴보고 C 언어와 같은 성능을 얻기 위해 멀티플 디스패치를 사용하는 방법을 알아본다.
7장, ‘메타프로그래밍’에서는 표현식(expression), 리플렉션(reflection) 기능과 같은 줄리아의 내부를 다루며 매크로(macro)의 강력함을 설명한다.
8장, ‘I/O, 네트워킹, 병렬 컴퓨팅’에서는 데이터프레임(DataFrame)을 사용해 파일이나 데이터베이스의 데이터를 다루는 방법을 살펴본다. 네트워킹 기능과 병렬 컴퓨팅을 설정하는 방법도 설명한다.
9장, ‘외부 프로그램 실행’에서는 운영체제 명령을 사용하는 방법, 다른 언어와 함께 사용하는 방법, 성능 개선 팁을 다룬다.
10장, ‘표준 라이브러리와 패키지’에서는 표준 라이브러리를 살펴보고, 주요 데이터 시각화 패키지를 설명한다.
부록, ‘매크로와 패키지 목록’에서는 편리한 매크로와 이 책에서 사용한 패키지 참고 목록을 제공한다.