콘텐츠 바로가기
본문 바로가기


블로그 전체검색
학교에서 알려주지 않는 17가지 실무 개발 기술

[도서] 학교에서 알려주지 않는 17가지 실무 개발 기술

이기곤 저

내용 평점 5점

구성 평점 5점


 


실무에서 중요한 핵심 로직을 만들거나 복잡한 문제를 해결할 때 알고리즘, 스레드와 프로세스, 스택과 힙 구조 등의 공학 이론이 큰 도움이 된다. 이런 공통 기술들은 언젠가 한 번 이상 사용하게되므로 이런 점들을 알고 업무에 시작하면 큰 도움이 된다. 이러한 기술들은 소프트웨어 공학 이론과 비교했을 때, 어렵지도 않고 당장 깊게 배워야 할 필요도 없다. 특히 분야와 상관없이 사용할 수 있다. 소프트웨어 공학이 더 뛰어난 결고물을 만들고 더 나은 개발자가 되는 데 도움을 주는 것처럼, 어떤 분야에서 일을 하건 적재적소에 알맞은 기술을 사용할 줄 안다면 더 나은 개발자가 되는데 도움이 될 것이다.  

빠르게 성장하는 개발자가 되려면 반드시 알아야 할 핵심 기술 17가지를 담았다. 소프트웨어를 지탱하는 7가지 기술, 데이터를 처리하는 6가지 기술, 웹을 지탱하는 4가지 기술을 파이썬 코드를 활용해 핵심만 설명한다. 소프트웨어 개발에서 가장 중요한 기술로 문제가 생기기 전까지는 배울 수 없는 인코딩을 시작으로, 소프트웨어 동작에 꼭 필요한 데이터 처리 기술까지 다룬다. 나아가, 어떤 환경에서 개발하더라도 데이터를 안전하고 효율적으로 주고받을 수 있는 웹 서비스의 근간이 되는 핵심 기술도 살펴본다.

실무에서 감초처럼 쓰이는 17가지 기술을 한 권으로 묵었다. 

1부 소프트웨어를 지탱하는 7가지 소프트웨어 기술에서는 소프트웨어 동작과 밀접한 관련이 있는 기술들을 소개한다. 이 기술들은 범용적으로 사용되기 때문에 어떤 프로그래밍 언어 및 소프트웨어 프레임워크에서든 해당 기능을 제공하는 함수를 쉽게 찾아볼 수 있다. 

- 문자열 인코딩

- 다국어 처리

- 날짜와 시간

- 정규 표현식

- 범용 고유 식별자

- 난수

- 해시 함수

2부 6가지 데이터 처리 기술은 소프트웨어가 동작하기 위해 필요한 데이터를 가공하는 기술들을 소개한다. 이 기술들은 텍스트 기반 규격과 바이너리 기반으로 나눌 수 있다. 얼핏 보면 비슷한 텍스트 기반 규격들이 각각 어떤 특징이 있는지 살펴보고, 바이너리 기반 규격으로 데이터를 가공하는 것이 어떤 장점이 있는지 살펴본다. 

- JSON

- YAML

- XML

- 프로토콜 버퍼

- Base64

- 데이터 압축

3. 웹을 지탱하는 4가지 웹 기술은 서버와 클라이언트가 데이터를 보다 효율적으로 주고 받기 위해 필요한 기술과 데이터를 보다 안전하게 주고 받기 위해 필요한 기술을 설명한다.  

- HTTP

- HTTPS

- RESTful API

- OAuth 2.0

현실에 안주하지 않고 성장을 꿈꾸는 개발자라면 이 책에서 설명하는 내용을 숙지하는 것을 강력하게 추천한다. 나아가 개발자를 꿈꾸는 학생에게도 유용한 책이다. 

본 포스팅은 한빛 미디어를 통해 책을 제공받아 개인의 주관으로 작성된 서평입니다.


PYBLOGWEB3