최근의 여러 스타트업들은 자신들의 서비스를 빠르게 런칭하고자 다양한 프레임워크를 이용하고 있다. RubyOnRails, Django등과 같은 프레임워크를 이용해 빠르게 개발하는 것이 선호되고 있다. AWS와 같은 PaaS를 통해 인스턴스를 추가적으로 사용하여 이곳에 스프링 프레임워크 관련 XML을 설치하게된다.


초기 스프링 프레임워크의 콘셉트는 가벼움이었다. 하지만, EJB의 SessionBean, EntityBean과 같은 요소들의 설정으로 무거워졌다. 이 대안으로 스프링 부트(Spring Boot)가 탄새오댔다. 설정 자동화를 통해 빠른 개발이 가능하고 임베디드 톰캣을 통한 main 메서드 실행과 클라우드 환경에서도 동작 가능하게 됐다.




챕터 구성은 보다시피 깔끔하다. 정돈된 모습이 가독성이 좋다.


1장. 개발 환경의 변화와 자바

2장. 서블릿

3장. 스프링 프레임워크

4장. 스프링 부트 웹 개발

5장. REST API 서버 만들기

6장. 스프링 부트와 데이터

7장. 커스텀 스프링 부트 스타터

8장. 예외 처리 및 테스트

9장. 배포

10장. 모니터링

11장. 캐시

12장. 회원 관리



최근의 아키텍처는 메인프레임-서버/클라이언트-웹 인프라를 거쳐 오픈 소스 기반 클라우드로 확장되고 있다. 인스턴스 및 컨테이너를 통해 물리 설치 없이 자유롭게 확장할 수 있는 시스템을 구성하는 형태이다.



각 장의 마지막 부분에는 '마무리'를 통해 해당 장을 짧게 정리하고 있다. 모든 내용을 읽기 힘들어 훑어보고자 하는 독자에게 유용하다.



그래들(Gradle)을 이해하기 전 서블릿을 알아야된다. 서블릿은 JVM(Java Virtual Machine) 기반에서 웹 개발 하고 필요한 API이다. 서블릿 개발환경을 설정하기 위해서는 그래들이 필요한데, 한마디로 라이브러리를 편리하게 추가할 수 있는 빌드 도구이다. 위 코드와 같이 build.gradle 파일을 생성해 JAR파일을 여기에 추가해 사용한다.



REST(Representational State Transfer) 컨트롤러를 활용하는 부분이다. 클라이언트 응답을 JSON으로 제공하는 API로 만들어보자.



위 그림과 같이 FronController 클래스를 이용한 코드 흐름을 보여주고 있다.



Hikaricp 벤치마크 결과를 보여주고 있다. 라이브러리의 성능을 비교하고 있다.



자바 웹서비스 개발을 시작하는 사람들을 위한 입문서! 서블릿, Spring Data JPA, REST API, Actuator를 활용한 모니터링, 클라우드 서비스를 이용한 배포까지 다루고 있다.


자바 입문서를 읽었거나 C 언어를 학습한 이후 자바 기반의 웹 서비스 개발을 배우려는 개발자, 스프링 부트등에 관심있는 사람 모두에게 추천한다.



"

자바와 함께 배우는 웹 서비스 스프링 프레임워크.

"

어느덧 더운 여름이 가고 시원한 날씨가 이어지네요. 독서하기도 좋은 계절입니다.

저는 학부때부터 파이썬 프로그래밍 언어에 빠져 지금까지 이어지고 있습니다. 다양한 관련 부분 독서, 코딩, 커뮤니티 활동등을 통해 파이썬을 끊임없이 알아가고 있는 중이지요.


파이썬의 매력에 한번 빠지면 헤어나오기 쉽지 않습니다. 그만큼 무궁무징하고 강력하며 훌륭한 언어 중 하나입니다.


웹 프로그래밍 언어에는 HTML, Javascript, CSS등 여러 종류가 있지만, 파이썬 웹프로그래밍만큼 간단한 코딩을 강력한 애플리케이션을 구현할 수 있는 도구는 없을 것입니다. 오늘은 김석훈 프로그래머가 적고 한빛미디어에서 출판한 'Django로 배우는 쉽고 빠른 웹개발 파이썬 웹프로그래밍'도서를 살펴본다.



"

이미 파이썬 언어를 사용해본 독자라면 쉽고 간결함, 문법의 일관성, 빠르게 개발할 수 있는 생산성에 만족하고 있으리라 생각합니다...(중략)...필자가 생각하는 이 책의 독자층은 파이썬 문법을 공부한 후에 웹 프로그래밍을 배우려고 하거나, 다른 언어로 웹 프로그래밍을 하다가 파이썬으로 전환하고자 하는 개발자입니다...


지은이의 말 中

"





목차 구성을 깔끔하면서도 많은 것을 담고 있다. 첫 이해부터 시작해 Django기능과 배포까지 아낌없이 담아내고 있다. 모든 파이썬 웹 프로그래밍 개발자에게 더없이 좋은 구성이다.


CHAPTER 01 웹 프로그래밍의 이해

CHAPTER 02 파이썬 웹 표준 라이브러리

CHAPTER 03 Django 웹 프레임워크

CHAPTER 04 Django의 핵심 기능

CHAPTER 05 실습 예제 확장하기

CHAPTER 06 Django의 웹 서버 연동 준비

CHAPTER 07 Cloud 서버에 Django 배포하기

CHAPTER 08 Apache 웹 서버와 연동

CHAPTER 09 NGINX 웹 서버와 연동




웹프로그래밍에는 역시 HTTP(S) 프로토콜이 빠질 수 없다. 서버 개발은 개인이 혼자하기 힘들지만, 클라이언트 개발은 충분하다. 물론 간단한 서버 개발은 혼자서도 가능하다. 웹 프로그래밍이란 인터넷을 이용해 멀리 떨어진 공간에서 서로 통신을 하고 데이터를 주고받는 상호작용이 가능하게 구현하는 것이다.



HTML코드를 살펴본다.



HTTP 상태 코드를 살펴보자. 깔끔하게 테이블형태로 정리되어 있다.



각 코드를 라인별로 번호를 매겨 설명하고 있다. 손수 페이지를 넘겨 하나하나씩 확인해야하는 번거로움이 있지만, 간결하면서도 확실하게 설명하고 있다.



소스 코드와 커맨드 창에서의 명령행 입력부분은 볼드체 형태로 서로 구분을 했다. 코드의 인덴트도 적절하게 들어가 가독성이 좋다.



그림을 통해 개념이 이해가 필요한 부분은 보다시피 깔끔하게 이해시켜준다. 기술의 발전에 따라 웹 서버 기술도 변화하고 있다. 초기 웹 서버 등장에 다라 CGI 프로그램으로 서로 통신했다. 이후 CGI의 대안으로 스크립트엔진 및 데몬프로그램이 나왔다. 최근의 우베 애플리케이션은 웹 서버와 애플리케이션 서버를 따로 두어 프레임워크 기반 통신을 한다.




"

파이썬에 한계란 없다!

Django를 통해 웹 프로그래밍까지 접수하자

"

오늘날 우리 세계는 빅데이터 세계이다. 과거부터 축적된 데이터의 역할이 오늘날 주목받고 있다. 통계학, 인공지능, 컴퓨터과학, 공학, 금융, 인문등 여러 분야에서 데이터 과학을 다루는 입장이 되어버린 것이다. 미국에서 근무한 한국인 데이터 과학자 김옥기 저자의 '데이터 과학 무엇을 하는가?'. 실제 데이터를 다루는 사람이 전해주는 데이터 과학 이야기를 사례와 함께 풀어나가보자.


빅데이터 분석에서는 흐름이라는 것이 있다. 데이터를 수집하고, 전처리 과정을 거치고, 모델에 입력하고, 결과를 출력하는 등 프로세스에 맞게 각 작업이 이뤄지길 마련이다.


빅데이터 플랫폼 구성도

데이터 과학자가 되기까지 겪어야 할 과정은 다양하다. 기본적으로 수리통계학, 기계 학습, 수리 경제학, 신호처리등 여러 분야에서 데이터 과학자가 되는 길이 존재한다. 대부분의 데이터 과학자는 석사 및 박사 학위를 가지고 있다. 그만큼 깊은 수준의 지식과 응용이 필요하다는 것이다. 우수한 분석 알고리즘과 프로그래밍 언어 및 툴을 사용할 줄 알아야한다.


데이터 과학자가 되기까지는...

이 책은 저자가 업무에서 겪을 내용부터 데이터 과학자가 되기까지의 이야기를 담고 있다. 사례와 실제 회사 위주의 이야기도 있으며, 분석을 과정도 잘 담고 있다.


데이터 과학자가 되려면?

실제로 데이터 분석 툴을 이용해 분석할 시 출력되는 결과를 보여주고 있다. 단순히 데이터 과학자는 이론만 이해할 것이 아니라, 실무에서도 툴을 효율적이고 효과적으로 사용할 줄 알아야함을 보여준다. 데이터 과학자에게 필요한 지식뿐만 아니라 과정도 친절히 알려주고 있다.


데이터 과학자에게는 원할한 툴 사용 능력도 필요하다

기계 학습은 1960년부터 그 역사가 시작된다고 도표에서 보여주고 있다. 인지 학습부터 시작해, 신경망, 의자 결정 나무, 랜덤 포레스트, 딥러닝등 오늘날까지 주목 받는 기계 학습의 활용 추세를 보여주고 있다.


기계 학습 발전 및 활용 추세

누구나 관심 있어하는 버스 운행 노선에 관련된 문제이다. KT의 통화 데이터를 사용해 심야 버스 노선 운행을 최적화했는데, SKT, LG 통신사의 데이터도 있었으면 더 정확했을지도 모른다. 노드간의 가중치를 학습해 좀 더 의미 있는 가중치를 뒀다면 좀 더 제대로된 버스 운행 노선이 신설되거나 변경되지 않았을까 싶다.


서울시는 통화 데이터를 어디에 적용했을까?

데이터 분석하는 방법에는 여러 가지가 있다. 데이터를 분석할 때 중요한 것은 변수이다. 어떤 것이 독립 변수이고 종속 변수인지 파악하고, 필요없는 변수는 없애고 의미 있는 변수는 강조하는 등 변수를 잘 다뤄야한다.


데이터 분석의 시작

공공 데이터는 그 활용도가 무궁무진하다. 누구에게나 공개되어 있고, 쉽게 접근할 수 있을 만큼 지금까지도 그 활용이 기대되고 있다. 하지만 이 데이터를 제대로 다룰 전문가는 아직까지 부족한 실정이다. 향후 정부, 공공기관, 금융, 물류, 영업등 모든 산업에서 이러한 공공 데이터를 활용해 효율적으로 업무를 진행해야 할 것이다.


공공 데이터 활용하기


"

데이터 과학은 어디로 흘러가고 있고, 앞으로 우리는 어떻게 해야할까?

실무 20년 데이터 과학자에게 배워보자!
"




파이썬, SAS, SPSS, R언어등 이 모두 통계 분석에 사용되는 프로그래밍 언어이다. 최근 다른 언어와의 이식성등의 문제로 파이썬이 주목받고 있지만, 여전히 통계학에서는 R을 이용하고 있다. 이러한 R언어를 확실하고 고급지게 배우기 위해서는 이 책이 필요하다. R언어는 여러 가지 특징을 가지고 있다.




▶ 자유롭고 오픈 소스이다. R로 분석한다면 누구나 쉽게 따라 할 수 있다.

▶ 통계적 모형 개발, 기계 학습, 시각화, 데이터를 불러오고 조작하기 위한 다양한 패키지가 있다.

▶ 통계학 및 기계 학습 분야의 연구자들은 논문과 관련된 R 패키지를 함께 공개한다.

▶ 강력한 함수형 프로그래밍 기반 언어이다.

▶ 강력한 메타 프로그래밍 기능을 제공한다. 명료한 함수 작성 및 도메인 특화 언어를 설계하는 훌륭한 환경 제공이 가능하다.

▶ C, Fortran, C++과 같은 고성능 프로그래밍 언어와 연결할 수 있도록 지원한다






그렇다면, 이 책은 누구를 위한 책일까?



▶ R에 대한 조금 더 깊은 이해와 다양한 문제를 해결하는 새로운 전략을 원하는 중급의 R 프로그래머

▶ R을 배우고 있고, R이 동작하는 방식을 이해하고자 하는, 다른 언어를 사용하던 프로그래머



이 책은 R언어를 다루고에 충분히 방대한 중급서이자 레퍼런스로도 사용할 수 있을 만큼 꼼꼼하게 구성돼 있다.


데이터 프레임은 내부적으로 동일한 길이를 가진 벡터로 된 리스트이다


R의 데이터 프레임은 R뿐만 아니라 파이썬과 같은 언어에서도 활발히 사용되는 데이터 구조이므로 쉽게 사용할 수 있다.






파트1까지는 R언어에 대한 기본적인 부분을 다루고 있다. 데이터 구조, 서브세팅, 스타일 가이드, 함수, 객체지향 필드 가이드, 환경, 디버깅등 R언어의 기초적인 내용을 알차게 담고 있다.


S3는 R의 가장 단순한 객체 지향 시스템이다







흔히 R언어 기본서에서는 찾아보기 힘든 스타일 가이드에 대한 내용도 담고 있어 매우 유용하다.


"객체는 함수로 된 데이터이고, 클로저는 데이터로 된 함수다"



LaTex만큼 수식을 맛깔나고 빠르게 적을 수 있는 언어는 없을 것이다


논문을 주로 쓰는 연구자들에게는 LaTex을 R에 이용해 작업 시간을 단축 시킬 수 있다. 


역시나 R을 기피하는 이유는 속도이다. R언어를 사용한다면 이 부분에 꼭 관심을 가지자.

R언어는 고급 언어이다. 따라서 저급 언어에 비해 그 속도가 느릴 수 밖에 없다. GNU R을 컴파일러로 사용하기 때문에 근본적 제약으로 속도가 느릴 수 밖에 없다. 하지만 이 책에서는 R의 속도를 높일 수 있는 방법을 자세히 알려주고 있다. 대부분의 R언어를 사용하는 사람은 통계학자로 컴퓨터학자와는 달리 프로그래밍 언어를 깊게 알지 못하다. 따라서 코드 프로파일링, 리팩토링, 디버깅등 프로그래밍 언어가 거쳐가야할 과정을 올바르게 하지 않고 단순히 코드만 작성하는 경우가 허다하다. R언어를 사용한다면 프로그래밍 언어라는 측면에서 이해해 속도에도 관심을 가져야 된다.




각 절을 마무리하면 마지막에 연습문제가 등장한다. 그때 그때 배운 내용을 바로 확인해보자.


"

R전문가가 알려주는 최고의 리소스 중급서

"



오늘날 수많은 학생들이 코딩을 배우고 있다. 하지만 단순한 출력, 입력, 계산기 정도 만들어서 진정한 코딩이라고 할 수 있겠는가? 누군가에게 '나 좀 코딩 좀 배웠어~'라고 말하기 위해서는 자료구조와 알고리즘에 대한 이해는 꼭 있어야 한다. 자료구조와 알고리즘을 기반한 코딩이 오늘 날 우리가 살아가는 21세기 디지털 세상 속 이뤄진 모습이 아닐까 싶다. 건축, 토목, IT, 기계, 금융, 게임 등 모든 산업, 아니 모든 공학에서 자료구조와 알고리즘은 누구나 이해하고, 스스로 생각할 수 있어야 한다.


프로그래밍 언어 중급 과정을 넘어가기 위한 필수 관문!


이 점에서 이 책은 자료구조와 알고리즘을 처음 배우는 분에게 적합한 책이다. 어느 정도 프로그래밍 언어에 대한 이해를 바탕으로 중급과정을 나아가기 위한 필수 도서라고도 할 수 있겠다.


다양한 자료구조 형태와 설명이 목차대로 나와있다.



알다시피 자료구조는 너무나도 많다. 주어진 형태로만 배우는 것도 좋지만 자신만의 자료구조를 정의해보는 것도 매우 큰 공부가 될 것이다. 정렬, 검색과 같은 부분은 보통 자료구조를 배운 후 알고리즘에서 다루는데, 이 책의 경우 앞부분에 위치해 있다. 물론 자료구조를 모르고도 배울 수 있게 단원 구성이 되어 있지만, 그래도 자료구조를 먼저 학습한 후 앞 부분으로 되돌아 가는 것도 나쁘지 않다.


자료구조와 알고리즘은 유기적으로 상호작용 관계라 볼 수 있다.


자료구조와 알고리즘은 함께 배우는 것이 역시 좋다. 프로그램이 모여 이루는 것이 컴퓨터이고 더 넓게 보면 IT이자 오늘날의 모습이다. 이 프로그램은 자료구조와 알고리즘 없이는 제대로 돌아가지 않을 것이다. 효율적인 알고리즘은 우리 삶의 모습을 한 단계씩 바꾸어 나가며, 이러한 데이터는 효율적으로 저장, 관리하는 것이 오늘날 산업이 이루어나가고 있는 과정중 하나이다.


개발자의 올바른 덕목이자 올바른 길이 바로 알고리즘이다.




이러한 산업에 진출하고 여기에 하나의 나무를 심는 우리는 개발자로서 그 내공이 필요하다. 바로 자료구조와 알고리즘이다. 필자의 학부 수업때도 자료구조와 알고리즘의 중요성은 선배, 교수님들에게 수없이 들었다. 그 만큼 중요하다.


실습 예제가 친절하게 코드로 나와있다.



실습 해볼 수 있는 코드가 전체적으로 나와있다. 물론 해당 코드는 파일로 제공되며 쉽게 빌드해서 실행해볼 수 있다. 참고로 자바 언어의 기초적인 부분은 다루지 않으니, 다른 기초 자바 언어책을 참고하길 바란다. 아마 대부분 Eclipse 환경에서 할 것이며, Vim 에디터 환경에서 직접 컴파일하는 것도 좋다.


예제 코드는 실행 결과도 나와있으니, 스스로 코딩해 결과를 확인해본다



실행 결과가 나와 있으니, 직접 코드를 구성하고 결과를 비교해보자.


알고리즘의 순서도는 프로그램의 이해에 많은 도움을 준다



알고리즘의 핵심은 바로 순서이다. 이럴 때는 이런 순서로 진행하고, 이럴 때는 해당 지시를 실행하지 않는 등 논리적이고 필요에 맞춰 순서도를 그릴 줄 알아야한다. 아무리 인공지능이 발전하고 알고리즘을 만드는 알고리즘이 나온다 하더라도 인간의 사고를 통해 효과적으로 개념화하고 구성해야 한다. 그것이 컴퓨터가 아닌 인간만이 할 수 있는 것이다.


'조금만 더!'나아가 알아봄.



책에서 모르는 내용을 마치 주석 형태로 알려주고 있다.


연습 문제를 통해 배운 내용을 확인해보자.



스스로 연습 문제를 풀어 지금까지 살펴본 내용을 확인해보자.



"자료구조와 알고리즘을 자바 언어를 통해 쉽고 

한번에 배울 수 있는 훌륭한 자료구조 기본서 및 실습서"




현재 캐드와 관련된 도서는 수없이 많이 출간되었다. 하지만 올해 가장 따끈따끈한 최신서는 오토캐드 2019에 관한 입문서를 살펴보도록 하겠다. 물론 이전 버전에서도 충분히 사용할 수 있으니 걱정말자.


책의 표지를 보면 건축, 인테리어, 토목, 기계, 전기, 가구 도면을 모두 총망라했다고 설명하고 있다. 하지만 생각보다 건축쪽에 많은 부분을 차지하고 있다.



캐드에서의 명령어는 시간을 줄일 수 있는 가장 빠른 지름길이다. 객체를 그리고 편집하고 화면을 구성할 시 마우스를 통한 GUI가 아닌 키보드 명령어로 바로 접근하고 수행할 수 있다. 이미 이 책은 이를 알고 두번째 장부터 명령어에 대한 설명을 하고 잇다. 명령어별로 분류하여 본인이 필요한 부분을 골라 배워볼 수 있다.

작업 화면을 비롯해 GUI 환경에서 설명이 필요한 경우 이렇게 영역별로 숫자를 표시해 하나하나씩 설명해주고 있다.



작업 화면을 비롯해 GUI 환경에서 설명이 필요한 경우 이렇게 영역별로 숫자를 표시해 하나하나씩 설명해주고 있다.



이론과 실전은 다르다. 이론에서는 정확한 순서대로 하지만 실전에서는 시간을 줄이고자 야매(?)로 하는 경우가 다반사이다. 이 책은 실전 입문서인 만큼 실무에선 이렇게 하라고 친절히 설명하고 있다. 역시 실전에서 가장 많이 야매로 하는 경우는 도형 그리기이다. 도형 그리기는 사람마다 그 방법이 다를 정도로 많은 기술이 있다.



업무의 생산성을 높이기 위해 중요한 것은 불필요한 반복적인 작업을 줄이는 것이다. 시간을 줄이고 정확도는 높일 수 있다. 위와 같이 객체 1개로 그려진 패턴을 나누고 싶을 때 [개별 해치]를 사용해 각 구간별로 해치 패턴을 다르게 할 수도 있다. 이처럼 일일이 해치를 넣는 작업을 한 번에 할 수 있다.



어느 날 작업을 하다보면 이 부분은 왜 않되지 의문이 생길때가 많다. 인터넷에 검색하자니 어떻 단어 및 문장으로 검색해야할지 모르고 애매할 때, '캐드 고수의 비밀'을 살펴보자. 작은 팁 하나가 네이버 지식인의 도움 없이도 업무에 희망을 줄 것이다.



앞서 배운 내용을 바탕으로 준비 파일을 열어 스스로 예제를 구성해보고 만들어나갈 수 있다. 실제로 주어진 업무를 하는 것과 같은 느낌이다. 본인만의 스타일로 또는 내가 잘할 수 있는 기술로 예제를 완성할 수 있다.



캐드에 대해 전혀 모르는 사람도 첫 장부터 컴퓨터를 켜고 책을 펴며 하나하나씩 따라하기 넘 좋은 입문서이다. 건축 분야 위주라 예제 도면들이 건축 및 인테리어쪽이 많지만, 그럼에도 분야 공통적으로 사용할 수 있는 팁이나 내용들이 알차게 들어가있다. 따라서 건축분야가 아니더라도 캐드를 충분히 배우기에 손색없다.


하지만 입문서인 만큼 예제가 많이 풍부하지 못한 느낌은 있다. 실제 건축, 기계 분야 실무자들이 사용하는 도면을 가져와 여러 사람이 협업하는 형태도 보여주면 좀 더 좋았을지 싶다. 물론 도면을 공유하고 협업하는 툴은 오토데스크에서 따로 있으니 개인적으로 찾아보고 공부해도 충분할듯하다.



"건축, 기계등의 최신의 오토 캐드를 위한 

캐드 초심자 및 중급자를 위한 실전 기반 입문서"



나만의 로고를 디자인하고 편집하는 과정을 배워본다.
[로고를 활용한 디자인 실무 강의]



이 책은 일러스트레이터와 포토샵을 활용해 로고, 명함, 배너, 스티커, 포스터, POP 디자인등을 배우는 책이다. 책 표지만 보아도 알겠지만 디자인을 위한 시안과 같은 형태를 볼 수 있다.



'이 책의 미리 보기'는 그림과 실제 내용과 함께 구성되는 챕터 소개라고 보면 된다. 페이지번호와 함께 배우는 내용을 실제 작업 화면과 함께 보여주고 있다.


이 책의 구성이 간결하면서도 필요한 내용으로 압축되 보여주고 있다


효과적인 로고 활용법은 무엇일까?


실무 현장에서 반드시 숙해야 할 핵심 사항!


챕터1부터 실무 현장에 필요한 핵심 사항을 6개 섹션으로 분류해 알려주고 있다.
실무에서 가장 필요한 사항을 책의 첫부분에 위치한 것으로 보아  이 책은 더더욱 실무에 초점이 맞춰진 책으로 볼 수 있다.


프로그램 활용을 업그레이드 시켜보자.


위 작업 로고의 그림을 일러스터레이터의 옵션창을 이용해 객체를 회전하는 방법이 나와있다. 아래 '활용 업그레이드'에서는 위에서 배운 작업에 한발짝 더 나아간 방법을 소개한다.


작가의 경험이 잔뜩 묻어졌다


단순히 포토샵 및 일러스터레이터 프로그램을 다루는 방법만 알려주고 있는것은 아니다. 이렇게 디자인에 대한 작가의 생각과 경험을 거리낌없이 친절하게 설명해주고 있다. 인쇄물의 성격은 사용 용도, 종류, 크기에 따라 달라진다고 한다. 역시 클라이언트의 요청에 따라 가장 크게 달라지지 않을까 싶다. 분야에 따른 색 선호도, 현대적인 디자인 추세등에 발맞춰 계속적으로 배우고 경험해볼 필요가 있다.


POP 디자인은 진정으로 디자인이 일반적인 대중들에게 다가가는 방법이다


POP아트와 같은 경우도 많은 자영업자 및 디자인 관련 사람들이 선호하는 부분이다. POP은 구매 시점 광고(Point of Purchase advertising)이다.


디자이너는 어떤 과정으로 준비를 할까? 머든지 가장 먼저 손에서 탄생하기 마련이다


역시 모든 것의 시작은 손이다. 최근의 디자이너는 멋지게 툴을 다루고 현란한 마우스 솜씨를 뽐내며 작업을 하는 것이 최고로 여겨지겠지만, 모든 아이디어의 원천은 역시 손과 머리이다. 그에 발맞춰 애플펜슬, 전자펜등 다양한 제품들이 출시되고 있지만, 펜으로 종이위에 쓰는 필기감만큼 대단한 것이 있을까...


지금까지 [로고를 활용한 디자인 실무 강의] 책을 살펴보았다. 역시나 디자이너의 업무와 디자인을 배우고 싶어하는 초심자들에게 가장 적합한 책이다. 특히 이 책은 다른 책들과 달리 로고라는 초점에 맞춰 로고를 활용한 디자인을 여러 가지 보여주고 있다. 최근 제품과 서비스에서 가장 중요한 것은 바로 스토리텔링이다.


디자인 사례를 살펴본다

브랜드라는 것에 스토리를 얹어 소비자들에게 접근하는 것이 중요하다. 필자를 포함한 많은 소비자들이 제품을 봤을 때 머릿속에 각인되는 것이 있어야 되는데 그 첫번째 요소가 바로 로고이지 않을까 싶다. 로고란 그 브랜드의 아이텐디티와 스토리 그리고 CEO의 철학이 있어야 한다. 그러기 위해서는 프로페셔널적으로 고심하고 제작하고 수정하고 생각해야 한다. 이러한 부분에 있어 이 책은 디자이너뿐만 아니라 많은 비즈니스맨 및 CEO, 창업가, 학생들에게 큰 선물이지 않을까 싶다.



"브랜드의 아이덴티디 로고, 그 로고를 활용한 디자인 작업은 우리에게 가장 필요한 마케팅이다."

파이썬 한발짝 더 나아가기 - [엔지니어를 위한 파이썬: 개발 기초, 필수 라이브러리, 그리고 고속화]




파이썬이란?

어느덧 대표적인 프로그래밍 언어로 자리잡았다



파이썬은 어느덧 전공자뿐만아니라 비전공자에게도 친숙한 프로그래밍 언어로 자리잡혔다. 간결한 문법과 방대한 라이브러리의 장점을 살펴 어느덧 수많은 사용자가 이용하는 언어로 자리잡혔다. 중고등학생 및 대학 신입생들이 보통 처음 배우는 언어로 파이썬을 추천받고, 개발자들도 많이 추천하고 있다. 실제로 취미뿐만아니라 현업에서도 많이 사용되고 있다. 그 중에서도 NumPy, matplotlib, Scipy, Pandas, IPython, Cython등의 패키지 라이브러리는 엔지니어 개발자들이 가장 많이 사용하는 라이브러리로 훌륭한 기능을 제공하고 있다.


파이썬이라는 언어뿐만 아니라 최근의 언어는 문법도 중요하지만 그보다 라이브러리의 사용이 더 중요하지 않을까 싶다. 레퍼런스를 찾고 읽고 적용할 수 있는 능력, API문서를 보고 본인의 원하는 개발 방향을 선택하고 이를 알고리즘화하고 구현할 수 있는 능력이 개발자에게 가장 필요한 덕목이라 본다.


챕터가 시작하기 전 이렇게 간략하게 소개한다


현재 파이썬은 R언어와 더불어 데이터 분석에 많이 이용되고 있다. 파이썬의 확장성과 성능을 앞세워 빅데이터 분석과 인공지능, 머신러능 등에 자주 사용된다. 앞서 소개한 라이브러리는 이번 편에 소개할 책뿐만 아니라 다른 책에서도 더 자세하게 소개하고 있으니 쉽게 찾아볼 수 있을 것이다. 위 6개 패키지 라이브러리는 파이썬을 조금이라도 사용할 줄 안다면 충분히 들어보고 사용해봤을 라이브러리일 것이다.


그림을 통해 친절하게 설명하고 있다



왜 이 책인가?

NumPy에 대해 소개하고 있다.


이 책은 총 12장으로 다소 방대한 분량의 파이썬 도서이다. 6장까지는 파이썬의 기초적인 개념을 다루고 있는데, 만약 이러한 부분이 익숙하다면 충분히 넘어가도 된다. 1장에서는 '과학 기술 컴퓨팅과 파이썬'이라는 주제로 현재의 파이썬에 대해 소개하고 있다. 사용 현황과 개발 특징, 파이썬 언어를 사용하는 이유 등, 파이썬을 배우기 위한 개관으로 이해하면 되는데, 가볍게 꼭 한 번 읽어보길 바란다.


파이썬의 기초적인 문법과 클래스, 변수 선언의 내용을 지나면 7장부터는 각각 NumPy, SciPy, matplotlib, pandas 패키지가 한 챕터씩 차지하면 소개되고 있다. IPython 개발 환경에서 이를 실습해볼 수 있는 코드와 주석이 친절하게 있으며, 다양한 메서드가 표 형태로 깔끔하게 정리되어 보여준다.


NumPy의 브로드캐스팅 개념은 다소 모호하고 이해하기 어려운 부분이 있다. 하지만 구체적인 예시와 이를 이용한 배열을 그림 형태로 보여주면서 이해를 돕고 있다. 이후의 SciPy, matplotlib 부분도 마찬가지로 IPython에서의 순서와 소스 코드 및 그림 설명을 친절히 하고 있다.


브로드캐스팅에 대한 개념을 쉽고 보여주고 있다


누구를 위한 책인가?

소스 코드와 한글 주석의 가독성이 꽤나 좋다



기본적으로 이 책의 난이도는 높지 않은 편이다. 다소 쉬운 편에 속하며, 복잡하고 어려운 개념은 많지 않다. 하지만 그렇다고 파이썬에 대한 설명이 부족하거나 내용이 빠지지 않는다. 파이썬의 기초적인 지식과 사용법 및 개관부터 시작하여 중급자로 나아갈 수 있는 라이브러리를 사용하고 클래스 및 상속을 활용하며, 끝으로 프로그램 최적화로 통한다. 특히나 11장부터 시작되는 프로그램 최적화 및 그 예를 설명하는 내용은 실제 소스 현업 및 프로젝트에 굉장히 유용한 부분이기 때문에 충분히 많은 도움이 될 것이다.

지금부터 파이썬을 시작하여 오픈소스강의 및 기초 강의로는 부족하여 좀 더 보완이 필요한 독자, 학부 수준의 프로젝트 및 프로그래밍 동아리에서 세미나를 진행하는 경우, 개인적으로 파이썬 프로그래밍의 진정한 백서를 찾는 독자들에게 더없이 좋은 참고도서이다.



이 책의 부족한 부분은?



데이터 과학과 파이썬에 관련된 도서는 최근 굉장히 많이 출판되고 번역되고 있다. 파이썬을 처음 배우고자 하는 사람에게도 충분히 읽을 수 있는 부분은 Part별로 분리하여 좀 더 단계적으로 배워나갈 수 있는 전략을 전해줬으면 한다. 

그 외에도 본 책의 초입의 베타리더 후기를 살펴보면, 책에서 소개하는 대표적 IDE 설명으로 Spyder를 소개하는데, 국내에서는 PyCharm을 좀 더 많이 사용하니 비교하는 부분도 역자가 신경써줬으면 하는 바램도 있었다. 베타리더끼리도 다소 충돌이 없지 않아 있었는데, 개인적으로 입문자와 중급자 둘 중 누구에게 추천할까 물으면, 입문자라고 말하고 싶다. 하지만 파이썬과 데이터 과학을 제대로 배우고 싶은 열정이 가득한 입문자여야 한다. 그만큼 좋은 내용을 쉽고 재미있게 전달하고 있기 때문이다.



"Python is powerful programming language."

+ Recent posts