전체 글

안녕하세요. 사진과 철학에 관심이 많은 웹 프론트엔드 개발자 오원종입니다. 시간이 지나도 꾸준히 읽힐 수 있는 글을 쓰고 싶습니다. 재미있는 일만 하면서 살고 있는 사람입니다.
데동여지도(dedongyeo) 프로젝트에 대해 설명하는 글을 파트 별로 작성해 보고자 한다. 데동여지도는 2021년 넥스터즈 18기에 만들어진 팀(팀이름: Oh!When?, 우리 언제 만나? 라는 의미)에서 시작했으며, 커플들의 데이트 코스를 기록하고 저장하는 웹/앱 어플리케이션이다. 주요 기능으로는 지도에서 커플들이 방문한 스팟 조회 및 커스텀 스팟 생성, 스티커 찍기, 코스 만들기, 코스 저장하기 등이 있다. 첫 번째 포스팅에서는 웹 프론트엔드 파트의 기술 스택 및 아키텍처를 설명하려고 한다. 기술 스택 웹 프론트엔드에서는 다음과 같은 언어 및 라이브러리, 프레임워크를 사용하였다. TypeScript 4.1 Next 10.x React 17.x Apollo Client GraphQL MapboxGL ..
이번 포스팅에서는 DNS에 대해 공부한 내용을 정리해 보려고 한다. DNS는 Domain Name System의 약자로서, 인터넷 상에서 접근하는 도메인에 대해 찾아가야 할 IP 주소로 변환해 주는 시스템이다. 스마트폰이나 노트북에서 어떠한 서비스를 제공하는 서버에 이르기 위해서는 웹 브라우저에서 IP 주소라고 부르는 숫자를 입력해야 한다. 하지만 우리가 항상 이 숫자를 기억하기 어려우므로, 이름을 부여하여(ex. www.example.com) 웹 사이트로 갈 수가 있다. DNS는 숫자와 이름을 매핑하여 마치 전화번호부처럼 이름에 대한 요청을 IP 주소로 변환하여 최종 사용자가 도메인 이름을 웹 브라우저에 입력할 때 해당 사용자를 어떤 서버에 연결할 것인지를 제어하는 것이다. 이러한 요청을 쿼리라고 부른..
2020년 마지막 날 나는 경제적 자유를 이루겠다는 목표를 가지고 재테크 다짐글을 하나 썼다. 그리고 6개월이 지났다. 그 동안 주식 시장에는 정말 많은 변화가 있었다. 그 변화의 흐름 속에서 나름대로 방향을 찾으려고 열심히 허우적 댔던 것 같다. 주식 관련 책 을 읽고 주식 관련 유튜브 (삼프로, 한국경제TV, 슈카, 신사임당, 뉴욕주민, 미주은 등)를 꾸준히 봤다. 그리고 신문도 거의 매일 꾸준하게 읽으려고 노력했다. 미국주식 관련 오픈카톡방에도 들어가서 매일매일 소식을 듣고 소통하려고 노력했다. 그러면서 조금씩 월급의 일부분을 주식에 투자하기 시작했다. 기본적으로 올 해는 내가 아직 주식에 전문가가 아닌 주린이 이므로.. 많은 돈을 공격적으로 투자하기 보다는, 잃어도 크게 상처받지 않을 정도의 돈으..
이번 포스팅에서는 포큐 아카데미 C++ 강의 중 스마트 포인터 부분에 대한 내용을 정리해 보려고 한다. 스마트 포인터에는 다음과 같이 세 가지가 있다. unique_ptr, shared_ptr, weak_ptr. 이 중에서 unique_ptr는 정말 많이 쓰이고, shared_ptr는 적당히 쓰이며, weak_ptr는 잘 쓰이지 않는다. 포인터는 다음과 같이 사용할 수 있다. #include "Vector.h" int main() { Vector* myVector = new Vector(10.f, 30.f); // ... delete myVector; return 0; } 문제는 더 이상 포인터가 필요하지 않을 때 메모리를 해제해야 한다. 스마트 포인터를 쓰면, delete를 직접 호출할 필요가 없다. ..
이번 포스팅에서는 링크드인 COMPTIA 네트워크 강의의 TCP/IP Application 부분 강의를 듣고 정리한 내용을 적어보려고 한다. TCP와 UDP 네트워크 계층 중 전송계층(Transport Layer)은 송신자와 수신자를 연결하는 계층으로, 데이터를 전달한다. 그리고 이 계층에서 데이터를 보내기 위해 사용하는 프로토콜이 TCP와 UDP이다. TCP는 인터넷 상에서 데이터를 메시지의 형태로 보내기 위해 IP와 함께 사용하는 프로토콜이다. 일반적으로 TCP와 IP를 함께 사용하는데, IP가 데이터의 배달을 처리한다면 TCP는 패킷을 추적 및 관리하게 된다. TCP의 특성은 아래와 같다. 연결형 서비스로 가상 회선 방식을 제공한다. 3 Way Handshake 방식으로 연결을 설정하고 4 Way ..
오늘 내가 리뷰를 남길 책은 권여선 작가님의 이라는 단편소설 집이다. 나는 틈틈이 시간이 날 때 서점을 간다. 가끔은 중고 서점을 갈 때도 있다. 그렇게 돌아다니다가 제목과 표지를 보고 끌리는 책이 있으면 보통 그 자리에서 5~10분 정도 읽어본다. 그러면 내가 기대한 내용과 다른 책이 있고, 기대한 내용 만큼의 책이 있고 아주 가끔 기대 이상의 책을 발견하게 된다. 기대한 내용과 다른 경우는 그 자리에서 보통 책을 내려놓는다. 기대한 만큼만 내용이 있으면 그 자리에서 읽을 수 있는 만큼 책을 읽고 사진 않는다. 아주 가끔 낮은 확률로 기대 이상의 책을 발견하면 마치 보물을 찾은 것처럼 기쁘게 그 책을 구매한다. 나에게 이 소설책은 세 번째와 같은 책이었던 것으로 기억한다. 권여선 작가님의 책은 처음이다..
지난 포스팅에 이어서 C++ 최신 버전에서 추가된 문법들에 대해서 공부한 내용을 정리해 보려고 한다. 새로운 자료형 nullptr NULL을 쓰면 가끔 이상한 일이 발생된다. C++에서 NULL은 어떤 타입이 아니라 0이다. 따라서 함수를 호출할 때 적합하지가 않다. 따라서 nullptr가 등장하였다. nullptr는 null 포인터 상수이다. nullptr는 다음과 같이 사용할 수 있다. // Main.cpp Class* myClass = new Class("COMP3200"); const Student* student = myClass->GetStudent("Coco"); if (student != nullptr) { std::cout GetID()
오늘은 바밀로 VM87MAC 밀키 화이트 키보드를 리뷰 해 보려고 한다. (내돈내산 후기) 기존에 키크론 K1V3를 쓰고 있었는데 몇 개의 키가 망가져서 부득이하게 키보드를 바꿔야 하는 상황에 놓이게 되었다. 그래서 여러가지 키보드 군을 살펴보다가 좀 새로운 느낌의 키보드를 사용해 보고 싶어서 이 키보드를 구매하게 되었다. 바밀로는 중국의 키보드 제조 회사이다. 중국산(?)이지만 편견과 다르게 고퀄리티의 기계식 키보드를 잘 만드는 것으로 유명하며, 정말 다양한 색상과 디자인의 키보드 라인업을 가지고 있다. 특히 PBT 재질의 키캡을 사용하고 있고 염료승화 방식을 사용하는 것으로 유명하다. 디테일한 촉감까지 신경쓰기로 유명하고 중국산이지만 가격은 싸지 않은 편이다. 나의 경우 여러가지 모델을 고민하다가 결..
DevOwen
오웬의 개발 이야기