![[워밍업 클럽 4기 백엔드] 1주 차 발자국 👣](https://cdn.inflearn.com/public/files/blogs/737ef3fa-ad11-47a8-98d4-86c0ec2c6e02/워밍업 클럽 이미지.png)
[워밍업 클럽 4기 백엔드] 1주 차 발자국 👣
학습 내용 요약
추상
추상과 구체의 차이를 인식하고, 읽기 좋은 코드를 만들기 위한 추상화 기법을 배웠습니다.
논리, 사고의 흐름
변수명 리팩토링, 매직 넘버/매직 스트링 상수 추출 등
추상화된 데이터를 활용해, 최소한의 사고로도 이해할 수 있는 코드를 만드는 방법을 익혔습니다.
객체 지향 패러다임
추상과 객체 지향의 관계를 고민해볼 수 있었고,
SOLID 원칙을 코드에 어떻게 적용할 수 있는지 구체적인 방법을 배웠습니다.
객체 지향 적용하기
가독성을 높이기 위해 객체를 더 잘게 나누고, 의미 단위로 분리하는 기법들을 배웠습니다.
아직 익숙하지 않아서 많은 연습이 필요하겠지만, 굉장히 강력한 도구라는 점을 느꼈습니다.
학습 내용 회고
성취
클린 코드가 왜 중요한지 근거를 들어 설명할 수 있게 되었습니다.
추상화 기법을 데이터와 코드 관점으로 나누어 설명할 수 있게 되었습니다.
SOLID 원칙을 이해하고, 설명할 수 있게 되었습니다.
코드에 객체 지향과 추상화를 적용하고 있는지 스스로 의심하고 점검하는 눈이 조금씩 생기고 있습니다.
발견한 약점 및 보완이 필요한 부분
좋은 추상화인지 판단하는 기준이 부족해, 메서드 이름을 지을 때 망설이게 되는 경우가 있었습니다.
Java 기본 문법 중 일부가 기억이 흐릿하거나 헷갈리는 부분이 있었습니다.
final 키워드를 사용하는 이유와 적용 범위
stream API 중 flatMap() 처럼 자주 사용하지 않던 메서드의 반환 결과를 헷갈림
강의에서 소개하는 리팩토링의 근거를 내가 제대로 이해하고 적용하고 있는지 점검할 기준이 필요하다고 느꼈습니다.
보완 계획
좋은 추상화에 대한 판단 기준을 오픈 소스, 실무 코드, ChatGPT, 현직자 의견 등을 통해 배우고 정리할 예정입니다.
헷갈리는 Java 문법은 노션에 기록하며 정리하고, Stream API는 워밍업 클럽 이후 강의를 통해 추가 학습할 계획입니다.
강의에서 알려주는 리팩토링 근거를 제대로 인지하며 따라하고 있는지, 평가 기준과 프로세스를 만들어 적용 중입니다.
강의가 끝난 후 기록해둔 리팩토링 근거를 보며 리팩토링 연습
같은 내용을 근거를 보지 않고 리팩토링 시도 (근거가 떠오르지 않을 경우 체크해두기)
리팩토링 흐름을 떠올리며 기록해보기
근거를 모두 떠올리고 적용할 수 있다면 통과
미션 내용 회고
Day2 미션 🌱
첫 번째 미션 🏃
추상과 구체의 예시를 표현해보기
미션 과정
BBQ 자메이카 통다리 구이를 배달시켜 먹는 과정을 추상으로 정의하고, 구체로 표현해봤습니다.
느낀점
일상 속 많은 개념이 이미 추상화 되어있다는 것을 새삼 느꼈습니다.
정보통신 기술로 문제를 해결하거나 사업을 하기 위해선,
이런 일상 속 추상화를 인식하고, 구체로 바꿔보는 훈련이 반드시 필요하다는 것을 체감했습니다.
Day4 미션🌱
첫 번째 미션 🏃
예시 코드를 [섹션 3. 논리, 사고의 흐름 내용]을 중심으로 읽기 좋은 코드로 리팩토링하기
미션 과정
“뇌 메모리에 최소한의 정보만 있더라도 코드를 이해할 수 있는가?”를 기준으로 리팩토링을 진행했습니다.
강의에서 언급된 기법들을 코드에 실제로 적용해보며 다음과 같은 고민을 하게 되었습니다.
올바른 근거를 가지고 추상화를 하고 있는가?
이 메서드명이 실무에서 사용하는 방식일까? 아니라면 실제로는 어떤 방식을 사용할까?
Spring 프레임워크를 사용할 때와 순수 Java 프로젝트에서 추상화 방식에 차이가 있을까? 차이가 있다면 어떤 차이일까?
검색, ChatGPT, GitHub 소스 코드, 그리고 사람들의 의견을 통해 이 고민들을 풀어나가며 많은 배움을 얻었습니다.
[워밍업 클럽 4기 백엔드] Day4 미션
느낀점
리팩토링 과정에서 고민 끝에 스스로 찾아가며 얻은 지식이라 더 오래 기억에 남을 것 같습니다.
워밍업 클럽이 끝난 이후에도 스터디를 통해 더 많은 예제를 읽기 좋은 코드로 리팩토링해볼 계획입니다! 🫡
두 번째 미션 🏃
SOLID를 자기만의 언어로 정리하기
미션 과정
SOLID 원칙을 영단어의 어원과 이미지로 해석해보고 저만의 언어로 정리해보았습니다.
느낀점
평소 학습할 때 원리와 배경을 이해하는 것을 중요하게 생각하는 편인데, 이번 시도는 특히 이해에 큰 도움이 되었습니다.
한글로는 뜬금없이 느껴지던 개념들도, 영단어의 어원과 이미지를 통해 숨겨진 의미를 이해할 수 있다는 점이 정말 흥미로웠습니다.
앞으로도 개념을 학습할 때, 단어나 용어에 담긴 이미지와 어원, 뉘앙스를 통해 더 깊이 이해하려는 시도를 꾸준히 이어나갈 계획입니다.
강의
댓글을 작성해보세요.