본문 바로가기
SoftWare/ASP.net Core Blazor

ASP.NET Blazor 장점 및 비교

by 학수씨 2020. 8. 22.

 

요즘 한참 핫한 ASP.net Core Blazor 를 사용해봤다..
10여년 전쯤인가.. 웹을 하나도 모를당시 처음 접했던건 ASP.NET 을 처음 접했었다.

일단 당시 10년전에는 국내에 거의 절반은 PHP 기반이였고 나머지가 JSP 기타 등등 이 차지하고있을 시절이였던거 같다.

당시 나는 웹에대해 전무하여 프로젝트급이 정말 단순한 WebPage 정도를 DB와 연결하여 표시하는 수준이 필요해서
익숙한 C# 으로 Web을 개발할수 있는 ASP.NET 을 선택하여 개발을 진행해왔다..

그러다가.. ASP.NET 이 Controller 와 Viewer 간의 통신 자체가 너무 어렵고.. 복잡하고 완벽하게 MVC 패턴의 개발이기도 하고
일단 국내에서는 거의 사용하지 않는 툴이였다.. 그러면서 다른 개발툴과 언어로 슬슬 넘거가기 시작했던거 같다.

 

 

점점더 웹쪽의 시장이 커지다 보니 PHP도 하고... JSP 도 해보고 Spring 등등 여러가지 개발툴은 다 만져보다 결국에는
직접 Framework 을 만들어 JQuery + XML + AJAX 를 이용하여 페이지 내에서 비동기처리로 AJAX 호출하여
DB Data 화면에 표시.. 등록, 삭제, 수정 등등을 구현하여 3년넘게 이와 같은 방식으로 개발을 진행해왔다.


일단 AJAX 비동기를 사용함으로써 페이지 전환이 없고.. 코드의 줄은 엄청나게 길지만 직접 Framework 제작으로

코드 자동완성 및 코드 Library 시키면서 정말 편리하게 만들어서 개발을 진행했었다.

 

개발의 편의성와 사용자의 편의성 그리고 속도 등등 모두 만족하는 결과물이 나와서 좀더 패키지화 시켜서

유료로 팔까도 생각했었지만... 귀차니즘으로 인해 그냥 나만 사용하는걸로.... 

추후 판매도 진행해볼까... 아직은 모르겠음.

 

그럼에도 직점 만든 JQuery Ajax Framework 의 단점이 있었으니.. 일단 개발의 편의성은 좋은데
손이 많이가는 편이였다.
코드 자동완성으로 키보드에 손이 많이가지는 않지만.. 마우스에 손이 많이감..ㅠ

기본적으로 조회, 수정, 삭제, 추가 기능을 한페이지에서 만들때.. 순서를 설명해보자면.

1. HTML 으로 Element 를 작성해주고 각각 ID 와 Class 부여
2. XML 방식의 Model 제작 (조회 1가지)
3. XML 방식의 Controller 제작 (기능수만큼... 수정 삭제 추가 3가지)
4. Javascript Ajax Coding

식으로 페이지 1개를 만들기위해 Viewer 1개파일, Model 1개파일, Controller 3개파일... 총 5개의 파일과 
Javascript 파일.. 토탈 6개의 파일이 만들어져야 One Page 를 제작할수가 있었다.

물론 조회만 하는 페이지면 3개의 파일만 작성하면 되긴 하지만..
만들어야 하는 파일 개수가 많아서 손이 많이가는게 단점이라면 단점으로 꼽을수 있다.

 

 

일단 하도 요즘 Blazor 가 핫해서.. 한번 써봤다....

대략 만져본 시간은 3시간 가량??

 

일단 내가 원했던 기능들이 다 들어가있어서 깜짝 놀랬다..

일단 html 파일 안에서 C#으로 코딩을하여 Javascript 따위는 1도 안쓰고 모든 기능을 다 만들수있다...

 

좀더 자세하게 말해보자면.. HTML 파일에서 C#코딩으로 DB의 데이터를 가져와서 바로 화면에 뿌릴수가있다..

그것도 실시간 랜더링이 가능하여 페이지 전환 없이~ 가능하다는점.

 

Application 개발과 거의 흡사할정도로 HTML 으로 화면을 디자인하고...

ID와 Class 부여 따위는 개나 줘버리고 그냥 Event 방식으로 실시간 랜더링이 가능하다는점.... 놀라웠다.

 

나처럼 혼자 뷰어.. 컨트롤러, 모델, 서비스를 개발하는 입장에서는 정말 신세계다..

파일 1개에서 모든걸 가능하다고 한다면 일단 페이지개발이 너무 쉽고 빠르게 개발이 가능하다는점,,.

Javscript 따윈 사용하지 않으니 Browser 에서 Debuging 을 하지 않아도 되서 너무 편리하다는점.

 

이번에 수주받은 비지니스 사이트 프로젝트가 하나 있는데...

Blazor 로 진행을 진짜 고민을 해봐야할듯 하다..

 

추후 유지보수도 편할거 같고... 고도화 작업때도 마찬가지고... 웹디한테 화면 다 만들어놓으라고 하고

C#으로 구현만 하면 되고... 정말 너무 편할것 같다..

 

 

정리해보자면..

1. HTML 파일에서 페이지 전환없이 DB접근 가능

2. 실시간 렌더링으로 "조회"버튼 눌렀을때 바로 Data를 화면에 표시

3. Javascript 를 사용하지 않아 디버깅 시간 최소화

4. C#의 모든 Library를 가져다가 사용가능

5. 너무 강력한 무료 Component 들이 있다는점   https://blazor.radzen.com/

 

일단 이정도로 보인다.

 

단점으로는

1. 익숙하지 않아 고생좀 해야될거 같은 느낌.

2. DB는 암거나 써도 되긴 하지만.. WAS를 IIS를 써야하는점..

3. IIS를 쓰니 무조건 OS 는 Windows 여야 하는점.

 

말고는 개발적으로 단점을 보기에는 전혀 없어보인다.

 

일단 써보면서 글을 하나하나씩 올려볼까 한다

 

 

 

 

댓글