이것이 우분투 리눅스다 - 우분투 리눅스 설치부터 네트워크와 서버 구축, 운영까지, 개정판 이것이 시리즈
우재남 지음 / 한빛미디어 / 2020년 11월
평점 :
구판절판


리눅스는 어렵다.


설치도 쉬워지고, 참고 할 책도, 사이트도 많아졌지만

처음 시작하는 사람에게는 여전히 막막하고 어려운 운영체제다.


처음부터 제대로 배워 보겠다고, 글자만 가득찬 큰 책을 펼치고

리눅스의 역사 부터 공부하다 보면 금방 포기 하기 쉽상이다.


거기에다 실무에서 필요하다고 해서 공부 하다 보면 한 대의 컴퓨터로는 좀처럼 테스트 해보기 어려운 상황도 많다.


저자는 이런 부분들을 해결하고 쉽고 빠르게 리눅스 실무를 배울 수 있는 학습 로드맵과 학습 방법을 제시 한다.


리눅스 뿐만 아니라, 이런 환경을 처음 접하는 사람을 위하여 가상머신의 소개 부터 시작하여, 실무서버 구축 밑 테스트를 위한 준비를 확실하게 해주어, 책의 내용을 따라가는 것을 넘어서 책에서 제공하지 않는 부분에 대한 부분도 스스로 쉽게 공부 할 수 있도록 도와 준다. 


게다가 이것이 우분투 리눅스다(개정판) 에서는 무료 동영상 강의 까지 제공해주고 있다.


https://youtu.be/pSuHUNghIeM


리눅스를 처음 시작하는 꼭 추천하는 책이다.


다만, 동영상강의 처음에서도 이야기 하고 있지만, 이것이 리눅스다, 이것이 페도라 리눅스다 와는 리눅스 배포판의 차이만 있을 뿐 사실상 같은 내용이므로, 어느 책으로 학습해도 상관은 없다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
처음 시작하는 파이썬 - 파이썬 패키지를 활용한 모던 컴퓨팅 입문, 2판
빌 루바노빅 지음, 최길우 옮김 / 한빛미디어 / 2020년 8월
평점 :
장바구니담기


처음 시작하는 이라는 제목이 무색하게 책이 참 두껍다.

보통 입문서라 함은 좀 얇고, 뭔가 보기에 친절 할 것 같은 느낌이라고 생각 되는 것을 확 깨고 있다. (심지어 표지도 좀 무섭다.)


다만, 내용을 살펴 보면 1부와 2부로 나누어 1부는 파이썬 기초를 다루고, 2부는 파이썬 개발을 위한 여러 가지 응용 패키지를 소개한다.


입문편과 활용편을 합쳐놓은 구성으로 파이썬을 처음 시작하는 사람이라면 1장 부터, 어느정도 기본적인 문법을 알고 있다면 2장의 내용 중에서 필요한 내용을 발췌해서 볼 수 있도록 하고 있다.

취미가 아니라면, 여러 프로그래밍 언어를 배우는 최대의 목적은 무언가 필요한 작업을 완료 하기 위함이다. 어떤 작업을 수행 하기 위한 방법을 알기 위해 주로 검색을 많이 사용 하는데, 이 책은 검색에 드는 시간을 많이 줄여 주며, 필요 한 내용을 어떻게 사용 하는 지 예제를 통해 잘 설명 하고 있다.


물론 파이썬의 전체 내,외부 라이브러리를 소개 하는 것은 불가능 하기 때문에, 내가 꼭 사용해야하는 것에 대한 설명이 없거나 부족 할 수 도 있지만, 한번 비슷한 일을 해본 경험이 있는 것은 아주 처음부터 시작하는 것 보다는 당연히 훨씬 수월하다.


파이썬을 통해 할 수 있는 일이 무궁무진 한데, 그걸 어떻게 시작해야 할지 약간은 막막한 사람에게 추천 하는 책이다.



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
실전 자바 소프트웨어 개발 - 4가지 프로젝트로 배우는 최신 자바 개발 기법
리처드 워버턴 지음, 우정은 옮김 / 한빛미디어 / 2020년 6월
평점 :
장바구니담기


최신 자바 개발 기법?

제목만 보고 최신 자바 기술을 다루는 책인줄 알았다. 최신 자바 기술을 확인 하는 것이 목적이라면 저자의 다른 책인 모던 자바 인 액션을 보는 편이 낫다.


물론 7장에서는 람다표현식, 스트림, Optional 등의 최신(?) 자바기술을 다루지만, 이 얇은 책에서 소개 이상의 내용을 기대 하기는 어렵다. 


이 책의 목적은 최신 기술을 소개하는 것이 아니라 좋은 소프트웨어를 개발 하는 방법을 배우는 것이다.


SOLID?

책에서는 소프트웨어 개발과 관련한 여러 핵심 주제들을 다룬다. 언젠가의 수업에서 들었던 듯한 SOLID 원칙을 책의 여러 챕터를 걸쳐 예제와 함께 소개 한다.


소프트웨어 설계에 관한 내용이다 보니 단순히 정의나 설명 만으로는 이해하기가 많이 힘든데, 실제 예제 (단순 예제가 아니라, 미니 프로젝트에 기반한 예제) 를 통해 이 원칙을 어떻게 구현 하는지, 구현 하는데에 어떤 디자인 패턴이 사용되는지를 설명 한다.  


누가 이 책을 봐야 할까?

자바도 사용 할 줄 알고, 스프링프레임워크도 사용 할 줄 알지만, 프레임워크가 왜 그렇게 구성되었는지 이해를 못할 때 꼭 읽어 봐야 한다고 생각 한다. 스프링프레임워크를 처음 배울 때 의존성 주입이라는 단어를 이해 못해서 고생 하던 때가 있었는데, 이 책을 먼저 읽고 의존성 주입에 관한 내용을 배웠다면, 이해가 훨씬 빨랐을거라고 생각한다.


물론 저자는 프로그래밍 경력이 조금 생기기 시작한 주니어 개발자라면 반드시 읽어야 한다고 이야기 한다.


프로젝트 기반 설명?

소프트웨어 개발 개념을 쉽게 이해 할 수 있도록 예제 프로젝트를 통해 설명 한다. 입출금 내역 분석기 프로젝트는 실제로 많이 사용하는  파일을 읽어서 업무를 처리하는 내용을 진행 하며, 소프트웨어 설계의 원칙 같은 큰 내용과, 예외를 처리하는 등의 소소하거나 중요한 내용 또한 메이븐 같은 빌드 도구에 대한 설명 까지 진행 하고 있다. 물론 구체적인 사용법은 따로 배우면 된다.


마치며

인덱스 포함 216페이지의 얇은 책이다.

어렵지 않은 책이지만, 사실은 어려운 내용을 다루고 있기 때문에  단순히 책을 다 읽었다고 해서 모든 내용을 이해하거나, 이해한 내용을 바로 사용 할 수 있는것은 아니다.


그래서 저자는 “중요한 것은 이를 연습(의식적 연습 : 목표를 가진 체계적인 연습)하는 것이다" 라고 이야기 한다. 반복하여 연습 하다 보면 의식적으로 사용하지 않더라도 습관으로 자리 잡는다. 모든 배움이 그렇겠지만 소프트웨어 개발의 세계에서도 통하는 이야기이다. 


사족

소프트웨어 카타라는 단어를 처음 들어서 검색해보았다. 일본에서 유래된 단어인듯 한데, 해석 하자면 작은 훈련용 코드를 많이 풀어보았다는 말인듯 한다. 


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
엔터프라이즈 자바 마이크로서비스 - JVM 기반 대규모 애플리케이션을 마이크로서비스로 설계, 구축, 관리하는 기술
켄 피니건 지음, 오현석 옮김 / 한빛미디어 / 2019년 7월
평점 :
절판


마이크로서비스라는 단어를 많이 들어보기는 했는데, 실제로 업무에 활용할 일이 없어서 전체적인 개념을 이해하고 있지는 못했다. 


책은 전형적인 엔터프라이즈 자바 아키텍쳐에서 시작해서 그것이 왜, 어떻게 복잡해졌는지를 보여주고 그로인한 문제점이 무엇인지 확인 하는 것으로 시작 한다.


그리고 마이크로서비스가 무엇인지, 마이크로서비스들로 이루어진 분산 아키텍처가 무엇인지 또한 어떤 이점이 있는지에 대해서 설명을 이어 나간다.


1장의 마지막에서는 마이크로서비스로 마이그레이션 할 때 사용할 수있는 패턴들에 대해서 이야기 하고 있는데, MSA 에 대한 전체적인 그림을 파악 하려면 1장만 읽어도 될듯 하다.


2장 부터는 실제로 카얌베 모노리스라는 애플리케이션을 마이크로서비스로 마이그레이션 하면서 마이크로서비스를 엔터프라이즈 자바로 개발하는 방법에 대해 배운다.


5장은 클라우드 개념 및 클라우드안에서의 개발에 대해 개념이 별로 서있지 않아서 많이 어려웠다.


좀 건너뛰어 9장을 재미있게 읽었는데, 키클록이라는 사용자 식별과 접근 관리를 제공해 주는 오픈소스 프로젝트를 소개 하고, 이것으로 마이크로서비스에서 사용하는 것에 대한 내용을 다룬다. 


“마이크로서비스에 필요한 것이 무엇이든 (인증, 권한 부여 또는 둘 다) 설계 단계에서 보안을 고려해야 한다. 미루고 미뤄서 마지막에 다룰 수 있는 것으로 보안을 간주해서는 안된다” 라는 문구는 인상적이다.


책을 읽으면서 예전에 봤던 11번가 Spring Cloud 기반 MSA로의 전환 : 지난 1년간의 이야기 (https://www.slideshare.net/balladofgale/spring-camp-2018-11-spring-cloud-msa-1) 를 다시 한번 봤는데, 예전에 전혀 모르겠던 내용이 조금은 더 이해되는 느낌이기는 했다. 


MSA 에 대해서 전혀 모른다면 1장 정도는 꼭 읽어보길 권하고 싶다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
학교에서 알려주지 않는 17가지 실무 개발 기술 - 문자열 인코딩부터 웹 필수 지식까지
이기곤 지음 / 한빛미디어 / 2020년 4월
평점 :
장바구니담기


공부를 처음 시작할 때 부터 지금까지,  개발에 관한 모르는 용어나 기술은 줄어들지 않고 있다. (오히려 계속 늘어가고 있는 실정이다.) 


보통 무언가 작업을 하다가 모르는 내용이 나와서 막히면 구글신의 은혜를 입기 위해 크롬을 키기 마련이다. 다만, 제대로 정리된 내용을 찾아내고 그걸 또 이해하는 것은 온전히 나의 몫이다.


더욱이 시작한지 얼마 안된 상태에서는 무엇을 먼저 찾아야 할지도 모르는 경우가 수두룩 하다.  그래서 간단하게 나마 여러가지 기술을 소개 하는 책에 대한 요구가 있어 왔고 이미 그런 책들을 많이 보아 왔다.


“학교에서 알려주지 않는 17가지 실무 개발 기술” 은 실제로 실무에서 사용 하는 여러가지 기술에 대한 내용을 소프웨어를 지탱하는 기술, 데이터 처리 기술, 웹을 지탱하는 기술 이라는 3가지 파트로 나누어 17가지의 기술을 설명 하고 있다.


기술에 대한 레퍼런스 북이 아니라, 소개서나 입문서의 포지션을 지니고 있기 때문에 자세한 내용은 설명하지 않는 것도 많이 있지만, 설명 자체가 군더더기 없고 깔끔해서 읽으면서 딱히 막히는 부분이 없었다.


그리고 요즘 많이 사용 하고 있는 파이썬 언어로 간단한 예제를 작성하여 보여주기 때문에 때론 뜬구름 잡기가 될 수 있는 부분에 대한 설명도 구체적으로 보여 주고 있다. (책을 읽으면서 각자 사용하는 언어별 예제를 작성해 보는 것도 재미있을 듯 하다.)


기본이 되는 기술들에 대한 개략적인 이해를 배우고, 사용하는 언어별로 내용에 대항하는 라이브러리나 기술 등을 찾아서 공부 하는 로드맵을 스스로 그리다 보면, 개발 실력이 어느순간인가 일취월장 해질 것으로 기대 된다.


신입 사원이 들어 온다면 꼭 한권 선물하고 싶은 책이다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo