처음 처음 | 이전 이전 | 1 | 2 |다음 다음 | 마지막 마지막
소플의 처음 만난 AWS - 기초부터 차근차근, 따라 하며 익히는 AWS 서비스 가이드 소문난 명강의
이인제 지음 / 한빛미디어 / 2024년 11월
평점 :
장바구니담기


필요한 선수 지식

요구 학력 : 관련학과 대졸 이상

예제 코드 : 스크린샷

난이도 : ★★☆☆☆


책의 구성 중 마음에 들었던 주제

CHAPTER 01 안녕, 클라우드!

클라우드의 탄생과 써야하는 이유, 장점들을 온프레미스 서버와 클라우드 서비스를 비교하면서 설명한다. 온프레미스는 여전히 고도의 보안 요구나 맞춤형 설정이 필요한 경우 유리할 수 있지만, 클라우드는 비용 효율성, 유연성, 글로벌 확장성 측면에서 더욱 경쟁력이 있어 기업의 요구와 환경에 따라 온프레미스와 클라우드, 또는 하이브리드 환경을 선택하는 것이 중요하다는게 이 챕터의 중요 골자였다.


CHAPTER 03 Elastic Compute Cloud(EC2)

CHAPTER 04 Elastic Block Store(EBS)

AWS의 알파이자 오메가인 EC2와 EC2의 저장공간인 EBS를 설명한다. EC2는 클라우드 환경에서 컴퓨팅 리소스를 제공하며, 애플리케이션 실행에 필수적인 역할을 하고 EBS는 EC2 인스턴스의 데이터를 저장하는 고성능 블록 스토리지로, 데이터의 안정성과 유연성을 제공한다. 따라서, AWS에서 EC2와 EBS를 함께 사용하면 탄력적이고 비용 효율적인 클라우드 인프라를 구축할 수 있다.


CHAPTER 16 미니 프로젝트

이 챕터에서는 사진을 공유하는 웹 사이트를 만들면서 앞서 배운 모든 챕터의 내용을 실습할 수 있도록 구성되어있다. 마지막으로 강조하는 것은 리소스를 정리하지 않으면 과금이 되므로 실습을 마친 이후에는 꼭 리소스를 정리하라는 것이었다. 제일 중요한 내용이다.


읽고 난 후

이 책은 기본적으로 AWS 입문자도 쉽게 볼 수 있도록 책의 75% 정도를 스크린샷으로 채웠다. 나중에 인터페이스가 바뀌면 어쩌지 싶을 정도이다. 그리고 각 단원의 마지막 부분에 실습 단원을 배치하여 앞서 배운 주요 개념을 바탕으로 간단한 실습을 진행하도록 구성되어있다. 입문서로서 훌륭한 구성이다.


지금까지 다녔던 회사들은 Azure와 Dell 온프레미스 서버를 사용했기 때문에 AWS는 이번에 처음 경험해 보았다. 이번에 친절한 이 책을 참고하여 AWS를 실습해볼 수 있었다. 물론 이전 회사에서 사용했던 Azure도 AWS와 같은 다양한 서비스들을 제공했지만, AWS 만큼 다양하지는 않았다. AWS에서는 요구 사항이 생길 때 마다 서비스를 추가하여 조립하는 식으로 아키텍처를 고도화 할 수 있겠구나 싶었다. 물론 고생이 덜해지는 만큼 돈이 많이 나올테지만…


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


https://syudal.kr/post/%EC%86%8C%ED%94%8C%EC%9D%98-%EC%B2%98%EC%9D%8C-%EB%A7%8C%EB%82%9C-AWS/


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
한 권으로 배우는 게임 프로그래밍 - 수학과 물리, 자료구조와 알고리즘, 디자인 패턴으로 익히는 게임 개발 필수 지식
박태준.박효재.윤하연 지음 / 한빛미디어 / 2024년 10월
평점 :
장바구니담기


필요한 선수 지식

요구 학력 : 컴퓨터 관련 학부생 3학년 이상

예제 코드 : C#, Unity

난이도 : ★☆☆☆☆


책의 구성 중 마음에 들었던 주제

CHAPTER 02 수학과 물리

2.2 위치와 이동

도입부에서는 원점을 기준으로 좌표를 구성하는 방식들을 설명하는데 이후 스칼라에서 벗어나 벡터의 간단한 설명과 함께 연산하는 방법들을 설명한다. 벡터는 게임에 있어서 오브젝트의 이동을 구현할 때 필수적이다. 간단히 걷기로 표현되고 중학교 때 배운 거속시 공식(거리 = 속도 * 시간; s = vt)이라던가, 중력이 작용하는 상황에서 자유 낙하를 표현하는 등가속도 운동 공식(v = v0 + at)을 실제 게임에서 이루어지는 많은 이동 상황에 비추어 설명한다.


2.3 각과 회전

이 단원에서는 각과 회전으로 대표되는 라디안과 삼각함수를 중점으로 설명한다. 고등학교에 다닐때 많은 친구를 수포자의 길로 이끈 게 삼각함수였는데 게임에서의 삼각함수는 필수적이다. 수포자들을 위해 여러 삽화를 추가하여 그래프를 바탕으로 삼각함수를 쉽게 설명하고 있다.


CHAPTER 03 게임 프로그래밍에 필요한 기법

3.6 충돌 처리 알고리즘

게임에서의 많은 상호작용은 충돌로 이루어진다. 충돌을 감지하는 알고리즘은 대표적으로 AABB, OBB 등이 있는데 이 단원에서는 이런 알고리즘들을 바탕으로 충돌을 감지하는 방법들을 설명한다.


CHAPTER 04 게임 프로그래밍 방법론

4.3 게임 디자인 패턴

4.4 안티 패턴

디자인 패턴은 일반적인 소설 잘 쓰는 방법과 같이 내가 작성한 코드를 다른 사람이 읽기 쉽게 서로 약속한 규칙이라고 이해하면 쉽다. 이 단원에서는 게임에서 자주 사용하는 패턴인 상속(Inheritance), 상태(State), 싱글톤(Singleton), 옵저버(Observer), 커맨드(Command)를 실제 사례를 빗대어 설명한다.


읽고 난 후

이 책에서는 각 챕터 별로 맨 앞에 ‘왜 배워야 할까?’라는 소단원이 있어 배워야 하는 이유를 논리적으로 설명하고 있다. 또한, 이해가 다소 어려울 수 있는 부분에는 손으로 그린 듯한 삽화들이 첨부되어 있어 이해를 돕는다. 다만, 게임 개발을 하면서 발생하는 많은 문제를 해결하는 데 도움을 주는 책이라기보다는 게임 개발을 처음 시작하기 전에 간단히 읽고 넘어가는 개론서로 보는 것이 좋을 것 같다.


게임을 만들 정도의 프로그래머라면 상당한 전문성을 갖췄다고 생각한다. 기본적으로 게임 엔진에 대한 이해도와 해당 게임 엔진에서 사용하는 언어 숙련도, 좌표계 및 벡터에 대한 논리적 사고가 뒷받침되어야 하기 때문이다. 특히 게임을 개발하다 보면 처음 보는 버그나 예기치 못한 문제를 마주치는 일이 흔한데 이를 빠르게 찾아내고 해결하는 과정에서 전문성이 낮았더라도 결국에는 전문성이 향상된다.


어떤 프로그래밍 언어를 중급자 정도 구사할 수 있다고 생각될 때마다 해당 언어로 게임을 개발해 봤었는데 문제 해결 능력을 키우고 데이터 구조, 알고리즘, 그래픽스 처리 등 다양한 컴퓨터 과학 개념을 실전에 적용해 보는 좋은 기회가 되었다.


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


https://syudal.kr/post/%ED%95%9C-%EA%B6%8C%EC%9C%BC%EB%A1%9C-%EB%B0%B0%EC%9A%B0%EB%8A%94-%EA%B2%8C%EC%9E%84-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D/


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
쿠버네티스 창시자에게 배우는 모범 사례 - 실전에 바로 적용하는 핸즈온 쿠버네티스, 2판 O'reilly 오라일리 (한빛미디어)
브렌던 번스 외 지음, 이일웅 옮김 / 한빛미디어 / 2024년 10월
평점 :
장바구니담기


필요한 선수 지식

요구 학력 : X

예제 코드 : bash, Go, yml

난이도 : ★★★★★


읽기 전에

쿠버네티스와 도커는 모두 컨테이너 기술을 기반으로 하지만, 그 목적과 기능에 있어 중요한 차이점이 있다.


도커(Docker)는 컨테이너 런타임 기술로, 애플리케이션을 컨테이너라는 표준화된 유닛으로 패키징하는 데 사용된다. 도커 컨테이너에는 애플리케이션 실행에 필요한 모든 요소(라이브러리, 시스템 도구, 코드 등)가 포함되어 있다.


쿠버네티스(Kubernetes)는 컨테이너 오케스트레이션 도구로, 여러 컨테이너를 대규모로 관리, 조정 및 예약하는 데 사용된다.


그러나 도커와 쿠버네티스는 서로 경쟁 관계가 아니라 보완적인 관계에 있다. 일반적으로 도커를 사용하여 컨테이너 이미지를 생성하고 쿠버네티스를 사용하여 이러한 컨테이너를 대규모로 관리한다.


책의 구성 중 마음에 들었던 주제

CHAPTER 05 지속적 통합, 테스팅, 배포

쿠버네티스에 애플리케이션을 배포하기 위한 CI/CD 파이프라인 통합의 핵심 개념을 다룬다. CI/CD 파이프라인을 활용하면 리스크를 줄이고 처리량을 높여 애플리케이션을 유저에게 안정적으로 제공한다. 이 챕터에서는 개발자가 코드를 체크인하는 순간부터 프로덕션에 새 코드를 배포하는 과정을 완전히 자동화된 프로세스를 구축하는 방법을 설명한다.


CHAPTER 09 네트워킹, 네트워크 보안, 서비스 메시

쿠버네티스는 읽기 전에 설명했듯이 여러 컨테이너를 대규모로 관리, 조정 및 예약한다. 대규모로 관리, 조정 및 예약을 하기 위해서는 네트워크를 통해 분산 시스템을 관리한다. 특히 네트워크는 머리 아픈 주제인데, 네트워크를 설명하면 꼭 따라오는 주제인 네트워크 보안도 머리를 아프게 한다. 그러나 다행히도 이 책에서는 간략하게 모범 사례를 위주로 설명한다.


CHAPTER 13 외부 서비스와 쿠버네티스 통합

사실 쿠버네티스 클러스터에 있는 애플리케이션을 단독으로 사용하여 서비스하는 경우는 거의 없다. 일반적인 상황인 레거시 리소스(예: 온프레미스 데이터베이스)를 위한 새로운 애플리케이션 개발이나 인터페이스에 쿠버네티스를 사용할 때를 기준으로 External Name 서비스 사용, Endpoints 객체 사용, Service without Selector 사용을 통해 통합하는 방법을 설명한다.


CHAPTER 14 쿠버네티스에서 머신러닝 실행하기

도커의 워크로드 격리 및 보안 기능과 쿠버네티스의 오케스트레이션 기능은 머신러닝에 큰 도움이 된다. 머신러닝의 진행 단계 대부분은 배치 처리이므로 클러스터 오토스케일링을 사용하면 GPU가 탑재된 비싼 VM 사용료를 낮출 수 있다. 또한, Kubeflow라는 쿠버네티스에 기본 내장된 머신러닝 툴킷을 통해 쿠버네티스를 더욱 간편하게 사용할 수 있다. 하지만, 현재 분산 훈련이 현재 머신러닝에 있어 걸음마 단계라서 배치 처리의 활용을 제외하고는 적극적으로 사용하기엔 어려워 보였다.


읽고 난 후


이 책을 읽기 전에 주의해야 할 점이 있다면 이 책은 쿠버네티스의 기본 개념서가 아니라 실무 환경에서 활용하는 내용들로 구성되어 있다는 점이다. 기본서를 충분히 읽었어도 이 책에서 설명하는 내용들은 사실 굉장히 난해하고 어렵다. 하지만, 원서의 늬앙스를 최대한 반영한 듯한 번역 방식 뿐만 아니라 부연 설명, 모범 사례들이 이해하기 어려운 내용들을 쉽게 이해할 수 있도록 도와준다.


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


https://syudal.kr/post/%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-%EC%B0%BD%EC%8B%9C%EC%9E%90%EC%97%90%EA%B2%8C-%EB%B0%B0%EC%9A%B0%EB%8A%94-%EB%AA%A8%EB%B2%94-%EC%82%AC%EB%A1%80/


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
잘 읽히는 보고서 문장의 비밀 - 1,000만 직장인을 위한 보고서 문장 기술 27가지
임영균 지음 / 한빛미디어 / 2024년 8월
평점 :
장바구니담기


필요한 선수 지식

요구 학력 : X

예제 코드 : X

난이도 : ★☆☆☆☆


책의 구성 중 마음에 들었던 주제

문장 기술 01 내가 알아도 상대방은 모를 수 있다

보고서 이전에 대화할 때도 기본적인 내용이다. 대부분 많은 사람들이 지식의 저주에 걸려 본인이 알고 있는 지식을 상대도 당연히 알고 있을 것으로 생각하고 많은 부분을 생략한 채 설명하곤한다. 이후 나오는 기술들이 주어의 누락과 술어 사용의 명확성과 모호성의 제거 방법들을 설명하는데, 이 문장 기술을 기반으로 설명한다. 따라서, 이 책을 읽을 때는 ‘내가 알아도 상대방은 모를 수 있다’를 항상 염두에 두어야 한다.


문장 기술 10 하나의 문장에는 하나의 생각을 담아 두 줄 이하로 쓴다

책을 읽으면서 굉장히 공감되었던 부분이다. 인터넷의 많은 글들이 하나의 문장에 여러 개의 생각이 담겨있을뿐더러 단어 중복과 중언부언, 사족이 덕지덕지 붙어 이해하기 어렵다. 많은 사람들이 맞춤법은 준수하려고 굉장히 많은 노력을 하지만 사실 맞춤법 이전에 문장의 호응이나 구조 등을 개선해서 간결하게 사용해야 한다고 생각했었는데 이 챕터에서 구체적인 방법들을 제시한다.


문장 기술 19 조사를 멋대로 생략하면 문장이 삐걱거린다

문장 기술 21 구와 절을 잘 이어야 문장이 매끄럽다

두 개의 문장 기술의 거의 일맥상통한 내용이라고 생각한다. 다시 한번 위에서 마음에 들었던 주제인 문장 기술 01의 ‘내가 알아도 상대방은 모를 수 있다’가 재조명되는데, 조사를 멋대로 생략하여 문장이 삐걱거리고 구와 절을 제멋대로 연결하여 문장이 매끄럽지 못하다. 이 문장 기술들에서는 이해하기 쉽게 문장을 구성하는 방법을 설명한다.


문장 기술 25 판교어의 오류, 외래어 사용 주의사항

문장 기술 26 쉬운 표현이 더 나을 때도 있다

요즘 SNS 등지에 판교어(판교 사투리)라고 부르는 전문어에 관련된 이야기들이 많이 올라오고 있다. 모든 전문어가 그러하듯 판교어는 IT 기업에서 많이 사용하는 언어들을 포함하여 신조어, 축약어, 외래어들로 구성되어 있다. 같은 회사의 구성원들끼리 소통할 때는 그들끼리 약속된 단어를 사용하니 빠르고 편리하겠지만 불과 옆 회사로 이직하기만 해도 조직 문화가 달라 소통되지 않는 문제가 발생한다. 이 문장 기술들에서는 이러한 문제를 꼬집고 해결 방법들을 제시한다.


CHAPTER 04 실무에 바로 적용 가능한 보고서 작성 꿀팁

이 장에 포함된 모든 보고서 작성 꿀팁들은 하나하나 놓칠 것이 없는 내용들이다. 간단히 정리하자면, 상사의 성격에 따른 기획 보고서 작성 방법과 보고서를 언제 보고할 것인지와 같은 내용들과 표, 차트, 수치와 같은 복잡한 내용들을 보기 쉽게 제시하는 방법들까지 설명한다.


읽고 난 후

추천 지수 : ★★★★★


국립대학의 교직원으로 2년가량 재직할 때 제일 힘들었던 것은 공문서를 작성하는 것이었다. 다행히도 KORUS 공문 보관함에는 몇 년간의 주고받은 공문들을 바탕으로 답습할 수 있었고, 계장님께서 주신 공문서 작성 지침서와 다정한 실장님 덕분에 공문서를 잘 작성하는 방법을 배울 수 있었다. 물론 이 책에서 공문서체의 한자어 사용을 꼬집어 해당 내용을 고치려고 노력하고 있다. 이 책을 읽으면서 좋은 글은 좋은 의사소통을 불러오고 좋은 의사소통은 불필요한 사회적 비용을 줄일 수 있다는 생각이 들었다.


또한, 요 몇 년간 자소서와 취업 시장에서 많이 등장했던 내용 중 하나는 의사소통 역량이다. 한국의 기본 문맹률은 1%인 만큼 99%의 사람들이 글을 읽고 쓸 수 있지만, 많은 사람들이 작성한 글을 읽어보면 말 그대로 읽고 쓰기가 가능할 뿐 다른 사람들에게 잘 읽히도록 쓰는 능력은 부족하다고 생각했다. 특히 그들만의 단어 사용을 지양해야 한다고 생각한다. 그들끼리는 원활히 소통하겠지만, 그 문서를 읽을 신입자에게는 어려운 말투성이일 테니까.


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


https://syudal.kr/post/%EC%9E%98-%EC%9D%BD%ED%9E%88%EB%8A%94-%EB%B3%B4%EA%B3%A0%EC%84%9C-%EB%AC%B8%EC%9E%A5%EC%9D%98-%EB%B9%84%EB%B0%80/


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
업무에 활용하는 Node.js - 웹 애플리케이션 개발로 배우는 Node.js 원리와 실무 가이드
이토 고타 지음, 김모세 옮김 / 한빛미디어 / 2024년 5월
평점 :
장바구니담기


JavaScript라는 단일 언어로 클라이언트와 비동기 이벤트 기반 서버를 빠르고 효율적으로 개발하고 싶은 개발자들에게 추천하고 싶은 책


필요한 선수 지식

요구 학력 : X

 

예제 코드 : JavaScript

 

난이도 : ★☆☆☆☆

 

책의 구성 중 마음에 들었던 주제

1장 처음 만나는 Node.js

개발자들이 흔히 궁금해하는 작동원리를 설명하는데, 비동기 이벤트 기반 서버의 작동 원리를 설명하기 위해 상당히 노력한 느낌이 난다. 특히 libuv에 기반한 논블로킹 I/O와 이벤트 루프, C10K 문제에 대해 심층적으로 다룬다.

 

4장 Node.js에서의 비동기 처리

현대 프로그래밍 언어는 기본적으로 비동기 처리를 지원한다. 그중 많은 언어들이 await과 async 키워드로 쉽게 비동기를 사용할 수 있도록 구현되어 있는데 JavaScript도 포함된다. 특히, 비동기 처리의 기본인 Callback과 연결지어 언어의 발전 단계를 설명하는데, 콜백 지옥을 보완하기 위한 Promise, Promise를 사용함으로 인한 코드가 장황해지는 문제를 보완하기 위한 await과 async 키워드로 연결되는 예시를 포함하여 자세히 설명한다.

 

6장 익스프레스를 이용한 REST API 서버/웹 서버

Express.js는 요즘 많이 사용하는 RESTful API 서버를 구현하기 위한 프레임워크이다. 에러 핸들링과 데이터베이스 연동, ejs를 통한 뷰 템플릿 사용 등의 방법을 설명한다. 후반부에 배포 방법과 도커를 사용한 배포 방법에 대해 설명하는데, 백엔드에 필수적인 CD(Continuous Delivery/Deployment) 방법을 설명하지 않아서 살짝 아쉬웠다.

 

읽고 난 후

기본적으로 많은 삽화와 풍부한 각주, 소스코드에 달린 주석 등 주니어 개발자가 읽기에도 무리가 없도록 굉장히 친절하게 설명되어 있다. 그리고 해당 절이 끝나는 시점에 필자가 하고 싶은 내용이나 곁들일 만한 설명이 필요한 경우에는 'COLUMN'이라는 섹션에서 설명되어 있다. 하지만 전혀 필요하지 않은 내용이 아니고, 읽으면 추후에 도움이 될만한 내용들이라 전혀 거슬리지 않았다.

다만, 책의 내용이 기초적인 내용이라 실무에 적용하려면 심층서가 필요해보인다.


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


https://syudal.kr/post/%EC%97%85%EB%AC%B4%EC%97%90-%ED%99%9C%EC%9A%A9%ED%95%98%EB%8A%94-Nodejs/


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
처음 처음 | 이전 이전 | 1 | 2 |다음 다음 | 마지막 마지막