메뉴 바로가기 검색 및 카테고리 바로가기

한빛미디어

디노 첫걸음

최신 자바스크립트 런타임 알아보기

한빛미디어

번역서

판매중

  • 저자 : 페르난도 돌리오
  • 번역 : 우정은
  • 출간 : 2021-03-10
  • 페이지 : 160 쪽
  • ISBN : 9791162244012
  • 물류코드 :10401
초급 초중급 중급 중고급 고급
5점 (2명)
좋아요 : 4

자바스크립트의 새로운 보안 런타임, 디노의 모든 것 

 

노드(Node.js) 창립자 라이언 달이 노드의 단점을 보완하는 새로운 런타임 ‘디노’를 만들었다. 노드의 대안으로 떠오르는 디노의 탄생 배경부터 설치 방법, 타입스크립트 소개, 디노를 활용한 예제까지 다룬다. 노드의 npm이 가진 치명적인 보안 문제를 강화하는 방법과 빌드 프로세스를 수동으로 설정하지 않고도 타입스크립트로 애플리케이션을 개발하는 방법을 배운다. 패키지 관리자에 의존하지 않고 모듈을 생성하고 사용하는 방법도 알아본다. 이 책을 읽고 나면 자신만의 디노 애플리케이션을 만들고 테스트할 준비를 마칠 수 있다.

 

 




장별 요약

  • 1장: 디노의 탄생 배경과 디노로 어떤 문제를 해결하는지 살펴봅니다. 
  • 2장: 타입스크립트가 무엇이며 디노 백엔드 개발에 타입스크립트를 활용하는 방법을 설명합니다. 
  • 3장: 디노가 보안성을 어떤 방식으로 강화했는지 알아봅니다.
  • 4장: 중앙화된 모듈 저장소인 npm 없이 url로 모듈을 자유롭게 임포트하는 법을 설명합니다. 
  • 5장: 디노 설치 시 기본으로 제공하는 표준 라이브러리 모듈부터 흥미로운 모듈 몇 가지를 소개합니다. 
  • 6장: 디노로 만든 예제를 살펴보고 실전에 활용하는 방법을 알아봅니다.

 

 

주요 내용

  • 디노로 애플리케이션 구축하기
  • 타입스크립트로 백엔드 애플리케이션 구축하기
  • 패키지 관리자 없이 모듈 처리하기
  • 사용 권한과 기본 동작 설정하기

 

저자

페르난도 돌리오

16년 차 소프트웨어 개발자. API, 웹 서비스, SPA, Node.js 응용프로그램, PHP, 루비, 자바스크립트 HTML/CSS 등 수많은 웹 프로젝트에 참여했다. 웹에 SOAP의 바람이 불었을 때나 XML이 마법사처럼 AJAX의 X 역할을 처리할 때도 현업에 종사했다. 지난 몇 년간 Node.js를 사용했고 Node.js로 REST API를 설계하는 기술부터 최적의 디자인 패턴을 구현하는 방법까지 다루는 수많은 책과 기사를 집필했다. 현재 기술 관리자로 일하며 백엔드 개발에 사용되는 자바스크립트의 유연함과 강력함을 찬양하는 열렬한 자바스크립트 전도사다.

역자

우정은

인하대학교 컴퓨터공학과를 졸업하고 LG전자, 썬 마이크로시스템즈, 오라클 등에서 모바일 제품 관련 개발을 하다가 현재는 뉴질랜드 웰링턴에 있는 Xero에서 모바일 앱 개발자로 새로운 인생을 즐기고 있다. 2010년 아이폰의 매력에 빠져들면서 번역과 개발을 취미로 삼고 꾸준히 서적을 번역한다. 옮긴 책으로는 『플러터 인 액션』, 『처음 배우는 스위프트』, 『실전 자바 소프트웨어 개발』, 『모던 자바 인 액션』(이상 한빛미디어) 등이 있다.

 

CHAPTER 01 완벽한 디노

1.1 탄생 배경

1.2 디노 맛보기

1.3 멋진 기능 살펴보기

1.4 마치며

 

CHAPTER 02 타입스크립트 소개

2.1 타입스크립트란

2.2 형식 살펴보기

2.3 인터페이스와 클래스

2.4 타입스크립트 믹스인

2.5 마치며

 

CHAPTER 03 안전한 생활

3.1 보안 강화

3.2 사용 가능한 권한 확인

3.3 마치며

 

CHAPTER 04 npm 없는 세상

4.1 외부 모듈 사용

4.2 마치며

 

CHAPTER 05 기존 모듈

5.1 디노 표준 라이브러리

5.2 외부 모듈

5.3 흥미로운 모듈

5.4 마치며

 

CHAPTER 06 예제 프로젝트

6.1 디노 러너

6.2 응용프로그램 테스트

6.3 채팅 서버

6.4 마치며

노드의 대안으로 떠오르는 디노 파헤치기

 

자바스크립트의 유일하고도 독점적인 컴파일이었던 노드를 대체할 새로운 런타임이 2020년 5월 공개되었습니다. 그 이름은 디노(Deno). 개발자들 사이에서는 Deno를 두고 이를 데노로 읽을 것이냐, 디노로 읽을 것이냐 말이 많았지만 ‘TSConf 2019’에서 이를 창조한 라이언 달이 로고가 공룡인 이유를 언급하며 디노라고 읽어야 한다고 주장했으니 우리도 디노라고 부르기로 했습니다. 

 

디노는 자바스크립트와 타입스크립트 모두를 지원하는 런타임입니다. 러스트를 주요 언어로 사용했고 Tokio를 비동기 라이브러리로 추가해 구현했습니다. 디노는 노드의 치명적인 문제였던 보안과 중앙 배포식으로 설계된 모듈 시스템을 개선해 개발자에게 더욱 편리한 개발 환경을 선사합니다. 아직 태어난 지 1년도 채 안 된 런타임이지만 커뮤니티와 라이브러리가 빠르게 발전하고 있습니다. 이 책에서 소개하는 예제를 살펴보며 새 런타임이 가져올 무서운 잠재력을 한번 확인해보고, 디노의 매력에 퐁당 빠져보길 바랍니다.

  • DENO

    디노 첫걸음

    페르난도 돌리오 지음우정은 옮김

    저자 페르난도 돌리오는 Node.js REST API를 설계하는 등 다양한 프로그래밍 언어를 다룬 경험을 갖고 있는 개발 전문가로서 디노라는 런타임을 소개하고있다.

    디노의 특이점은 노드 개발자인 라이언이 노드를 포기하고 디노를 개발했다는 점이다.

    디노 탄생 배경을 살펴보면라이언은 노드가 적절히 해결하지 못하는 다양한 문제(보안이 취약한 플랫폼모듈 시스템의 문제다른 사소한 문제)가 있음을 알게 되었고 이는 영구적인 기술 부채로 남았다고 한다.

     

    보안이 취약한 플랫폼

    라이언은 노드가 안전하지 못한 플랫폼이며 이를 잘 이해하지 못한 개발자가 불필요한 실행권한을 부여하거나 안전하게 보호되지 않는 시스템 서비스에 접근하는 코드를 구현하면서 보안 구멍이 만들어진다는 것을 깨달았다.

    즉 노드로 특정 URL TCP로 요청을 보낼 수 있는데 이를 완벽하게 제어하지 못한다면 요청을 받는 쪽에 문제가 생긴다호스트 컴퓨터의 네트워크 서비스 사용을 막는 장치가 아무것도 없기 때문이다적어도 노드에는 그런 보호 장치가 없다.

    2018년에 아주 유명한 노드 모듈 저장소가 소셜 해킹(모듈 개발자가 해커에게 속아 코드 접근 권한을 줌)을 당했는데 해커는 누군가가 가진 비트코인 지갑의 코인을 훔치는 코드를 숨겨놓은 상태였다노드에는 기본적으로 보안이 없으므로 이 모듈은 사용자 컴퓨터의 특정 경로에 접근할 수 있었다(모듈이 의도한 기능이 아님에도). 만약 모듈이 어떤 경로를 읽으려 했을 때 사용자에게 이를 허용할 것인지 묻는 알림창이 나타난다면 이는 큰 위협이 되지 못한다.

     

    모듈 시스템의 문제

    모듈 시스템에도 문제가 있었다라이언은 비동기 I/O, 이벤트 방출기 등의 기능은 공을 들여 잘 만든 데 비해 내부 설계는 즉흥적으로 이루어졌다고 생각했다.

    노드 생태계에서 npm을 표준 패키지 관리자로 사용한 점을 후회하며 npm의 중앙화되고 비공개적인 저장소 관리방식을 좋아하지 않았다라이언은 브라우저가 의존성을 임포트하는 방식이 더 깔끔하고 쉽게 유지보수할 수 있다고 생각했다.

     

    다른 사소한 문제

    확장자를 지정하지 않고 로컬 모듈을 요청하는 기능처럼 노드에는 다른 사소한 문제도 있었다.

     

    결국 라이언은 본인이 만들거나 참여했던 많은 기능을 더 제대로 만들고 싶다는 후회를 동기로 전환해 디노를 탄생시켰고 새로운 런타임의 설계를 이끌기 시작했다.

     

    새로운 기술은 언제나 흥미롭지만사용자입장에서는 불안정한 기능빈약한 커뮤니티 등은 큰 걸림돌이 된다이러한 문제는 걱정하지 않아도 될 것 같다.

    현재 디노는 버전업과 디노를 지원하는 라이브러리 수가 폭발적으로 증가하고 커뮤니티 또한 활발하게 움직이는 것을 알 수 있다.

     

    이 책은 디노 입문서로 노드 개발자나처음 접하게 되는 누구나 쉽게 이해할 수 있도록 개발과 노드의 문제점을 해결하는 과정의 사례를 들어 설명하고 있는 특징이 있다.

     

    마지막 장에서 저자가 구현한 예제를 다양한 주제로 제시하고 있다.

    이 책은 150페이지로 편집되고관련 참고 사이트를 각주로 달아놓아 혼자 따라가며 살펴보게 배려해 놓았다짬을 내어 읽어보고 새로운 런타임 기법을 익혀보시길!!!

    특히 백앤드 개발자들의 골치거리인 보안 문제의 해결을 위해자바스크립트의 새로운 보안 런타임 디노의 모든 것을 이해하고 안전한 시스템 개발 전문가로 발전 하기를!!!!

     

      "한빛미디어 <나는 리뷰어다활동을 위해서 책을 제공받아 작성된 서평입니다."

  •  

     
     
    디노 첫걸음 저자 페르난도 돌리오 지음, 우정은 출판 한빛미디어 발매 2021.03.10.

    디노는 노드 제작자 라이언 딜이 만든 새로운 자바스크립트 백엔드 플랫폼이다.

    보통 디노하면 공룡이 생각나는 데 저자이름도 페르난도 돌리오 라고 비슷한 느낌이 든다.

    노드가 10년 넘게 자바스크립트 진영의 확고한 플랫폼으로 자리매김했었는 데 왜 디노를 더 만들었는가 의문이 들기도 했다. 하지만 이 책을 보니 확실히 이유를 알 수 있었다.

    노드는 타입스크립트를 바로 사용할 수 없고 타입스크립트컴파일러를 통해서 한번컴파일하고 나서 자바스크립트로 활용한다. 이런 단점이 디노가 나오게 된 배경이기도 했지만 기본 설치된 표준 라이브러리가 따로 없고 npm패키지를 통해 받은 라이브러리를 주로 콜백 형태로 연결해서 사용을 한다. 물론 훌륭한 개발자라면 npm패키지를 통해 받았다고 하더라도 본인의 설계에 맞춰서 보안 시큐어 등을 추가로 구현하겠지만 대부분의 사용자는 그냥 사용하는 것이 문제다.

    디노는 기본 표준 라이브러리가 어마어마하며 기본으로 접근 권한 허용을 별도로 설정하도록 되어 있어서 보안성이 탁월하게 좋은 플랫폼이다.

    이 책을 읽다 보면 디노에 대해서만 아는 것이 아니라 자바스크립트와 타입스크립트뿐만 아니라 보안과 다양한 데브옵스 마이크로 서비스에 대한 지식도 얻을 수 있다.

    무엇보다도 저렴한 가격에 한손에 쏙 들어오는 첫걸음 시리즈는 가성비가 매우 좋은 책이다. 사전지식이 없어도 1주일만 읽으면서 따라해보면 내용을 완벽히 이해할 만큼 설명이나 예제가 쉽게 잘 구성되어 있다.

    책에서 다양한 개발환경 구성과 설치방법 및 무설치 실행환경등을 소개해 주고 있어서 어디서나 실습을 해 볼 수 있다. 물론 노드가 10년 넘게 쌓아온 기존코드들과 노드의 모든 장점을 다 대체할 거라고는 생각할 수 없지만 머지않아 충분히 대체하리라 보이는 플랫폼이다.

    웹 백엔드 개발자가 아니어도 전공자가 아니어도 홈페이지 하나정도는 만들어보고 싶었을 수 있다. 심지어 책에 나오는 모든단어가 처음 보는 단어라고 할 지라도 읽어보는 데 전혀 문제가 되지 않는다. 속물같아 보일수도 있지만, 이 가격에 이 정도 책이면 나름 훌륭한 선택이라고 생각한다. 그리고 이 책은 언제가 될지 모르겠지만 언젠가는 꼭 도움이 되리라고 기대한다.

     
     
    디노 첫걸음 저자 페르난도 돌리오 지음, 우정은 출판 한빛미디어 발매 2021.03.10.

    디노는 노드 제작자 라이언 딜이 만든 새로운 자바스크립트 백엔드 플랫폼이다.

    보통 디노하면 공룡이 생각나는 데 저자이름도 페르난도 돌리오 라고 비슷한 느낌이 든다.

    노드가 10년 넘게 자바스크립트 진영의 확고한 플랫폼으로 자리매김했었는 데 왜 디노를 더 만들었는가 의문이 들기도 했다. 하지만 이 책을 보니 확실히 이유를 알 수 있었다.

    노드는 타입스크립트를 바로 사용할 수 없고 타입스크립트컴파일러를 통해서 한번컴파일하고 나서 자바스크립트로 활용한다. 이런 단점이 디노가 나오게 된 배경이기도 했지만 기본 설치된 표준 라이브러리가 따로 없고 npm패키지를 통해 받은 라이브러리를 주로 콜백 형태로 연결해서 사용을 한다. 물론 훌륭한 개발자라면 npm패키지를 통해 받았다고 하더라도 본인의 설계에 맞춰서 보안 시큐어 등을 추가로 구현하겠지만 대부분의 사용자는 그냥 사용하는 것이 문제다.

    디노는 기본 표준 라이브러리가 어마어마하며 기본으로 접근 권한 허용을 별도로 설정하도록 되어 있어서 보안성이 탁월하게 좋은 플랫폼이다.

    이 책을 읽다 보면 디노에 대해서만 아는 것이 아니라 자바스크립트와 타입스크립트뿐만 아니라 보안과 다양한 데브옵스 마이크로 서비스에 대한 지식도 얻을 수 있다.

    무엇보다도 저렴한 가격에 한손에 쏙 들어오는 첫걸음 시리즈는 가성비가 매우 좋은 책이다. 사전지식이 없어도 1주일만 읽으면서 따라해보면 내용을 완벽히 이해할 만큼 설명이나 예제가 쉽게 잘 구성되어 있다.

    책에서 다양한 개발환경 구성과 설치방법 및 무설치 실행환경등을 소개해 주고 있어서 어디서나 실습을 해 볼 수 있다. 물론 노드가 10년 넘게 쌓아온 기존코드들과 노드의 모든 장점을 다 대체할 거라고는 생각할 수 없지만 머지않아 충분히 대체하리라 보이는 플랫폼이다.

    웹 백엔드 개발자가 아니어도 전공자가 아니어도 홈페이지 하나정도는 만들어보고 싶었을 수 있다. 심지어 책에 나오는 모든단어가 처음 보는 단어라고 할 지라도 읽어보는 데 전혀 문제가 되지 않는다. 속물같아 보일수도 있지만, 이 가격에 이 정도 책이면 나름 훌륭한 선택이라고 생각한다. 그리고 이 책은 언제가 될지 모르겠지만 언젠가는 꼭 도움이 되리라고 기대한다.

결재하기
• 문화비 소득공제 가능

배송료 안내

  • 책, 아이템 등 상품을 1만원 이상 구매시 무료배송
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
디노 첫걸음
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
디노 첫걸음
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
디노 첫걸음
구입처*
구입일*
부가기호*
부가기호 안내

* 회원가입후 도서인증을 하시면 마일리지 500점을 드립니다.

* 한빛 웹사이트에서 구입한 도서는 자동 인증됩니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한됩니다.

* 절판도서, eBook 등 일부 도서는 도서인증이 제한됩니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실