안녕하세요 학구입니다 :)
먼저 이 글의 목표는 정보 전달보다는 스프링 프레임워크를 처음 접하면서 느낀 점을 일기 형식으로 작성한 것을 알려드립니다
저는 주로 Javascript 와 Typescript로 백엔드 및 프런트엔드 작업해왔습니다.
회사에도 웹 개발자가 저 혼자뿐이라 빠르게 풀스택 역량을 갖추기 위해 선택했지만, 국내의 큰 기업들( 카카오, 배민, 라인 등등 )의 채용공고들을 살펴보면 Java, Kotlin 기반의 백엔드가 압도적이라는 것을 다시 한번 느끼면서 스프링 프레임워크 기반으로 능숙하게 백엔드 시스템을 구축할 수 있도록 숙지하자는 목표를 다잡았습니다.
물론, 수많은 I/O를 비동기-논 블로킹 방식으로 처리하는 Node.js만의 장점도 많지만, 강도 높은 CPU 연산을 만났을 때는 Java기반의 Multi-Thread 방식이 훨씬 안정적일 것 같다는 생각했습니다.
결론적으로 필요에 따라 Node.js, Spring 둘의 장점만을 살려 보다 넓은 스펙트럼을 가진 개발자가 되고 싶어 스프링에 도전하게 되었습니다.
오늘 하루 동안 스프링에 대해 공부해보면서, 그래도 Nest.js와 사용 경험이 매우 유사한 것 같아서 구조 자체가 낯설지만은 않게 느껴졌습니다.
먼저 로컬 맥북과, AWS ubuntu 환경에 Java OpenJDK 11버전을 설치하고 서버에 배포하여 실행해보고, 아직 DB는 연동하지 않은 상태로 간단한 회원 정보를 MemoryMemberRepository 기반으로 만들어진 MemberRepository와 MemberService 를 구축하고 Junit을 이용한 테스트케이스를 작성해본 상태입니다.
새로운 개발 환경을 구성하고, 시스템을 구축해 나가는 과정은 항상 기분전환도 되면서 재밌는 것 같네요 ㅎㅎ
앞으로는 실제 프로젝트를 Spring으로 구축해보면서 제가 느낀 부분들이나 좋은 정보들을 공유할 수 있도록 노력하겠습니다
목표
Spring으로 Rest API 구축 및 테스트케이스 작성
Event-Driven Programming