새로운 언어와 프레임워크를 좀 더 적극적으로 도입해야 한다는 점에 공감합니다만, 솔직히 지금 신규 프로젝트를 막 새로 시작하는데도 무슨 합리적인 이유 없이 최신 LTS 버전인 Java 17 대신 관성적으로 Java 8을 선택하는 사람이 넘쳐나는 것이 국내의 현실이지요. 티스토리 블로그 같은 곳을 보면 “Java 1.8 다운로드 방법” 이런 글들이 2022년 올해 날짜로 올라오는 경우를 정말 쉽게 찾을 수 있습니다. 그런 걸 보면 괜히 여기 계신 다른 많은 분들이 Java를 극혐하는 태도를 보이시는 게 아닌 것 같다 싶습니다.
그렇지만 이러한 문제점이 Java라는 언어 자체에서 기인한 문제점만은 아닌 것 같습니다. 그보다는 특히 국내에서 심한 것으로 보이는 변화에 적대적인 문화와 발전 없는 복사-붙여넣기 코드의 범람이 더 큰 문제가 아닐까 생각합니다. 실제로 저는 C#으로 개발된 비슷한 프로그램 여러 종류를 유지보수하는 작업을 하고 있는데, 언어 자체는 Java보다 낫다고 생각하지만 아무리 언어가 좋아도 전임자가 대충 예전 프로젝트 코드를 복사-붙여넣기로 때우기만 한 코드의 끔찍함을 막을 도리는 없더라고요. 심지어 지금은 외부 환경의 변화로 인해 그렇게 반복되는 코드의 상당수를 연말까지 무조건 교체해야 하는 상황이 닥치니 더욱 끔찍합니다.
스타트업이 자바를 피한다기 보다 다른 언어/프레임워크의 장점이 더 크기 때문이라고 생각하긴 하지만 자바/스프링 생태계가 생각보다 별로라는것에는 동의합니다. 솔직히 스프링 개발자지만 스프링을 딱히 좋아하지 않네요. 웹 어플리케이션 개발을 자바(사실상 스프링과 동의어) 말고 다른 환경에서 진행해본 개발자들이 별로 없기에 더 심한느낌..
Spring
Java
JVM 생태계의 잇점은 분명 있으니 새 프로젝트에서 코틀린은 거의 필수고 스프링을 가져가야할 명확한 이유가 없다면 ktor 같은 경량 프레임워크로 시작하는게 바람직하다 봅니다. 지적한 단점에 대해서는 설계가 잘못되고 스프링 철학을 제대로 이해를 못하고 개발했느니 하는 사람들이 많지만 OOP 는 다른 언어로도 할수 있는것..