끝을 보는 용기 125

Spring 본캠프 Day 064 - 도전 단계 과제 첫 도전, 3단계 일정 관리 앱까지 일단 만들긴 했는데…….

역시 직접 짠 코드는 마음에 들지 않았다. 좋아하는 스파게티와 멀어지고 싶을 만큼. 퇴실하기 전 약 20분이 남았을 때, 튜터님이 한컴타자연습 치는 줄 아셨다고 웃음이 빵 터졌을 만큼 부서져라 키보드를 두들겨서 3단계 일정 관리 앱 만들기를 끝냈다. 도전 과제 3단계는 '데이터베이스(database) 구성을 바꾸면 얼마나 고생하는지' 몸소 겪으라는 의미로 내준 과제 같았다. 더도 말고 덜도 말고 표가 딱 하나 늘었을 뿐인데, 고칠 부분은 정말 자비 없이 늘었다.  10배? 아니. 20배.오늘은 점심과 저녁 시간 직전까지 튜터님과 3단계 과제를 붙잡느라 아침에 허리 근력 강화 운동을 하고 점심 먹기 전에만 10분 정도 움직였다. 다행히 오늘 메뉴가 부대찌개이기도 했고, '아무리 바빠도 한국인은 밥심이지!'..

Spring 본캠프 Day 063 - 숙련 Spring 1주차 완강, 리팩토링이 아니라 이터널 리팩토링, 줄여서 이팩토링 중, 끝이 안 난다!

코드의 가독성이나 유지 보수성을 높이고자 내부 구조를 바꾸는 작업을 리팩토링(refactoring)이라고 하는데, 한 군데를 바꾸면 또 바꿀 데가 생기고 그곳을 다시 수정하면 또 고칠 곳이 눈에 띄었다. 다른 팀원분의 말대로 영원한 리팩토링, 일명 이터널 리팩토링(Eternal Refactoring)을 계속했다.TIL을 짧게 작성하고 if문과 else if문을 사용하며 중복된 부분을 다시 리팩토링해야 한다. 그냥 제출한다고 과제 점수가 깎이진 않겠으나, 내 마음에 들지 않는 코드가 다른 사람 마음에 들 리가 없었다. 위에 쓴 코드 또한 챗GPT의 도움을 많이 받은 만큼, 처음 쓰는 메서드(method)를 꼭 공부해야 지식을 제대로 나의 것으로 만들 수 있었다. 공식 문서를 읽으며 사용법을 익히고 하루를 ..

Spring 본캠프 Day 062 - 1단계 및 2단계 일정 관리 앱 만들기 중, toLocalDateTime(), toLocalDate(), getTimestamp()

늦게까지 실컷 자고 어기적거리며 일어났다. 천천히 자바(Java) 문제를 한 개 푼 다음에 경건한 마음으로 MySQL 데이터베이스(database) 연동 작업에 돌입했다. 주말이라 문제가 생기면 답을 구할 방법이 평일보다 마땅치 않았기 때문에 저번에 완강한 6주 차 강의를 다시 켜서 천천히 작업했다. 빨간 줄이 쭉쭉 생길 때마다 심장이 흔들다리를 건너듯 철렁거렸지만, 영어를 아주 어려워하지 않는단 장점을 떠올리며 챗GPT에도 물어보고 나름대로 문서를 찾아 읽으며 끝을 향해 달리는 중이다.챗GPT의 도움을 받아 문제를 해결했을 때 문득, 챗GPT도 좋은 도구이자 친구이며 잘 쓰는 능력 또한 역량 중 하나라는 튜터님의 말씀이 떠올랐다. 여기서 이런 생각이 함께 들었다. 문제를 해결했다고 넘어가면 챗GPT에 ..

Spring 본캠프 Day 061 - 1단계 및 2단계 일정 관리 앱 만들기 중, DTO와 VO 알아 오기 과제 통과!

[인용 및 참고 출처]1. 강의: 스파르타코딩클럽, "[Spring 4기] CH 3 일정 관리 앱 만들기", 부트캠프 소개, (2024.12.06)2. 구글 검색: Dremio Corporation, "what is value object docs", What is Value Object, (2024.12.06) "개발 공부하신 지 얼마나 되셨죠?" 생각해 보니 사전캠프를 포함해도 겨우 두 달이, 본캠프만 따지면 이제 막 한 달이 지났다. 그러니까 이 일정 자체를 소화하는 Spring 4기가 모두 대단한 사람들이었다. 튜터님의 질문에 대답하면서 곰곰이 지난날을 되짚어 보니, '알게 모르게 성장 중이구나' 싶었다. 문득 처음 과제를 받은 날 쓴 TIL이 머릿속을 스쳤다. 그때는 구현은커녕 API 명세서조차..

Spring 본캠프 Day 060 - 1단계 일정 관리 앱 만들기 중

아침에 API 명세서 관련 글을 슬랙(Slack) 잡담방에 올린 다음, 무언가가 막힐 때마다 튜터님을 찾아가고 하루 종일 과제를 붙잡았더니 금세 밤이 되었다. 오늘 베이식(Basic) 반에서 진행된 보충 특강 청강까지 합치면 여섯 분께 찾아갔다. 개인 프로젝트라고는 하지만, 코드를 어떻게 짤지 구상할 때면 진짜 제품 출시를 준비하는 1인 사업가가 되곤 한다. package com.spring.weekthree.entity;import lombok.Getter;import lombok.Setter;import java.time.LocalDateTime;@Getterpublic class Plan { // [1] 속성 @Setter private Long id; private Strin..

Spring 본캠프 Day 059 - '일정 관리 앱 만들기' API 명세서 작성 중, 추가 과제를 받았다!

어제 새벽 2시 반 넘어서 잠들었으니까 다섯 시간은 잤으려나. 시도 때도 없이 피로가 몰려와서 아침에 비몽사몽 상태로 허리 근력 강화 운동을, 저녁 먹기 전에 운동을 간단히 했다. 점심때는 API 명세서를 작성하는 데에 푹 빠져서 운동을 다음 날로 미루었다. 오늘도 꽤 일정이 빡빡했다.  1. 아침에 자바(Java) 1문제 풀기 2. API 명세서 작성하기 3. 스탠더드(Standard) 반 특강 듣기 (오후 2시~3시)4. ERD(Entity Relationship Diagram) 끄적이기 5. 과제 프로젝트 생성 및 초안 작성하기 미니 프로젝트를 했을 때도 팀원이 작성했으니 API 명세서를 이번에 처음 작성하는 셈이 되는데, 정말 공들여서 적어 내려갔다. 처음에는 'todo'를 썼으나 사전에 단어를 ..

Spring 본캠프 Day 058 - 기초 Spring 6주차 완강, API 명세서 작성 시작

오늘 6주 차 강의를 들으며 각각 1시간에 달하는 실습을 모두 끝냈다. 코드스니펫(code snippet) 양만 봐도 알 수 있지만, 정말 하루 종일 실습했다고 해도 과언이 아니었다. 강의를 보고 따라서 코드를 치다가 이해 안 가는 부분이 생기면 다시 몇 초 돌아가고 다시 듣기를 반복하다 보니, 금세 저녁이 되었다.오늘은 아침에 일어나서 허리 근력 강화 운동을 먼저 끝냈고, 점심과 저녁때 10분씩 운동했다. 자기 전에 거북목 스트레칭만 하면 된다. 오늘 엄청나게 집중해서 강의를 듣고 실습한 여파인지 피로가 확 몰려온다. 내일은 API 명세서와 ERD(Entity Relationship Diagram) 두 가지를 오전 중에 모두 작성하고 필수 과제에 들어가기가 목표이다. 벌써 연습용 저장소를 두 개나 만들..

Spring 본캠프 Day 057 - 기초 Spring 4주차 및 5주차 완강

"과제 하기 전부터 트러블(Trouble) 일으키는 사람?" "저요!" 오늘 사전캠프 기간부터 우수 TIL에 선정된 수강생 전원에게 5,000포인트씩 지급되었다. 주머니가 두둑해져서 기분이 좋기도 했지만, '필수로 구현해야 하는 과제를 전부 무사히 제출하면 꼭 우주 비행기랑 플라밍고 튜브 사야지!' 같은 의욕이 샘솟아서 포인트를 쓰기가 망설여졌다. 강의 5주 차부터 직접 메모장을 만드는 실습이 있어서 '모르지만 일단 따라 친다'는 마음으로 코딩했는데, 별의별 트러블(Trouble)을 일으키거나 머리에 쥐가 날 때 '꼭 사고 만다'는 생각으로 5주 차 학습을 마쳤다. 주말에 실습할 부분을 무작정 따라 작성하며 눈에 보이는 족족 다시 강의 자료에서 해당 용어를 찾아 공부했는데, 효과가 있긴 한 듯했다. 어제..

Spring 본캠프 Day 056 - 책 『비전공이지만 개발자로 먹고삽니다』 추가 정리

"아무래도 Spring의 진정한 뜻은 봄이 아니라 용수철 같아요. 전부 튕겨 나가서!" 겨울에 맞이한 프레임워크(framework) Spring은 톡톡히 이름값을 했다. 어제 새벽까지 쉬이 잠이 오지 않아 뒤척였다가 또 늦게 일어나고, 집중이 되지 않아 그동안 미뤄온 게임 영상을 보며 쉬었다가 다시 강의 자료를 읽었다.강의 자료를 읽다가 머리로 외우기보다 손으로 익히자는 마음이 들어 Spring 연습용 저장소를 깃허브(GitHub)에 새로 열였다. 자바(Java)를 공부할 때와는 차원이 다르게 막막하고 지금도 숨이 막히는 기분이 맴돌다 보니 우선 '5️⃣ 슬랙(Slack) 메시지 및 실습 때 주석으로 남긴 메모 내용을 모두 TIL에 옮기기' 먼저 어느 정도 끝내기로 했다. 도서관에 가서 저번에 읽은 책 ..

Spring 본캠프 Day 055 - 속 터지기 일 초 전에 계획을 뜯어고쳤다.

🥇 과제 발제를 읽으면서 발제에 나온 용어를 목록으로 정리하기 🥈 필수 단계 및 도전 단계를 읽으면서 구현해야 하는 기능을 목록으로 정리하기   🥉 기초 Spring 강의 4주 차 및 5주 차 강의 자료 훑어보기4️⃣ 기초 Spring 강의 4주 차 및 5주 차 강의 모두 듣기 5️⃣ 슬랙(Slack) 메시지 및 실습 때 주석으로 남긴 메모 내용을 모두 TIL에 옮기기6️⃣ 계산기 만들기 프로젝트 회고 작성하기 7️⃣ 키오스크 만들기 프로젝트 회고 작성하기8️⃣ 자바(Java) 문제 1개 풀기9️⃣ TIL 작성 및 제출하기🔟 빌린 소설책 완독하기 오늘 4주 차 강의를 듣다가 꺼버렸다.  이 상태로 강의를 들었다가는 과제에 손조차 대지 못하겠다는 위기감이 밀려든 탓이었다. 1순위부터 3순위를 제쳐두..