S 사에서 1년 근무한 제가
팀 내 Blazor WASM, .NET의 사용을 권장하기 위해 제작한
흥미 위주의 발표자료 입니다.
목차로
저 소개를 해드리고
Blazor, Blazor Server을 왜 쓰는지
그리고 Blazor WebAssembly 사용법을 알려드리고
마지막으로 제가 어떻게 학습을 해 왔는지 발표하도록 하겠습니다.
저에 대해서 간단히 설명드리자면
테니스 치는거 좋아하고요
모임하는거 좋아하고
못 해본 경험하기 좋아하고
식물기르기 좋아하고
책 읽는 거 좋아합니다. 많은 책 읽어서 나중에 부자 되려고요
이력은 간단하게 S 사 만 다녔습니다. 헿
입사전에는 다른 개발자들과 비슷하게 컴퓨터공학과 공부 열심히 하고
남는 시간에 42서울이라는 커뮤니티에서 팀을 이루어 커뮤니티 페이지를 React로 개발해 왔고요. 참고로 페이지 디자인도 제가 다 했습니다.
졸업할때 쯤에는 클라우드와 AI를 섞은 위기 상황 예측 및 회피를 위한 방법론을 고안한 논문 쓰다가 중간에 회사에 들어왔습니다.
그래도 명함 좀 내 놓을 수 있는 기술이라고 하면
웹으로는 node.js 계열 많이 파 왔고요
이후에 클라우드 엔지니어로 넘어가 교육 받으면 쿠버네티스와 CICD 중점적으로 공부해 왔습니다.
자 먼저 C# 계열 프레임워크의 업계에서의 위치를 설명드릴게요.
이건 2023년 스택오버플로우에서 10만명 가까운 사용자가 설문한 자료들 인데요.
보시면 왼쪽 웹 프레임워크에서는 34.24%의 지지율
웹을 제외한 프레임워크에서는 42.32%의 지지율을 보입니다.
이는 각각 JAVA 보다 24.89% 그리고 31.22% 많은 지지율을 보여줍니다.
그런데 우리는 바로 위쪽에 저 JS 라고 붙은 것들이 궁금할 것입니다.
웹 프레임워크의 대부분을 JS 계열이 잡고 있습니다.
보통 웹 개발의 알파이자 오메가 Node.js와 CSR의 대장 React.js 계열이 대표적인데요.
C# 계열에서는 이들과의 전투보다는 서로 윈윈할 수 있는 전략을 취했습니다.
바로 JS 를 C# 계열에서 돌릴 수 있게 임베딩 처리한 것입니다.
그래서 Visual Studio에 들어가보시면 Angular 나 React 프로젝트도 .NET 기반으로 생성할 수 있고 실재 내부에서도 Node.js 기반으로 프로그램이 돌아가는 것을 볼 수 있습니다.
자 여기에서 제가 왜 JS 개발자였다가 C# 개발자로 돌아섰는지를 설명하겠습니다.
이를 위해 간단한 영상을 보면 이해할 수 있는데요
짧은 영상이지만 현재 JS 생태계의 문제점을 보여줍니다.
과도하게 커진 JS 생태계는 관리가 되지 않으며 JS의 고질적인 멀티스레드 제한, 반동기 처리 문제와 보안 문제는 아직까지도 해결될 기미가 보이지 않습니다.
JS의 타입 문제를 해결하고자 나온 타입스크립트마저 요즘에는 업계에서 뺄려고 하는 추세이니 말 다했습니다.
결국 JS 개발자였던 저는 가장 근본이라 불리는 인프라 즉 클라우드로 내려가고 마침내 S사에 들어와 스승님을 만나 Blazor 개발자로 탄생한 것이였습니다.
헐 코딩 애플님이세요 !!! 세상에 js 대가인 분이 블레이저를 하신다니 사건 이네요
아뇨 ㅠ 그분 자료 몇 개 참고용으로 사용중이에요… ㅠ
그래도 그 분 만큼 잘 설명할 수 있는 개발자가 되어볼게욥!
제가 잘못 이해했군요 blazor의 필요성은 개인적으로 type 기반
이 가장 큰 장점이고 해야되는 이유라고 생각합니다.
재미있게 잘 봤습니다.
저도 블레이저로 전향(?)한 이후, js 쪽 자료와 사용자들의 하소연을 심심치 않게 보게 되었는데, 발표 자료에 많이 반영된 것 같습니다.
“이게 왜 안되지?”
“이게 왜 되지?”
(지금도 좁지만요 ㅎㅎㅎ…) 식견이 더 좁은 상태일 때에는
TypeScript가 blazor가 탄생 하기 전 중간체의 느낌이라고 생각 했었드랩죠.
이유를 꼽자면, 타입 선언 등이 가능하다는 공통점과, 컴파일 등을 거치고 나면 양쪽 다 js같은 무언가가 튀어나와서 이것저것 제어하니까요.
WASM같은 존재에 대한 감을 제대로 잡지 못했던 ㅎㅎ… 물론 지금도 ㅠㅠ
Blazor 스승님 대환영합니다
제가 경지가 오르기 전까지 안 놓아드릴겁니다^^
오 ?ㅁ?
근데 TypeScript 를 빼면 대체제가 어떤게 되는 지 궁금하네욤ㅇㅅㅇ!
아마도 이것을 말씀하시는 듯한데, 저는 오히려 해당 영상으로 분위기가 더욱 형성되지 않았나 싶습니다…가속화되었다고 해야할까요?
대중이라는 것은 저도 그렇고 매체에 약하기 때문인데…
전 이런거를 볼때마다 M$를 적대하는 세력이 있는게 아닌지 좀 궁금합니다.
M$ 의 기술들이 한국에서는 뭔가 진짜 잘 안되는거 같아서 ㅋㅋㅋ…
업계에서 빼려는 추세라기 보다는… 라이브러리를 만드는 입장에서는 빼려는 사람이 많다라고 생각할 수도 있다고 생각합니다. 라이브러리를 만들 때 low-level API도 제공해야 하므로 결국 full type-safe한 라이브러리를 만들어야 하는데 그러면 시간이 매우매우매우 많이 걸립니다. 그렇기에 기능을 빨리 만들고 싶은 라이브러리 개발자들은 TypeScript이 기반으로 되는 라이브러리를 만들기 꺼려한다고 생각합니다(개인 생각. 좋은 예시가 되는 글)
서비스를 만드는 입장에서는 TypeScript를 사용하는게 더할나위 없이 좋죠. 라이브러리 자동완성 잘 되지… 정적 테스트 잘 만들어주지… 최근에는 esbuild / swc로 컴파일 속도도 빠르지… 안 쓸 이유는 없다고 봅니다.
제가 닷넷데브를 좋아하는 이유가 이렇게 활발하게 대화해주시는 분들이 있어서 그렇습니다.
말씀처럼 타입스크립트를 뺀다는 표현보다는 타입스크립트 프레임워크 개발을 덜 할려고 하는 편입니다.
이 부분은 제가 자료 정리나 발표할때 빼야겠네요!!
오거나이저로서 이럴 때 보람을 느낍니다.
좋은 말씀 감사드립니다…!
얼마전에 알고리즘이 인도하는 유튜브 영상에서
TS 안 쓸거임 하는 자극적인(?) 제목을 지나가다 본 것 같은데,
여기 많은 예시들을 들어주셔서 수긍하게 되었습니다. ㅎㅎㅎ
연륜이 느껴집니다.
M$
(ㅎㅎ)