목록전체 글 (20)
한결과 레지아이스

기존의 42GG DB 설계를 박정규 멘토님께 조언을 구해 수정했습니다. 원래는 어땠고, 우리끼리 어떻게 고민했으며, 결국 어떻게 바꿀 지에 대해 적었습니다. 0. DB 설계도 변천사 a. 기존 설계 b. 멘토링 이후 기존 설계에 관계성 추가 c. 매핑 테이블을 이용해 수정한 결과 42GG 서비스는 처음에 어떤 종류의 게임이든, 팀이 몇 개 존재하든, 각 팀에 몇 유저가 존재하든 상관없이 대전 서비스를 제공할 수 있도록 확장성을 염두에 두고 설계를 했다. 이 과정에서 어려움을 겪어 기존의 형태로 설계했는데, 먼저 어떤 시행착오를 겪었는지 설명해보려고 한다. 1. 태초의 설계 DB설계를 처음 해봤고, 팀원들도 함께 미숙하던 시절이라 최대한 확장성을 염두에 두고 만드려면 어떻게 해야 할까 고민을 많이 했다. ..

자료구조는 선형과 비선형으로 나뉜다. 하나의 자료 뒤에 하나의 자료가 위치하면, 관계가 1:1이면 선형 자료구조라고 한다. 하나의 자료 뒤에 n개의 자료가 위치하면, 관계가 1:n 혹은 n:n이라면 비선형 자료구조라고 한다. 선형 자료구조에는 배열, (연결)리스트, 스택, 큐 등이 있고 비선형 자료구조에는 트리와 그래프 등이 있다. 배열과 연결 리스트부터 스터디는 시작된다. 배열 (Array) 배열은 데이터가 메모리상에 연속적으로, 순서대로 저장된다. 자료의 크기가 같아야 하고, 이런 특성들 덕분에 시작 메모리 주소에 인덱스를 더해서 바로 접근할 수 있다. 그래서 자료의 조회가 바로 빠르다. 크기는 처음에 할당 받은 대로 한정된다. arr[100]으로 선언했다면 이 배열의 크기는 계속해서 100이다. 크..
42서울에서 7월 마지막 주 부터 8주간 박은종 멘토님의 자료구조 스터디를 진행하며 배우고 공부한 것을 기록하기 위한 카테고리입니다. 주로 멘토님께서 제공해주신 ppt로 공부하였고, 부족한 부분은 길벗 출판사의 『누구나 자료 구조와 알고리즘』 개정 2판과, 구글링을 하며 찾은 많은 블로그를 참고하며 공부했습니다. 공부를 하고 나선 매 주 바뀌는 짝과 함께 페어 프로그래밍으로 공부한 자료구조를 C로 구현했습니다. 이 때, 그냥 구현하는 것은 아니고 멘토님께서 나눠주신 헤더파일에 부합하도록 만들었습니다. 짝 코딩을 마치고 스터디 세션을 가지고 나면 조금 부족했거나 아쉬운 부분을 수정해 개인 레포(https://github.com/triplecheeseburger/DataStructureStudy)에 올렸습니..

인생 첫 프로젝트, 42좋은 42서울인을 위한 탁구 생활 서비스, [42GG]를 런칭했습니다. 다행히도 첫 날 동안 버그는 없었고, 별다른 이상 없이 마칠 수 있었습니다. 이 글을 쓰는 오늘 까지도 다행히 결함으로 서버가 내려간다거나 하는 문제 없이 서비스를 원활히 제공할 수 있었고, 기쁜 마음에 첫 날부터 런칭까지 제가 개발하고 경험하고 느낀 것에 대한 글을 써보려 합니다. 개발 배경 먼저 저는 42서울이라는 교육기관에서 2년간의 교육과정을 밟고 있는 카뎃(≒학생)입니다. 제가 공부하는 곳은 클러스터라고 부르는데, 여기에는 탁구대가 딱 하나 있습니다. 탁구대는 하나, 학생들은 300명 이상… 당연하게도 탁구 한 판 치려면 기다림은 일상이었습니다. 기다림을 해소하기 위해, 그러면서 즐거움은 더하기 위해 ..