
이번에 입사한 회사에서 Angular를 스택으로 사용하고 있었다.
사실 Angular 프레임워크를 새롭게 스택으로 쌓아나가도 될까에 대한 고민을 좀 했다.
우리나라는 엄연한 리액트 공화국이니까...
그래도 결국 앵귤러(회사)를 선택하게 된 이유는 세 가지 정도가 있다.
아무튼 그래서 앵귤러를 미리 일주일 정도 공부하고, 입사 이후 과제 등을 통해 앵귤러를 익혀가고 있다.
2주 따리가 무슨 감상평이냐고 할 수 있지만, 그 말이 맞다.
그래도 느낀 점 몇 개 적어보겠다.
이미지 출처: https://survey.stackoverflow.co/2024/technology
stackoverflow ranking을 보면, 24년 기준으로 리액트는 39.5%, 앵귤러 17.1%, 뷰 15.4%인데... 국내에서 이는 완전히 다른 듯 하다.
잘 쓰이지 않게 된 데에는 다음과 같은 이유들이 있는 것 같다.
앵귤러 맛보기를 하면서 느낀 점은 다음과 같다.
리액트를 개발하면서 가장 재밌으면서도 열받는 점은, 라이브러리 선택 및 학습이다. 번들러는 무엇을 쓰고, 라우팅 전략은 뭘 쓰고, UI는 뭐 상태관리는 뭐 뭐뭐뭐 하다보면 시간 다 간다.
실컷 배워놔도 한 해 지나니 새로운 뭐가 떠오른다. 물론 끊임없이 공부해야하는게 숙명이라지만, 이 분야에서 리액트는 단연 레전드다.
앵귤러 프레임워크에서 가장 좋았던 점은 위의 것들을 신경쓰지 않고, 프레임워크에 내장된 기술을 쓰면 된다는 것.
이렇게 이렇게 해 ! 라고 공식 문서에 나와있으니, 레퍼런스가 부족하더라도 그냥 보고 쓰면 된다. 공식 홈페이지의 권장되는 코딩 스타일 가이드도 참 많이 도움이 되었다.
리액트는 새로운 회사에 가든, 혹은 회사의 다른 개발자분과 협업을 하든 각자마다 코딩 스타일이 꽤나 다른 경우가 많다. 물론 내부 컨벤션 및 가이드를 통해 어느정도 해소 가능하지만, 감안하더라도 차이가 꽤 크다.
앵귤러는 다 '해줘'서 그럴 일이 적다.
앵귤러는 MVVM (Model-View-ViewModel) 패턴에 가까운데, 이런 것이 개발할 때 좀 더 생각을 안해도 되게 만들어준다. 라우팅이나 상태관리 측면에서도 대부분 그렇다.
EX)
Component - 뷰의 로직, 상태관리
HTMl - 뷰모델
Service - 이외 로직 때려박기
Angular 개발을 위해서는 VSCode보다는 WebStorm이 더 낫다고 한다. vsCode 만년 인생을 살아온 나로써는 적응하기 좀 어려웠다. 지금은 제법 잘 쓰는듯? 현재는 Webstorm + Cursor 사용중이다.
최신 레퍼런스는 제로에 가깝다. 가끔 불친절한 공식 문서를 보고 모르는 것을 구글링하면 대부분 최소 n년전 자료들이 나온다.(though thank you stackoverflow)
그래도 요즘 AI 성능이 참 좋아서 이것도 어느정도 해결되는 문제다.
리액트나 앵귤러나 라이브러리 / 프레임워크의 설계 의도에 부합하게 코드를 잘 작성하려고 노력하면 되는 것 같다. 처음엔 어렵대서 쫄았는데, React, Angular, Vue 아무거나 깊게 잘만 공부해놓으면 다른 스택으로 넘어가는건 금방이라고 느꼈다.
Nest 녀석도 자꾸만 눈길이 간다. 이러다 풀스택 개발자가 되어버릴지도..?
"본 포스팅은 Angular 홍보를 목적으로 Google로부터 제품 대여 및 원고료를 지원 받지 않은 내돈내산이며, 직접 사용한 후기를 바탕으로 작성되었습니다."
Google은 원고료를 지급하라