# 2022-05-27 Spring으로 전환 후 우리가 느낀 이점들

# 아고라

아고라

고대 그리스의 도시국가(폴리스)에서 자유 시민들이 자유롭게 토론을 벌이던 장소. 아고라라는 단어 자체의 의미는 '집결지'(Gathering Place)이다.

우리는 다양한 미션을 진행하며 많은 의문과 고민에 직면하게 된다. 미션을 진행하며 단순히 정답을 찾는 것이 아닌 자신만의 근거와 사례를 만들어가는 과정이라고 생각한다. 우리 아고라 에서는 구체적인 예시를 기반으로 다양한 상황을 제시한다. 참여자는 그에 대한 실제 적용 사례를 이야기 하거나 자신만의 근거를 이야기 하며 건전한 토론을 진행한다.

# 목적

미션을 진행하며 직면하는 다양한 의문들에 대한 자신만의 근거를 만들기 위한 의식적인 연습과 자신의 생각을 의도에 맞게 적절히 전달할 수 있는 말하기 연습이 가장 큰 목적이다.

# Spring으로 전환 후 우리가 느낀 이점들

익명의 크루1: 처음 Spring으로 전환했을 때 가장 크게 느낀 것은 객체라는 레고를 조립하는 느낌을 받았다. Spring의 의존성 주입을 통한 IoC를 사용하기 이전에는 static 메서드를 활용하여 컴파일 시점에 모든 의존성이 정해졌다. 이것은 확장에 매우 제한된 구조를 만들기 때문에 OCP를 위배하게 된다. 전환 후 Spring의 IoC와 DI, 객체의 생명 주기 관리 등 개발자가 도메인에 집중할 수 있도록 많은 부분을 편리하게 만들어 준다.

익명의 크루2: 솔직히 아직 이점을 잘 모르겠다. Spring의 일부 기능만 제한적으로 사용하였기 때문에 비교 대상이 없어서 강점을 잘 체감하기 어려웠다. 또한 대부분의 주요 로직들이 domain 내부에 위치하였기 때문에 더더욱 그렇게 느꼈다.

익명의 크루3: 도입 이전에는 AppConfig를 만들어서 직접 객체들의 의존성을 관리했다. 이것을 Spring에게 위임하고 나니 더욱 편리해졌다. 이렇게 의존성을 알아서 관리해주며 객체를 조립하는 것이 아주 좋았다. 또한 Spring의 긴 역사와 많은 레퍼런스가 매우 큰 강점이라고 느껴졌다.

익명의 크루4: 레벨 2 학습 목표가 왜 Spring을 써야 하는지 설득하는 것이 목표였다. Spring은 객체지향적인 코드를 작성할 수 있게 도와준다. 하지만 써본 프레임워크의 종류가 적기 때문에 비교 대상이 부족한 것이 아쉬웠다.

익명의 크루5: Spring에 국한된 이점이 아닌 DI기반의 프레임워크의 장점이라고 느껴졌다. 그렇기 때문에 다른 프레임워크도 매우 비슷하다고 느껴졌다. 이제 Spring 만이 가지고 있는 장점을 찾아가고 있다.

익명의 크루6: 객체지향적인 코드를 가능하게 해준다. 또한 도메인에 집중할 수 있게 만들어준다. 의존성 주입을 통해 계층 별 격리도 쉽게 가능했다고 생각한다.

익명의 크루7: 모든 것을 개발자가 새롭게 만들지 않게 하기 위해 라이브러리, 프레임워크를 사용하는 것인데 그러한 측면에서 Spring이 지원하는 강력한 기능들은 편의성을 극대화 시켜준다.

익명의 코치1: Nest.js도 Spring에서 영감을 받아 나온 것이기 때문에 유사한 부분이 많다. Spring이 많이 쓰이게 된 것은 Spring Boot가 도입되며 수 많은 자동 설정으로 인한 편의성이 극대화 되었기 때문에 사용 빈도가 높아졌다고 생각한다. 또한 Spring은 내부 구현을 잘 모르더라도 잘 쓸 수 있도록 적절히 추상화되어 있다. 그 만큼 진입장벽이 낮게 잘 만들어져 있다고 생각한다.

또한 프레임워크는 내가 만든 코드를 갖다 붙이기 쉽지 않다. 하지만 Spring은 직접 만든 객체들을 손쉽게 붙여 사용할 수 있다. 그만큼 확장할 수 있는 포인트가 열려있기 때문에 객체지향에 가깝게 코드를 작성할 수 있다.

# 회고

  • 단순히 이점만 이야기하는 것이 아닌 단점도 함께 나누면 좋을 것 같다.
  • 특정 주제를 기반으로 반반 갈리는 의견으로 팀을 나눠 토론식을 진행해도 재밌을 것 같다.
  • 미리 사전에 주제를 선정하는 시간이 있으면 좋겠다.
  • 주제가 너무 큰 범주를 가지고 있다. 좀 더 세부적으로 나눠서 구체적으로 다른 것과 어떤 차이가 있는지 이야기 나누면 좋을 것 같다.
  • 다른 프레임워크와 비교하는 이야기가 나왔다면 더 좋았을 것 같다.
  • 대립할 수 있는 주제를 기반으로 진행하면 더 재밌을 것 같다.
  • 주제가 논쟁거리가 될 수 있는 것이 좋겠다. 주제를 미리 알려주지 않고 당일에 선정해도 재밌을 것 같다.
#우아한테크코스 #아고라
last updated: 5/30/2022, 1:05:58 AM