알라딘

헤더배너
상품평점 help

분류

이름:렉스 시한 (Lex Sheehan)

최근작
2019년 5월 <Go로 배우는 함수형 프로그래밍>

렉스 시한(Lex Sheehan)

어번 대학교(Auburn University)에서 전산학 학사 학위를 취득하고 조지아 주 애틀랜타에 거주 중이다. 현재 시니어 소프트웨어 엔지니어로 일하고 있으며, 20년 이상의 경력을 쌓아왔다. 루비(Ruby)와 스칼라(Scala), 자바스크립트(JavaScript), 하스켈(Haskell), 자바(Java), Go 언어를 통해 고계 함수를 사용하기 시작했으며, 함수형 프로그래밍에 관한 조예가 깊다.
IBM 소프트웨어 그룹과 IBM 글로벌 비즈니스 서비스에서 근무하는 동안 다양한 엔터프라이즈 비즈니스 시스템을 설계하고 개발했다. IT 보안 및 데이터 전송 관련한 여덟 개의 특허를 갖고 있으며, 'Application Development with Lex Sheehan(렉스 시한과 함께하는 애플리케이션 개발)'이라는 블로그를 운영한다.  

대표작
모두보기
저자의 말

<Go로 배우는 함수형 프로그래밍> - 2019년 5월  더보기

최근까지도 Go와 함수형 프로그래밍(Functional Programming)의 조합에 대해서는 "하지 마."라는 반응이 주를 이뤘다. 함수형 프로그래밍은 멀티 코어, 병렬 처리에 안성맞춤이다. Go는 병행성(concurrency) 지원이 훌륭하고(고루틴, 채널 등), 이미 모든 종류의 CPU 코어와 호환된다. 함수형 프로그래밍은 복잡도를 낮춘다. 간결함은 Go의 가장 큰 힘이다. Go에 함수형 프로그래밍을 적용할 경우, 어떤 점으로 인해 소프트웨어 응용이 실질적으로 개선될까? 함수형 프로그래밍은 다음을 제공한다. ■ 합성: 함수형 프로그래밍은 응용 소프트웨어를 작은 빌딩 블록으로 나누고 재구성하기 위한 방법을 보여준다. ■ 모나드: 모나드(monad)를 사용하면 작업 흐름을 데이터 변환 파이프라인의 형태로 안전하게 정돈할 수 있다. ■ 오류 처리: 관용적 Go 코드들과의 호환성을 유지하면서 모나드 오류 처리를 활용할 수 있다. ■ 성능: 참조 투명성이 보장되면, 함수를 한 번 실행한 후 재실행할 때 앞서 계산한 값을 재사용할 수 있다. ■ 표현력 높은 코드: 함수형 프로그래밍은 코드의 비즈니스 목표를 간결하게 표현하게 해준다. 함수가 하는 일을 선언할 수 있도록 하되, 매 함수 호출마다 오류 검사를 끼워 넣는 번잡함을 줄이고 상태 변화를 추적할 필요를 없앤다(순수 함수는 곧 불변 변수를 뜻한다). ■ 단순한 코드: 공유 데이터가 없다는 것은 세마포어, 락, 경쟁 조건, 데드락을 다루지 않아도 된다는 의미다. 많은 이들이 함수형 프로그래밍의 핵심을 파악하는 데 어려움을 겪는다. 나도 그랬다. 하지만 이해하고 나니 이 책을 쓰게 됐다. 함께 여행을 떠나보자. 앞으로 수백 개의 도표와 이해하기 쉬운 설명을 보게 될 것이며, Go로 함수형 프로그래밍을 구현하게 될 것이다. 나는 축구 코칭을 즐긴다. 내가 코치로서 성공했는지를 시험하고자 사용한 리트머스 용지는 다음과 같은 질문 하나다. '다음 시즌에도 모든 수강생이 이어서 등록하고 나를 코치로 지명했는가?' 실전에서 계획하듯 나는 각 장에 들어갈 내용을 기획했고, 간단한 개념으로부터 시작했다. 이 책을 읽어라. 그러면 "이해했어."라고 말할 수 있게 될 것이다. 함수형 프로그래밍 스킬을 향상시키고자 한다면, 이 책이 딱이다.

가나다별 l l l l l l l l l l l l l l 기타
국내문학상수상자
국내어린이문학상수상자
해외문학상수상자
해외어린이문학상수상자