CODE SQUAD/회고록

[CODE SQUAD] 주간 회고록 : 2022/1/17 ~ 1/22

샤아이인 2022. 1. 23.

 

주간 회고록

코드스쿼드 에서의 2주 차가 지나갔다.

 

어느 정도 하루 루틴이 익숙해지긴 한 것 같다.

이번 주 우리 조 멤버는 : 케이, 선을로, Shine, Meenzino, 부카, Jay, Lucid, Dave, donggi, Hanse 였다.

 

이번주 여러 팀원들을 만나 좋았지만, 특히 케이 (외쳐! 케이 god!!) 님 덕분에 즐거운 한 주였다.

뭐랄까? 팀이 팀다운 한주였달까?

아직 서로 어색함이 많지만, 이를 인지하여 항상 먼저 말을 걸어주시고 분위기를 풀어주시면서, 다양한 이야기 거리를 던져주셨다.

 

개발을 떠나서, 팀에 케이처럼 활발한 분이 있을 때 팀의 사기가 얼마나 좋아지는지 경험할 수 있었다.

 

개발 역량으로 커뮤니케이션 즉, 소통 능력은 매우 중요하다. 유명한 개발 서적 중에 "함께 자라기" 같은 책도 이런 면에서 중요하다 생각한다.

 

CS10 - 5, 6

이번 주 CS10의 주제는

1) 메모리 구조

2) 함수형 프로그래밍이었다.

 

▶ 메모리 구조

메모리 구조 같은 경우 C, C++을 오랜 기간 사용해왔기 때문에 내용을 이해하기는 어렵지 않았다.

다만 이를 활용하여 Heap, Stack을 직접 구현해야 하는 부분은 정말 고역이었다...

아는 수준과, 구현의 level을 정말 차원이 다름을 다시 한번 알게 되는 날이었다.

 

나는 추가적으로 OS에서의 페이징 처리와, GC의 작동에 대하여 공부하였다.

다만 GC를 아직 명확하게 이해하지 못한 것 같아 하루 날 잡고 명확한 글을 하나 작성할 예정이다.

 

▶ 함수형 프로그래밍

이번 과제는 주어진 코드를 함수형으로 바꾸는 과정이 핵심이었다.

 

과제는 그래도 잘했다고 생각한다? 중복 부분을 진짜 많이 추출하여 Interface로 뽑아낸 후, 함수 구현은 Stream의 도움을 받으면서 구현했다.

또한 특정 도형을 구분해야 하는 부분은, Funtional Interface로 추출하여 람다식을 전달하면 사용할 수 있도록 하였다.

 

추가적으로 공부하면 저 정리 글을 하나 장성하였다. 다음과 같다.

 

[Java] 자바 함수형 프로그래밍

함수형 프로그래밍이란 무엇일까? 스스로의 궁금증에 답하기 위해 공부하며 기록해 본다. 함수형 프록래밍이 엄청 특별하고 그런것은 아니다. 우리가 일반적으로 익숙한 절차지향적 프로그래

blogshine.tistory.com

추가 공부

추가적으로 테스트 관련 공부를 하였다.

1) Mockito를 활용한 대역에 대한 공부, Stub, Spy, Mock에 대한 차이를 공부하였고, Mock을 사용해보면서 익혔다.

 

2) 테스트 가능한 설계, 특정 class가 다른 곳에 의존도가 높다면 어떤 방법으로 테스트해야 할까?

예를 들어 비밀번호를 검증하는 class가 id 중복인증, 비밀번호 강도 구별, id 저장소 등에 의존적이라면, 비밀번호 검증 테스트를 위해 수많은 사전 준비가 필요하다.

 

이때 어떻게 의존성을 끊어내면서 별도의 코드로 분리해내는 과정을 공부하였다.

댓글