백엔드 개발과정 부트캠프인 코드스테이츠에 합류한지 벌써 3달이 후루룩 지나갔따. Spring MVC구조를 전반적으로 배우면서, 정신없이 학습하다보니 순식간에 3번째 회고를 하게되었다..
1.Spring MVC에 대한 이해와 실습
이번 Section 3 1달동안에는 Spring MVC구조에 대한 학습과, REST API를 준수해 컨트롤러계층, 서비스계층, 데이터 엑세스 계층을 구현해, 단순한 웹 서비스 백엔드는 구현할 수 있게 되었다.
지금까지 학습한 내용만큼 Spring의 기능은 정말 방대했지만, 얻는 것이 많았다. 2달차까지는 개발자라면 알아야되는 아카데믹한 지식들을 습득했다면, 이번 3달차부터는 Spring을 통해 실제 실무에서 필요한 서비스를 구현하고, 배포와 API 문서까지 작성법을 배웠다. 지금 당장 필드에 나가서 뛰어도 어느정도 실력발휘는 할 수 있겠구나! 라는 두근거림이 느껴졌다.
물론 당연히 프레임워크 기술 몇개 가진다고 현업에서 잘할수 없다는 것은 안다. 하지만 막연해보이는 개발자로서의 업무가 구체화되고, 미지에 대한 불안감을 한 스푼 덜어진 듯 하다.
이번 Section을 진행하면서 느꼈던 점 중 같은 Spring에서 같은 기능을 구현하더라도 다른 기술들로 프로그래밍이 가능하다는 점을 알게 되었는데, 그중 인상적이었던 2가지를 말해보고자 한다.
Spring JDBC vs Spring Data JDBC vs Spring JPA
Spring MVC 구조에서 데이터 엑세스 계층을 구현할때, 무려 3가지 방법이 존재했다. Spring JDBC, Spring Data JDBC, Spring JPA가 그것이었다. 3가지 방법을 혼자서 독학했다면 뭐가 뭔지 헷갈렸을텐데, 코드스테이츠를 통해 확실히 구별하고 차이점을 알 수 있었던 점이 좋았다. 데이터 엑세스에 대해 로직을 작성할때, SQL에 대한 이해도는 물론 중요하지만, 실제로 많은 부분을 쿼리문 없이 Spring Java 코드로 대체 할 수 있다는 점을 알았다. 또한 나중에 취직을 하게되면 회사가 어느 기술스택을 사용하더라도 전반적인 이해를 가지고 프로그래밍을 수행할 수 있겠다.
Swagger vs Spring Rest Docs
API 문서 생성을 위해 Swagger와 Spring Rest Docs 두가지 방법을 배웠다. 위와 마찬가지로 같은 일을 하는데 여러 방법이 있다는건 설레는 일인 듯 하다. Swagger는 애너테이션을 추가해 문서를 만드는 방식이었고, Spring Rest Docs는 테스트케이스를 작성해 api 문서를 작성하는 방법이었다. 각자의 장단점을 생각하며 실무에서는 어느 기술 스택을 사용하게 될까 두근거리는 학습이었다.
2.느낀점
Spring을 배우면서 백엔드 개발자에 한 스텝 가까워졌다는 느낌이 듦과 동시에, 아직 많이 부족하다는 생각이 들었다. 기존에 흐릿하게 보이던 백엔드 개발자에 대한 목표가 가까워진 느낌이다. 프로젝트때 내가 얼마나 구현을 잘할 수 있을진 모르겠지만, 후에 동료들과 협업할 생각에 설레였다.
3. 3달차 다짐
정신없이 Spring MVC를 공부하면서 Spring이라는 기술을 어느정도 사용할 수는 있게 되었다. 하지만 아직 Spring동작 원리(서블릿,핸들러메서드, 빈팩토리, 매핑..)와 각종 api에 대한 추가 학습과 이해가 필요하다고 느꼈다. 원리를 이해하지 못하고 가져다 쓰기만 하면, 결국 한계가 오기마련!
4.결론
이제 3달 남았다. 3달뒤 내모습, 너무 인텔리해져있어 취해버리지 않게 조심하는걸로
'코드스테이츠' 카테고리의 다른 글
코드스테이츠 Section4 회고(4달차) (1) | 2022.12.14 |
---|---|
코드스테이츠 Section 2 회고(2달차) (0) | 2022.10.19 |
코드스테이츠 Section 1 회고(1달차) (0) | 2022.09.19 |