티스토리 뷰

Spring Boot의 장점

- Java가 컴파일 언어라 문법 에러를 잡아줌

- Bean 개념(일종의 싱글톤같은 느낌이라고 볼 수 있다)

ㄴ 코드 구조 단순화, 단위 테스트 단순화

- Java 관련 검색시 에러 해결법, 라이브러리가 많다

단점

- Java가 인터프리터 언어 입장에서 봤을 때 쓸데없다고 느껴지는 코드들이 있다

- 가벼운 프로젝트를 만들기에는 따져야 할게 많아서 코드양이 많아서 적합하지 않다

- 공부해야할게 많다

 

일단 이미 필자가 이 회사에 왔을 때 Python으로 간단하게 API를 만들 수 있는 Flask로 웹 개발까지 하는 구조였다.

생각보다 그렇게 큰 규모는 아니였음에도 개발자마다 개발하는 방식이 다르기 때문에, 구조가 중구난방으로 개발이 되었다.

또한 Python은 인터프리터언어이기 때문에 특정 소스코드에서 문제가 발생해도 해당 코드가 임포트되거나 실행되기 전까지는 알 수 없다는 점이 너무 치명적이였다.

 

그래서 변화가 필요하다 느꼈고 여러 프레임워크를 찾아보았다.

일단 체감상 국내에서 가장 많이 사용하는 백엔드 프레임워크는 Spring Boot였다. 하지만 아이러니하게도 장단점같은 걸 봐도 딱 꽂히는 느낌이 없었다. 지금 생각해보면 당연한게 Spring을 쓰면서도 정말 다양한 방법으로 개발이 가능하기 때문에 장단점으로 정형화 할 수 없었던 것 같다

 

체감상 느껴지는 Spring Boot의 장점을 말해보자면 일단 국내에서 예전부터 인기있던 프레임워크(Java 또한)이기 때문에, 뭔가 에러나 모르는 걸 검색하면 굉장히 방대한 자료가 나오고 그 중에서도 한글로 된 내용도 많다는게 가장 큰 장점이였다. 또한 웬만한 것들은 다 라이브러리가 있어 굉장히 편하게 작업했던 것 같다.

 

어쨌든 Python과 비교했을 때 빌드만으로도 기본적인 타입 체크와 문법 체크를 해준다는게 안정성이 중요한 백엔드에서 정말 좋은 장점이라고 생각하고, 또한 모든 프레임워크가 그러하겠지만 어느정도 개발 방식이 정해져 있기 때문에 구조만 잘 잡아준다면 코드가 중구난방으로 만들어질 가능성이 많이 적어진다는 것도 장점이다.

 

또한 Bean개념으로 인해 단위테스트 난이도도 쉬워지고 객체를 주고받는 것도 상당히 간단해졌다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함