레일즈에는 scaffold라는 기능이 있는데
cli에서 엔티티 필드 속성 지정하면
알아서 CRUD 전부 완성해주는게 있음
모델 뷰 컨트롤러 전부 다 생성해줌(리스트조회, 상세조회, 수정, 삭제, 에러출력, DB 스키마까지)
처음에는 ㅈㄴ 편하네 개꿀 ㅋㅋ 하면서 썼음
FLYWAY 쓸 필요없이 DB 버전이력 관리/마이그레이션도 가능하고
그냥 이새끼들은 외부 라이브러리 필요할만한걸 모두 레일즈에 다 박아둠
자바스크립트 쓰기 싫다고 stimulus나 hotwire같은거 만들어둬서 서버쪽 루비코드 작성해두면 알아서 js로 변환시켜서 브라우저에서 실행되게 만든거 보고 미친새끼들이구나 생각함
초반에는 학습난이도가 있긴한데 대부분 프레임워크 배울때 겪는거고 익숙해지니까 생산성 좋다는걸 느낌 ㅇㅇ
근데 단순한 개발에서는 좋던 생산성이
커스텀 단계로 들어가면 좆박는다는거임
한 화면에 하나의 모델만 쓰는 단순한 어플리케이션이면 괜찮은데
조금만 복잡도 올라가도 자동생성되는 코드 전부 찾아서 수동으로 커스텀해야함
그러다보니 이거 쓸바에 그냥 스프링으로 하는게 낫겠다는 생각이 듦
찍먹해보면서 재밌긴했는데 사람들이 유기하는데엔 이유가 있는 것 같다
다음은 러스트 백엔드 찍먹해보려고함
두개의 모델이 들어가는 부분들은 서비스 레이어로 따로 구축해야 되는건 맞긴해. 아마 써봐서 알겠지만 인증 구현이라던가 보안은 엄청 쉽고 뭔가 빨리 팔아야 되는 사이트라면 레일즈가 낫긴한데 AI가 정해져있어서 잘 짜긴함. 그래도 뭔가 UI적인 핸들링이 필요하다 하면 Next쓸거임
ㅇㅇ 근데 서비스 레이어가 없더라고; 다들 보니까 별도로 레이어 만들어서 쓰는거같은데 이게 좀 불편하더라
생산성 향상을 원하시나요? 그런당신을 위한 데이터베이스를 바로 볼수있게하는 파워빌더 추천드립니다
레일즈 쓰는 회사에서 일해봤는데 결국 controller-usecase-service-repository으로 가게 되긴 하더라