저 이사갑니다. Why Not?


blog placeholder

짝..사랑?

나는 닷넷을 꽤 오랫동안 지켜봤다.

  • 호주에서 가장 인기있는 프레임워크
  • 미친듯이 유연하면서 강력한 LINQ
  • 자연스러운 AOT 네이티브 컴파일
  • 자바처럼 VM에서 구동되어 런타임 최적화 방식
  • 스프링보다 메모리와 cpu 점유율이 현저히 낫다는 사실
  • 심지어 자바보다 최대 성능까지 더 높은 사실까지 알고있다.
  • 이 블로그 도메인도 희준닷넷
  • 종종 ChatGpt에게도 C#은 자바랑 비교해서 어떤 느낌일까 묻고
  • 애들레이드 닷넷 커뮤니티도 꼬박꼬박 참여했다 (스프링부트는 애들레이드에 없다).
  • 과거 마소가 오픈소스 진영에 독을 풀고 자바 킬러로 기획된 그의 지저분한? 탄생 비화까지 알고있다.

상황이 바뀌었다.

자바 개발자 정체성을 가졌지만 이제 대 LLM의 시대.
특정 언어 또는 프레임 워크 경험이 없는게 무슨 제약이라 말인가? 개인프로젝트는 멋지면 하는거다!
지난 주말, 내 조수, 안티그레비티와 함께, 기존 SpringBoot Anotherhome 백엔드 어플리케이션 마이그레이션을 시작했다.

자바스크립트야?

blog placeholder ?? 로 null 체크 에러를 던진다고? blog placeholder await/async 가 있다고?
근데 둘다 C#이 먼저 였다고.. 뭐야 너.. 무서운 언어였구나.

가장 좋은점

blog placeholder 역시 LINQ다. 스프링부트처럼 리포지토리에서 이거 레이지로딩 된 건지, Join Fetch된건지 굳이 클릭해서 볼게 아니라,
그냥 서비스 레이어에서 바로 읽으면 된다. 네이티브 컴파일 할맛나네.

Allman 줄바꿈은 음..

blog placeholder 자바랑 왔다갔다 하면서 쓸거라 이건 좀 어색하다. 안그래도 indentation같은 빈칸 안좋아 하는데 아쉬(웠)다.
근데 오늘 삼일차에 보니까 괜찮아 보인다?

기대된다.

이전 포스트 언어 피커에서 언급했듯이 나는 최적화 좋아한다 (체감의 영역은 두번째 치더라도). 내 스프링부트는 Graalvm 컴파일 하는데 깃허브에서 45분이 걸린다. blog placeholder 심지어 컴파일 환경설정도 잘 맞춰줘야함. 기본 메모리 할당 (8Gb 좀 안됨) 메모리안에 가까스롭게 safe하게 들어와서 컴파일 성공하고 병렬코어 수도 맞춰줘야했다.
최악은 힘들게 컴파일에 성공해도 런타임에서 에러 왕왕 던짐(리플렉션).
한마디로 돌려볼때까진 에러날지 모른다. 반면 닷넷은 AOT Native 지원이 이 모든 부분에서 자연스럽게 이뤄진다고하니, 이보다 더 신날 수 있을까? 히히

안티그래비티에 박수

일단 자바에서 모든 기능을 하루 이틀만에 거의 90퍼센트 성공적으로 배껴오는데 성공했다. (Pro 구독중)
blog placeholder 일단 로그인은 되고 간단 CRUD 작동은 문제 없다.
물론 자잘하게 에러 엄청 던짐.

blog placeholder 그래서 쿼타 다 썼다.

섹시하다. 닷넷.

2019년부터 비약적으로 좋아져왔다던데 앞으로 얼마나 더 좋은게 많을지 마이그레이션 및 배포까지 해보고 돌아오겠다.
듣기론 VM없이 Funtion으로 배포할수도 있다고.. 좋네.. 이 돈아껴서 DB에 쓰겠다.

그럼에도

blog placeholder blog placeholder

아직 마소에 색안경을 완전히 벗지 않았다.
왜 깃헙에서 자바는 똥색이고 C#은 이쁜 초록색을 배정한거냐?
(사실 자바는 커피색이라고 한다 ㅋ)