전체 글
돌아보는 2021
내 성격이 도전적인 성격이 아니었던 터라 도전적인 삶을 살았다고 생각하지 않았는데, 다시 돌아보면 인생을 걸고 과감한 판단을 몇번 내렸던 것 같다. (사실 남들이 보기엔 과감하지 않을 수 있다.) 내 첫 도전은 고3때 수능의 한 과목(수리영역)을 버리고 나머지에 집중하는 전략을 세웠던 것이다. 지금 돌아보면 그 판단을 세울 수 밖에 없었지만 인생에서 중요한 시험에서 어느 경우의 수에 도박을 거는 것은 나름 도전적이라고 생각한다. 두번째 도전은 형이 하는 일을 사업화 시킨 일이다. 쇼핑몰 홈페이지 관리 알바를 했던 경험으로 형이 하던 교재판매사업을 시스템으로 만들었다. 내 인생은 아마 이 사업을 시작했던 기점으로 나뉘었을지도 모른다. 두번째 도전은 세번째 도전을 결정한 계기가 되었다. 세번째 도전은 휴학결..
[앞으로의 계획] 21년 연말
우테코 최종시험이 끝나고 4일간 코드는 한 줄도 작성하지 않고 있었습니다. 해야될 건 많은데 무엇부터 해야될지 모르는 상태에서 섣불리 시작할 수가 없었습니다. 이번주동안 코드는 작성하지않고 책을 한권 읽었고 42서울 포인트를 모으기 위해 부랴부랴 슬롯을 열어놨습니다. 이대로 머리속이 정리가 되지 않는다면 계속 늘어질 것이 뻔했고, 이쯤에서 계획정리를 한번 하고 넘어가야 남은 기간을 더 알차게 보낼 수 있을 것 같습니다. 우테코 합격 ver. 가장 희망적인 계획부터 세워보겠습니다. 우테코 시작날짜는 2월 8일(화) 입니다. 42서울과 병행이 가능한 경우 1서클까지는 끝내야합니다. (과제 4~5개) 1서클 끝내는 것만해도 상당한 시간이 소요되기 때문에 다른 프로젝트가 불가할 것입니다. 결론 : 42서울 과제..
[우테코 프리코스] 3주차: 자판기
🚀 기능 요구사항 반환되는 동전이 최소한이 되는 자판기를 구현한다. 자판기가 보유하고 있는 금액으로 동전을 무작위로 생성한다. 투입 금액으로는 동전을 생성하지 않는다. 잔돈을 돌려줄 때 현재 보유한 최소 개수의 동전으로 잔돈을 돌려준다. 지폐를 잔돈으로 반환하는 경우는 없다고 가정한다. 상품명, 가격, 수량을 입력하여 상품을 추가할 수 있다. 상품 가격은 100원부터 시작하며, 10원으로 나누어떨어져야 한다. 사용자가 투입한 금액으로 상품을 구매할 수 있다. 남은 금액이 상품의 최저 가격보다 적거나, 모든 상품이 소진된 경우 바로 잔돈을 돌려준다. 잔돈을 반환할 수 없는 경우 잔돈으로 반환할 수 있는 금액만 반환한다. 반환되지 않은 금액은 자판기에 남는다. 사용자가 잘못된 값을 입력할 경우 Illegal..
[우테코 프리코스] 2주차: 자동차 경주 게임
🚀 기능 요구사항 초간단 자동차 경주 게임을 구현한다. 주어진 횟수 동안 n대의 자동차는 전진 또는 멈출 수 있다. 각 자동차에 이름을 부여할 수 있다. 전진하는 자동차를 출력할 때 자동차 이름을 같이 출력한다. 자동차 이름은 쉼표(,)를 기준으로 구분하며 이름은 5자 이하만 가능하다. 사용자는 몇 번의 이동을 할 것인지를 입력할 수 있어야 한다. 전진하는 조건은 0에서 9 사이에서 무작위 값을 구한 후 무작위 값이 4 이상일 경우이다. 자동차 경주 게임을 완료한 후 누가 우승했는지를 알려준다. 우승자는 한 명 이상일 수 있다. 우승자가 여러 명일 경우 쉼표(,)를 이용하여 구분한다. 사용자가 잘못된 값을 입력할 경우 IllegalArgumentException를 발생시키고, "[ERROR]"로 시작하는..
[우테코 프리코스] 백엔드 프로젝트 초기설정 (Mac OS)
1. java 버전 변경 일단 우아한 테크코스에서는 java 8.0 (JDK 1.8) 버전을 사용합니다. 자바8이 설치되어있지 않으시다면 설치먼저 하셔야합니다. 1.1 Java 8 설치 (설치가 되어있다면 1.2로 넘어가세요) 아래는 다른 분의 링크입니다. 이 포스팅에는 자바설치하는 과정까지는 담지않을게요! https://gilu-world.tistory.com/72 OS X(맥 OS) - Java 다운로드 및 환경변수 설정(JDK 1.8 - 8u251) 자바 환경변수 설정 안녕하세요. 이번 글에서는 자바를 사용하기 위해 가장 먼저 해야 하는 JDK 환경변수를 맥 OS에서 설정하는 방법을 소개하도록 하겠습니다. 준비물 - JDK 파일 - 오라클 gilu-world.tistory.com 1.2 터미널 Ja..
[우테코 프리코스] 1주차: 숫자 야구 게임
🚀 기능 요구사항 기본적으로 1부터 9까지 서로 다른 수로 이루어진 3자리의 수를 맞추는 게임이다. 같은 수가 같은 자리에 있으면 스트라이크, 다른 자리에 있으면 볼, 같은 수가 전혀 없으면 포볼 또는 낫싱이란 힌트를 얻고, 그 힌트를 이용해서 먼저 상대방(컴퓨터)의 수를 맞추면 승리한다. 예) 상대방(컴퓨터)의 수가 425일 때 123을 제시한 경우 : 1스트라이크 456을 제시한 경우 : 1볼 1스트라이크 789를 제시한 경우 : 낫싱 위 숫자 야구 게임에서 상대방의 역할을 컴퓨터가 한다. 컴퓨터는 1에서 9까지 서로 다른 임의의 수 3개를 선택한다. 게임 플레이어는 컴퓨터가 생각하고 있는 3개의 숫자를 입력하고, 컴퓨터는 입력한 숫자에 대한 결과를 출력한다. 이 같은 과정을 반복해 컴퓨터가 선택한 ..
타석증(침샘결석) 수술후기 (+전신마취)
타석증 발견 사랑니 4개를 다 빼느라 치과에서 CT를 찍었는데 치과의사쌤이 타석증(침샘결석)이 의심된다면서 이비인후과를 가보라고 하셨습니다. 사랑니 발치의 고통을 머금고 동네 이비인후과에서 타석증 판정받고 대학병원에 제출할 소견서를 받았습니다.. 대학병원에서도 의사선생님이 혀밑에 손가락을 넣어서 만져보시고 있는것 같다고 CT도 찍고나서 타석증 판정 제대로 받았습니다. 침샘 깊숙히 있어서 자연치유는 어렵고 전신마취 후 제거할 것이라고 말씀하셨고 최대한 입 안쪽으로 제거할 거라고 하셨습니다. 수술 전 검사 전신마취를 하기위한 검사를 여러개 합니다. 피검사, X-ray, 소변검사 등등 하는것 같습니다. (피검사 한 날 팔운동 했는데 다음날 피멍들고 너무 아팠습니다... 저처럼 바보같이 피검사한날 팔운동 하는 ..
[우테코] 4기 지원후기 + 1차합격 + 최종합격
우테코 지원했습니다. 서류 질문이 5가지인데 사실상 4가지 항목의 자기소개서를 적습니다. 우테코 지원하고싶어서 작년부터 이 질문들에 대해 뭐라고 답할지 생각해놓고 있었습니다. 대부분의 답은 창업을 통해 변한 제 마음가짐과 개발공부방식입니다. 그리고 42서울에 참여했던 경험과 그 과정에서의 어려움, 또 무엇을 배웠는지도 적었습니다. 또한, 말뿐만이 아니라는 것을 증명하기 위해서 노션페이지를 따로 제작해 관련 증빙자료(블로그 글, 깃허브, 사진 등)을 정리했습니다. 1차 온라인 코딩테스트 일시 : 21.11.06 12시~16시 문제 수 : 7문제 쉽다. 쉽다. 쉽다. 처음에 못풀었다가 다시 고민해서 풀어냈다. 처음에 못풀었다가 다시 고민해서 풀어냈다. 한번에 풀긴했다. 놓칠만한 예외가 있었다. 마지막까지 겨..
strlcat 반환값에 대한 고찰
들어가며. 이 글은 42서울의 라피신 과정중 가장 고민했던 함수였던 strlcat에 대한 설명이고, 특히나 '반환값'에 대한 고찰이 담겨있습니다. strlcat에 대한 설명은 man strlcat 이나 다른 블로그에도 잘 설명이 되어있습니다. 참고하시길 바랄게요. 중간중간 이해하기 어려워도 끝까지 정독하신 후 또 다시 읽어보시고 궁금한 점이나 틀린 부분은 댓글남겨주시면 감사하겠습니다. 왜 이 글을 쓰는지? strlcat을 짜는 것은 어렵지 않았습니다. 하지만 제가 가장 어려웠던 것은 strlcat의 반환값을 왜 그렇게 짜야하는지, 반환값이 의미하는 바가 무엇인지가 가장 궁금했습니다. 그리고 공식문서와 동료들과의 토론, 제 고찰이 담긴 결론을 냈습니다. 이 글은 이 결론을 설명하는 글입니다. strlcat..
[Class Flix] EP 21. Bean Validator 적용
지금까지는 회원가입이나 강의등록시 올바른 데이터인지 검증하지 않았습니다. 사실 기능은 몇개 넣었는데 잘 모르고 사용했습니다. Validation을 학습하고 실무에서 많이쓰는 방법으로 제 프로젝트에 적용해 보겠습니다. 2021.10.10 - [Web/MVC2] - EP3. 검증1 - Validation EP3. 검증1 - Validation 지금까지 만든 웹 어플리케이션은 사용자가 입력하는 모든 상황을 대비할 수 없습니다. 예를들어, 사용자가 가격을 입력하는 곳에 알파벳을 입력하거나 그냥 입력 창에 공백을 넣게되면 에러페 ksabs.tistory.com 2021.10.14 - [Web/MVC2] - EP4. 검증2 - Bean Validation EP4. 검증2 - Bean Validation EP3. 검..