-
-
파이썬과 비교하며 배우는 러스트 프로그래밍 - 가장 사랑받는 언어 러스트를 배우는 가장 확실한 방법
윤인도 지음 / 제이펍 / 2024년 5월
평점 :
프로그래밍 언어마다 장단점이 있다. 예를 들면 파이썬은 개발할 때 속도가 빠르고 생산성이 높지만, 코드 실행 속도가 느리고 멀티스레딩에 취약하다는 단점이 있다. C/C++는 안정적이고 견고하며 실행속도가 빠르지만, 언어의 난이도가 매우 높아 개발 속도가 느리다. 또한, 개발자가 메모리를 하나 하나 관리해줘야하는 어려움이 있어 메모리 누수가 자주 발생해 보안 측면에서 문제점이 제기되고 있다. 백악관 측은 메모리 취약점이 있는 프로그래밍 언어로 C와 C++를 제시한 적도 있다.
반면 Rust는 간결한 문법 덕에 개발 속도도 빠르고, 컴파일 언어이기 때문에 실행속도도 빨라 최근 몇 년간 엄청난 주목을 얻고 있는 언어다. 가장 배우고 싶은 프로그래밍 언어에 항상 순위권을 차지한다. Rust의 가장 큰 장점은 메모리 안정성이다. 백악관 측은 안정적인 보안을 위해 사용해야 하는 프로그래밍 언어 중 하나로 Rust를 꼽았고, 마이크로소프트 측은 C/C++ 대신 Rust를 사용했다면 보안 취약점이 70%나 줄어들었을 것이라고 말했다. 또한, Rust의 컴파일러는 다른 언어들에 비해서 매우 친절하다. 코드에 오류가 있다는 것을 알려주는 동시에 왜 오류가 발생했는지, 어떻게 고쳐야 하는지 코드를 직접 제시해주기도 한다. 이러한 장점들에 의해 개발자들의 만족도가 매우 높은 언어다.
하지만 Rust에도 단점이 있다. Rust는 Garbage Collector가 없어 실행속도가 빠르고 메모리를 직접 지정해주지 않아도 되는 대신, 소유권이라는 개념을 잘 이해해야한다. 이 개념이 다른 언어 개발자들에겐 매우 생소하기 때문에 이해하기 어려워 선뜻 도전하기 쉽지 않은 언어이며, 문법도 어려운 편에 속한다. 필자도 이러한 이유에서 Rust를 배우고 싶다는 생각만 하고 1년 넘게 배워보지 못했다.
이러한 상황에서 제이펍 출판사에서 <파이썬과 비교하며 배우는 러스트 프로그래밍> 도서를 출판하여 평소 파이썬으로 프로그래밍을 하고 있는 필자는 파이썬만 잘 알고 있으면 이 책을 통해 러스트에 쉽게 입문해볼 수 있겠다고 생각하여 본 도서의 서평단 모집에 지원하게 되었고 이에 선정되었다. 최근 현생이 너무 바빠 책을 다 읽어보진 못했지만, 매우 만족하며 이 책으로 러스트를 공부해보고 있는 중이다.
이 책의 장점들을 꼽아보자면
1. 가볍다.
Rust는 위에서 언급했다시피 난이도가 있는 언어다. 이러한 언어를 도서를 통해 진득하게 공부하려면 피로가 쌓여 책 한권을 완독하기 매우 쉽지 않지만, <파이썬과 비교하며 배우는 러스트 프로그래밍> 도서는 300페이지 미만의 도서로 프로그래밍 언어 입문 도서 치고는 분량이 아주 가벼운 편에 속한다. 그렇기에 러스트를 처음 접하는 사람들이라도 어렵지 않게 이 책을 완독하여 러스트라는 언어에 입문해볼 수 있다!
2. 시중 러스트 도서 중 유일하게 파이썬과 비교하며 공부할 수 있다.
파이썬은 현재 정말 많은 개발자들이 사용하고 있는 언어다. 다양한 분야에서 다양한 용도로 쓰이기에 그만큼 많은 사람들이 파이썬으로 개발을 하고 있다. 파이썬으로 개발을 하다 보면 실행 속도가 느려 불만을 느낄 수 밖에 없는데, 이 도서는 그러한 사람들에게 딱 맞는 도서다. 파이썬을 알고 있다면 누구나 러스트를 배워볼 수 있는 책이다. 파이썬에서의 기법과 러스트에서의 기법을 나란히 코드로 제시하여 러스트 언어를 다루는 법을 쉽고 효과적으로 익히고 이해할 수 있다.
3. 간결하고 알차다.
지금까지 많은 프로그래밍 도서를 접해봤지만, 몇몇 도서는 특정 개념에 대한 설명이 지나치게 길거나 예시와 예제가 많아 읽기 피로한 부분이 있었다. 반면 이 책은 개념설명이 매우 간결하여 이해하기 쉽고, 많은 내용을 꽉꽉 눌러담았다. 밀도 높고 알찬 책이라고 할 수 있다. 이 책 하나로 러스트에 관한 대부분의 개념을 배울 수 있으며, 비동기 프로그래밍, 멀티스레딩, 테스트 등 응용 및 실전 사용법까지 공부할 수 있다. 특히 마지막 챕터로 파이썬 바인딩을 하는 법까지 알려주는 점이 가장 좋았다. 최근 다른 프로그래밍 언어들로 구성된 환경에서 성능이 필요한 부분만 러스트 코드로 대체하여 프로그램을 만드는 기법이 유행이라고 하는데, 이에 맞게 파이썬에 환경에서 러스트 코드를 실행하는 법을 따로 챕터로 구성하여 알려준다. 러스트를 활용하는 법까지 알려주니 내용이 정말 알찼다.
요약하자면 <파이썬과 비교하며 배우는 러스트 프로그래밍> 은 파이썬 개발자들을 대상으로 최근 가장 인기있는 언어인 러스트를 쉽게 입문할 수 있게 해주는 도서다. 2024년 개발 트렌드에 맞춰가려면 러스트는 한 번 쯤 다뤄봐야 하는 언어가 되었고, 많은 사람들이 이 도서를 통해 러스트를 접해봤으면 한다!