본문 바로가기
728x90

전체 글163

[한빛 미디어] AI로 일하는 기술 "한빛미디어 활동을 위해서 책을 제공받아 작성된 서평입니다." 요즘 AI, 빅데이터, 인공지능이라는 단어를 심심찮게 들을 수 있다. 하지만 그 기술이 뭔지, AI로 내가 뭐를 만들 수 있는지에 대해 전혀 알지 못했다. 이 책은 개발자의 눈높이 맞춰 AI나 인공지능의 실질적인 구현 방법, 기술에 대한 자세한 설명이 적힌 책이 아니라 개발자가 아닌 사람도 편하게 읽을 수 있다. 그렇다고 AI의 자세한 정보를 얻지 못하는 것은 아니다. 아주 기본적인 개념 정리부터 시작한다. 인공지능, 머신러닝, 딥러닝의 차이점과 사람들은 이를 어떤 개념으로 받아들이고 사용하는지에 대해 자세히 적혀있다. 현 인공지능의 발전 수준과 어디까지 발전되어 있는지에 대해 서술되어있다. 인공지능 분야에서 유명한 개발자 일리야 슈츠케버, .. 2022. 7. 24.
RFC 2616(HTTP) : 1장 정리 1.1 목적 HTTP 분산 정보 시스템, 종합 정보 시스템 및 하이퍼미디어 정보시스템에서 사용하는 응용계층의 규약 HTTP/0.9 HTTP의 첫 버전. 인터넷 상에서 저장되어 있는 원래 데이터를 전송하기 위한 단순한 규약. HTTP/1.0 메시지를 전송하는 문서 데이터에 대한 메타 정보 및 요구/응답 용어의 변경자를 포함하는 MIME(다용도 인터넷 메일 확장)과 유사한 메시지의 형식으로 사용할 수 있도록 함으로써 규약을 향상시킴. HTTP/1.1 HTTP/1.0의 문제(계층적 프락시, 캐시, 지속적인 연결의 필요성, 가상 호스트)을 해결한 버전. 상호 협상할 수 있는 응용 프로그램이 상대방의 진정한 성능을 파악할 수 있도록 규약 버전을 갱신함. 하이퍼텍스트 전송 규약을 정의. 요구의 목적을 표시하는 일련.. 2022. 7. 13.
[한빛 미디어] 구글 엔지니어는 이렇게 일한다 "한빛미디어 활동을 위해서 책을 제공받아 작성된 서평입니다." 팀 프로젝트를 진행할 때마다 항상 코드 관리와 프로젝트 관리의 어려움을 겪었다. 이 책은 구글의 소프트웨어 엔지니어링이 어떻게 발전했고 현재 어떻게 프로젝트를 진행하고 있는지에 대한 내용을 담고 있는 책이다. 소프트웨어 엔지니어링에 대해 이야기하며 책이 시작한다. 기본적인 개념에 대해 설명해주며 엔지니어링과 프로그래밍의 차이를 설명해주고 프로젝트 진행 시 어디에 초점을 두어야 할지 설명한다. 팀을 운영할 때의 방식, 멘토나 스터디 방법 등 정말 궁금했지만 어디서도 배우지 못했던 사소한 내용까지 담고 있다. 문서와 코드를 어떻게 관리하고 공유할 것인지에 대해서도 나와있다. 엔지니어링이 갖춰야 될 역량에 국한되지 않고 팀 리더, 관리자 등의 필수.. 2022. 5. 29.
CPP explicit 키워드 c++ 98에 처음 도입된 키워드! 암시적 형 변환의 특성 때문에 프로그래머가 예상치 못하는 형 변환이 일어남으로 인해 정말 어려운 버그가 생기는 걸 방지하기 위해 도입된 키워드. 도대체 형 변환으로 정말 어려운 버그가 어떻게 생기는 걸까? 밑의 예제를 보자. template struct Print { void operator() (T v) { cout 2022. 4. 27.
[한빛 미디어] 헤드 퍼스트 디자인 패턴(개정판) "한빛미디어 활동을 위해서 책을 제공받아 작성된 서평입니다." 프로젝트를 진행하다가 이전 코드를 수정하려고 보면 알 수 없는 구조에 수정이 힘들 때가 많았다. 그래서 결국 프로젝트를 리팩토리 하는데 많은 시간을 보내곤 했다. 그럴 때마다 디자인 패턴을 공부해서 코드에 적용해 보고 싶다는 생각을 종종 했다. 이 책은 자칫 지루할 수 있는 개념들을 재미있게 대화체로 풀어냈다. 그래서 포기하지 않고 마지막까지 읽을 수 있었다. 디자인 패턴의 근간이 되는 9가지 디자인 원칙(캡슐화, 구성 우선, OCP 등)부터 실전에서 많이 사용하는 14가지 디자인 패턴(전략, 데코레이터, 싱글턴 패턴 등)까지 한 책으로 개념을 한 번에 확인할 수 있어서 좋았다. 또한 디자인 패턴 같은 경우 개념을 이해하더라도 디자인 패턴을 .. 2022. 4. 24.
[한빛 미디어]메타버스를 디자인하라 "한빛미디어 활동을 위해서 책을 제공받아 작성된 서평입니다." 좋은 기회로 요즘에 굉장히 핫한 메타버스의 디자인 책을 읽게 되었다. 확장 현실을 예전부터 존재했지만, 메타버스가 유행하면서 굉장히 빠르게 발전하고 있다. 확장 현실에 대해 아예 개념이 없었던 나에게는 굉장히 유익했던 책이었다. 이 책은 단지 확장 현실 디자인을 어떻게 해야 되는지에 대해 적혀있는 책이 아니다. 확장 현실의 개념부터 과거, 현재, 그리고 미래에 어떻게 발전할 것인가에 대해 자세히 적혀있었다. 가상현실, 증강현실, 게임 등 메타버스로 접할 수 있는 모든 것에 대해 적혀있어서 너무 좋았다. 확장 현실에 대해 개념이 없던 터라 이 책을 통해 많은 지식을 쌓을 수 있었다. 또한 VR이나 XR에 대해 설명할 때 개념만 설명하는 게 아니.. 2022. 3. 31.
docker & docker-compose network docker network docker network는 목적에 맞는 여러 가지 네트워크 드라이버를 제공한다. 그중 가장 유명한 bridge, host, overlay가 무엇인지 보자. 1. bridge : 하나의 호스트 컴퓨터에서 여러 개의 컨테이너들이 통신할 수 있게 한다. 2. host : 호스트 컴퓨터와 동일한 네트워크에서 여러 개의 컨테이너들이 통신할 수 있게 한다. 3. overlay : 여러 호스트 컴퓨터(다른 네트워크)에서 여러 개의 컨테이너들이 통신할 수 있게 한다. docker network를 확인할 수 있다. daemon이 실행되면서 bridge, host, none이 default로 생성된다. docker network ls // 자세한 네트워크 정보보기 docker network i.. 2022. 3. 29.
mariaDB-server dockerfile 만들기 update : 설치 가능한 리스트를 업데이트 하기(패키지 업데이트가 아님) upgrade : apt-get install로 설치한 패키지들을 최신 버전으로 업그레이드하기 mariadb-server : mariadb server를 사용할 것이기에 설치하기 -y : 설치 중 프롬프트에 대해 자동 yes로 응답하도록 설정. apt-get update apt-get -y upgrade apt-get -y install mariadb-server mariaDB server가 background에 도는 것을 foreground로 바꿔 docker가 꺼지지 않도록 해준다. echo "\ndaemon off;" >> /etc/mysql/mariadb.cnf mariaDB가 설치가 잘 되어 있으면 아래 경로에 mari.. 2022. 3. 29.
https란? http란? web 상에서 정보를 주고 받을 수 있는 프로토콜. 주로 HTML 문서를 주고 받는다. 80번 port 사용 https란? http + secure http의 보안이 강화된 버전이다. 443 port 사용 http의 소켓 통신에서 일반 텍스트를 이용하여 데이터를 주고 받는다. https에서는 TLS 또는 SSL 프로토콜을 통해 세션 데이터를 암호화한다. SSL과 TLS이란? 클라이언트/서버 응용 프로그램이 네트워크로 통신을 하는 과정에서 도청, 간섭, 위조를 방지하기 위해서 설계되었다. SSL(Secure Sockets Layer) 배경 : 1993년 웹서버와 브라우저간의 안전한 통신을 위해 Netscape사에 의해 개발됨 특징 : 세션 계층에서 적용되며, 응용 계층의 FTP, Telnet,.. 2022. 3. 25.
728x90