We will find a way, we always have.

-interstellar

우아한테크코스

[우테코] 놀면 뭐하니? (feat: FastAPI)

Redddy 2024. 5. 20. 01:56

금요일 오후쯤 브리가 주말에 무언갈 같이 하자며 슬랙 메시지를 올렸다.

 

레벨2와 관련있지만 미션 요구사항과는 상관없는 딴 짓이라길래 아! 레벨 2 미션들은 방탈출과 관련이 있으니 다같이 방탈출 가는건가??? 하고 기대감에 참여 의사를 남겼다.

 

하지만 예상과 다른 미션이 우리에게 주어졌다.

 

바로 스프링이 아닌 다른 낯선 프레임워크를 사용하여 방탈출 예약 관리 미션 구현이었다.

 

 

 

 

 

자바로 사용할 수 있는 프레임워크는 스프링 말고도 Spark, Struts, Play가 있었는데 모두 이름도 들어본적 없는 초면인 녀석들이었다. 자바 언어 말고도 다른 언어로 진행해도 된다고 하여 나는 모국어 파이썬으로 해보고 싶었다.

 

파이썬 프레임워크 플라스크는 사용해본적 있었는데, 구닥다리 같은 느낌을 받았었다. 어떤 프레임워크로 할까 고민하고 있었는데 아루가 Fast api로 페어할 사람 찾길래 바로 같이 하자고 하였다.

 

2시간동안 시간 가는줄도 모르고 프로그래밍 하였는데 오랜만에 몰입했던 거 같다. FastAPI의 장점은 일단 공식문서가 한국어도 지원한다는 점이다. 코드도 되게 간결하게 작성할 수 있었고, 또 빠르게 빌드가 가능했다.

스프링을 공부하기 위해 한국어로 구글링을 하다보면 진짜 열의 아홉은 김영한님 강의를 정리해둔 내용이고, 달라봐야 토비의 스프링이다. 그러다보니 다양한 의견이나 생각 혹은 코드를 찾기 힘들었다는게 단점이었다. 하지만 FastAPI에선 이런 단점을 못느꼈다. 

또 한가지 놀랐던 점은 코드를 수정하고 재시작하지 않아도 동적으로 변경된다는 것이었다. 어떤 언어는 빌드도 느린데다 코드 수정하면 다시 또 빌드해야 했는데, FastAPI는 그런일이 없었다. 진짜 말그대로 빠른 API였다.

 

 

똥바

 

 

2시간동안 열심히 하고 5~6명씩 그룹으로 소감 나누는 시간을 가졌다. 자바를 쓰되 스프링이 아닌 다른 프레임워크를 건들여본 크루도 있었고, 우리처럼 아예 다른 언어와 프레임워크로 진행해본 크루도 있었다. 

 

대부분 이 놀면 뭐하니 활동에 만족하였다. 나역시도 새로운 경험을 할 수 있어서 흥미로웠었는데, 구현하면서 나는 왜 자바를 선택했을까 스스로에게 질문이 들었다. 많고 많은 언어중에 먹고 살기 위한 언어로 왜 자바를 택했으며 프레임워크는 왜 스프링을 택했을까?

 

자바공화국이라서? 

우테코 백엔드 교육과정 언어가 자바라서?

 

앞으로 계속 생각해볼만한 질문인거 같다.

 

(참고로 솔라가 말하길 이전 기수에 존재했던 레벨 인터뷰에서 자기가 꼭 물어보는 질문이라고 했다.)

 

 

 

이번 미션을 통해 솔라가 강조하던 나만의 학습 방법 찾기에 한발짝 다가선거 같다.