차례[숨다][보여 주다]
- 1. 블레이저란?
- 2. Blazor 프레임워크의 구성 요소를 설명합니까?
- 3. Blazor를 사용해야 하는 이유는 무엇입니까?
- 4. Blazor는 어떤 용도로 사용됩니까?
- 5. Blazor WebAssembly는 무엇을 의미합니까?
- 6. Blazor WebAssembly는 어떤 이점과 단점을 제공합니까?
- 7. 블레이저에서 연출의 역할은?
- 8. Blazor 구성 요소에서 사용하는 존재 주기 접근 방식은 무엇입니까?
- 9. "Blazor 서버"란 무엇을 의미합니까?
- 10. Blazor 서버가 제공하는 장점과 단점은 무엇입니까?
- 11. 어떤 상황에서 Blazor 서버를 사용하는 것이 현명할까요?
- 12. Blazor는 어떤 단계를 유지합니까?
- 13. Blazor WebAssembly와 Blazor 서버의 차이점은 무엇입니까?
- 14. 언제 Blazer 서버 대신 Blazer WebAssembly를 사용해야 합니까?
- 15. Blazor에서 라우팅은 무엇을 의미합니까?
- 16. Blazor 서버는 권한 부여를 어떻게 처리합니까?
- 17. CLI 명령을 사용하여 Blazor 서버 앱을 만들고 운영하려면 어떻게 해야 합니까?
- 18. CLI 명령을 사용하여 Blazor WebAssembly 앱을 만들고 실행하려면 어떻게 해야 합니까?
- 19. Blazor의 데이터 바인딩은 무엇을 의미합니까?
- 20. Blazor에서 양방향 데이터 바인딩은 어떻게 수행됩니까?
- 21. Blazor WebAssembly가 SQL Server 또는 다른 데이터베이스와 통신할 수 있습니까?
- 결론
웹사이트와 모바일 애플리케이션의 개발은 이제 매혹적인 시대에 접어들었습니다. 대부분의 개발자는 플랫폼의 자유와 기타 획기적인 기능으로 인해 원래 JavaScript를 사용하여 웹 앱용 코드를 작성했습니다.
오늘날 가장 인기 있고 선호되는 프로그래밍 언어는 JavaScript로 간주됩니다.
웹 개발 분야가 빠른 속도로 성장함에 따라 소프트웨어 개발자는 훌륭한 온라인 애플리케이션과 모바일 애플리케이션을 만들기 위해 JavaScript의 대안을 찾고 있습니다.
Blazor 웹 어셈블리는 추가 구성 요소 및 모듈에 대한 요구 사항 없이 프로그램에서 .NET을 실행할 수 있도록 하는 개발입니다.
Blazor 프레임워크에서 면접을 완료하는 것은 어렵지만 하기로 결정했다면 완벽한 위치에 도달한 것입니다.
Blazor 프레임워크에서 이 게시물의 상위 인터뷰 질문을 사용하여 이상적인 직업을 얻을 수 있습니다. 지금 시작합니다!
1. 블레이저란?
현대적이고 확장 가능한 크로스 플랫폼 구축 웹 응용 프로그램 C# 및 .NET을 사용하는 것은 무료 오픈 소스 Blazor 웹 프레임워크를 통해 가능합니다.
원래 Microsoft 및 오픈 소스 커뮤니티의 프로젝트인 Blazor가 개발한 C# 언어를 사용하여 웹 클라이언트 응용 프로그램을 만들고자 하는 C# 및 .NET 개발자를 대상으로 했습니다.
현대적이고 신속하며 빠르게 변화하는 것이 Blazor를 가장 잘 설명합니다. 클라이언트 측 및 서버 측 코딩은 모두 Blazor에서 지원됩니다. .NET은 서버 측 및 클라이언트 측 앱 논리를 모두 작성하는 데 사용됩니다.
Blazor는 사용자 인터페이스 코드가 .NET 및 C#으로 작성되었음에도 불구하고 모바일 브라우저를 포함한 광범위한 브라우저 호환성을 위해 HTML 및 CSS로 제공됩니다.
2. Blazor 프레임워크의 구성 요소를 설명합니까?
Blazor에서 사용하는 Razor 템플릿 엔진은 HTML을 만들어 웹 브라우저로 보냅니다. HTML 및 C# 구문을 함께 Razor 템플릿에서 사용할 수 있으며, 이 템플릿은 이후에 Razor 엔진에서 컴파일하여 HTML을 생성합니다.
Blazor 구성 요소의 논리에는 두 가지 옵션이 있습니다. 논리를 분할하고 구성 요소 함수를 별도의 C# 클래스 파일에 작성할 수 있습니다.
HTML과 함께 C# 함수를 작성하기 위해 @code 블록을 사용합니다. ". razor" 확장자는 Blazor에서 구성 요소를 식별하는 데 사용됩니다.
3. Blazor를 사용해야 하는 이유는 무엇입니까?
JavaScript에 익숙하지 않은 C# 및 .NET에 대한 배경 지식이 있는 개발자는 Blazor의 대상 고객입니다. Blazor에는 다음과 같은 이점이 있습니다.
- 코드를 작성할 때 JavaScript 대신 C#을 사용하십시오.
- 클라이언트와 서버 간에 앱 로직을 공유합니다.
- .NET 환경에 이미 존재하는 .NET 라이브러리를 활용합니다.
- .NET의 성능, 신뢰성 및 보안을 활용하십시오.
- 안정적이고 기능이 풍부하며 사용자 친화적인 언어, 프레임워크 및 도구 모음을 사용하여 애플리케이션을 빌드하십시오.
- Windows, Linux 및 macOS에서 Visual Studio를 활용하여 생산성을 높이십시오.
4. Blazor는 어떤 용도로 사용됩니까?
웹 기반 앱 제작에는 Blazor가 활용됩니다. 이것은 웹사이트, 모바일 애플리케이션 및 JavaScript로 만들 수 있는 모든 것에 적용될 수 있습니다.
HTML 및 구성 요소 코드 렌더링, HTTP를 통한 데이터 가져오기, 클라이언트 측 라우팅을 포함하여 프레임워크의 도움으로 다양한 일반적인 개발 활동을 수행할 수 있습니다.
브라우저에서 사용할 때 브라우저의 JavaScript API에 완전히 액세스할 수 있습니다. 따라서 Blazor 프로그램은 JavaScript 함수의 .NET 메서드와 JavaScript 함수의 .NET 메서드를 모두 사용할 수 있습니다.
개발자는 프레임워크에 특정 API 또는 구성 요소가 없거나 JavaScript 에코시스템과 함께 작업하려는 경우 JavaScript 상호 운용성을 활용합니다.
5. Blazor WebAssembly는 무엇을 의미합니까?
Microsoft는 Blazor WebAssembly라는 새로운 UI 기술을 개발했습니다. 구성 요소 기반 디자인을 활용하는 Blazor는 개발자가 C# 및 .NET을 사용하여 단일 페이지 응용 프로그램(SPA)을 구성할 수 있도록 합니다.
A.NET 런타임은 Blazor WebAssembly라는 Blazor의 클라이언트 측 브라우저 내 구현에 포함되어 있습니다. Blazor WebAssembly의 도입으로 이제 C#을 사용하여 클라이언트 측 SPA를 개발할 수 있습니다.
이전에는 서버 측 솔루션인 Blazor Server 및 ASP.NET Core MVC를 사용하여 웹 사이트를 구축할 수 있었습니다.
Blazor WebAssembly는 기술 범위를 넓히거나, 새로운 Microsoft 기술을 사용하거나, 일반적으로 WebAssembly에 관심이 있는 경우에 적합합니다.
6. Blazor WebAssembly는 어떤 이점과 단점을 제공합니까?
혜택 :
- 지연이 적은 네트워크
- 오프라인 지원.
- 클라이언트 측 상호 작용에는 JavaScript를 이해할 필요가 없습니다.
단점 :
- 큰 페이지 다운로드 크기.
- Limited.Net 어셈블리 지원.
- 클라이언트 측 디버깅은 그다지 효과적이지 않습니다.
- 그다지 안전하지 않습니다. 브라우저는 DLL을 다운로드합니다.
- 브라우저에 대한 의존성; 인터넷 익스플로러는 지원하지 않습니다.
7. 블레이저에서 연출의 역할은?
경로는 URL 모델이고 라우팅은 구매를 필터링하고 각 판매를 처리하는 방법을 결정하는 작업을 포함하는 모델 계획입니다. ASP.net Core Endpoint Routing은 Blazor 전문 응용 프로그램에서 사용됩니다.
Blazor 부분에 대한 관계로의 이동은 끝점 안내를 위해 MapBlazorHub 확장 기술을 사용하여 ASP.net Core에서 인식되기 시작했습니다.
클라이언트 쪽 라우팅은 Blazor 클라이언트 애플리케이션에서 제공합니다. 스위치는 앱에서 설정됩니다. Blazor 클라이언트 애플리케이션의 cshtml 레코드입니다.
대체 과정은 Blazor 서버 애플리케이션 라이선스에 따라 결정됩니다. 적은 수요로 기획을 연출하는데 효과적입니다.
대체 전략은 다른 전략이 지원되지 않을 때 사용할 수 있습니다. _Host—cshtml 부분은 대부분 대체 메커니즘을 설명합니다.
8. Blazor 구성 요소에서 사용하는 존재 주기 접근 방식은 무엇입니까?
현재의 Blazor 조각과 비동시 전술의 예에서 Blazor 애플리케이션은 다음과 같은 지시 작업에 다양한 기술을 부여합니다.
- 초기화됨
- OnInitializedAsync
- 매개변수 집합
- 매개변수에
- 비동기화 설정
- OnAfterRender
- OnAfterRenderAsync
9. "Blazor 서버"란 무엇을 의미합니까?
클라이언트 브라우저에 대한 논리를 표현하기 위해 Microsoft Blazor 서버는 Blazor 구성 요소(Razor 구성 요소 형식)를 사용하여 응용 프로그램 수준을 분리합니다.
ASP.Net Core 프레임워크는 Blazor의 기반이 되었습니다. 서버의 ASP.NET Core 애플리케이션에서 Razor 구성 요소를 호스팅하는 데 도움을 제공합니다.
ASP.Net 서버의 클라이언트 측에서 DOM에 연결하기 위해 Blazor는 SignalR을 사용합니다.
10. Blazor 서버가 제공하는 장점과 단점은 무엇입니까?
혜택 :
- 모든 소프트웨어와 함께 사용하십시오.
- 놀라운 작은 페이지 다운로드 공간이 사용됩니다.
- JavaScript에는 전제 조건이 없습니다.
- 코드는 어떤 의미에서 훨씬 더 안전한 서버에 있을 것입니다.
- 전문가의 집중적인 인터넷 집중을 고용하는 동안 온라인 소셜 활동을 완벽하게 지원합니다.
단점 :
- SignalR 이벤트를 모니터링하려면 더 많은 리소스가 필요합니다.
- 조정된 작업자 활동에 대한 높은 부진 네트워크
- 각 시나리오에는 작업 전문가가 필요합니다. 연결이 끊긴 원조가 없어야 합니다.
11. 어떤 상황에서 Blazor 서버를 사용하는 것이 현명할까요?
.NET 앱의 경우 Blazor를 사용하여 풍부하고 사용자 친화적인 인터페이스를 만들 수 있습니다. Blazor 서버를 사용하는 데에는 여러 가지 근거가 있습니다.
- 클라이언트에서 직원에게 작업을 양도해야 할 때.
- 현재 적용 근거는 설득력 있는 이유로 변경되어서는 안 됩니다.
- 제어가 낮은 장치를 사용해야 하는 응용 프로그램은 이를 통해 큰 이점을 얻을 수 있습니다.
- Blazor 서버 앱에 대해 설정된 연결은 약간의 다운로드만 필요합니다.
12. Blazor는 어떤 단계를 유지합니까?
Blazor의 애플리케이션은 Windows, Linux, macOS, 클라우드 및 웹을 포함한 플랫폼에서 표시 및 사용할 수 있습니다. 클라이언트 측과 작업자 측 애플리케이션은 모두 Blazor에서 유지 관리합니다.
ABlazor의 작업자 측 애플리케이션은 ASP.NET Core로 생성됩니다. WebAssembly는 웹 프로그램에서 고객 측 Blazor 앱을 실행하는 데 사용됩니다.
Blazor는 온라인 앱, 클라우드 인접 응용 프로그램, 유연한 로컬 응용 프로그램 및 Windows 클라이언트 응용 프로그램을 빌드하는 데 사용됩니다.
13. Blazor WebAssembly와 Blazor 서버의 차이점은 무엇입니까?
Blazor는 Blazor 서버와 Blazor WebAssembly를 두 가지 응용 프로그램 개발 방법으로 제공합니다. Blazor 서버 애플리케이션은 서버에서 Blazor 구성 요소를 호스팅하는 동안 라이브 SignalR 연결을 통해 UI 상호 작용을 관리합니다.
ASP.NET Core는 Razor 구성 요소를 렌더링하고 서버에서 C# 코드를 컴파일한 다음 SignalR을 사용하여 생성된 UI 요소를 브라우저로 다시 보냅니다.
Blazor WebAssembly 앱은 브라우저에서 클라이언트 측 구성 요소를 호스팅하는 Blazor 서버와 달리 .NET 전용 WebAssembly 런타임을 사용합니다.
.NET은 런타임에 의해 브라우저 구성 요소로 변환되어야 합니다. 클라이언트 측 브라우저는 모든 구성 요소와 해당 렌더링 프로세스를 관리합니다.
14. 언제 Blazer 서버 대신 Blazer WebAssembly를 사용해야 합니까?
서버 없이 브라우저에서 실행되는 클라이언트 쪽 웹 응용 프로그램을 만들려는 C# 및 .NET 개발자를 위해 Blazor WebAssembly는 대안을 제공합니다.
Blazor WebAssembly 프로그램은 Blazor 서버와 달리 서버가 필요하지 않으며 모든 코드가 브라우저에서 수행됩니다. 다음은 Blazor 서버보다 Blazor WebAssembly가 선호될 수 있는 몇 가지 시나리오입니다.
- 정적 웹 페이지를 빠르게 만들고 싶습니다.
- 서버 측 및 ASP.NET 프로그래밍 지식이 부족합니다.
- 서버에서 코드를 관리하고 배포하는 것은 원하는 것이 아닙니다.
- CPU, 메모리, 스토리지는 물론 클라이언트 브라우저도 활용하려고 합니다.
- 완전히 오프라인으로 작동할 수 있는 웹 응용 프로그램을 만들고 싶습니다.
- 실시간 답장과 지속적으로 업데이트되는 UI가 원하는 디자인입니다.
- 실시간 경고, 로컬 브라우저 저장소, 메시지 및 서버 작업자를 추가하려면 PWA(프로그레시브 웹 응용 프로그램)와 같은 최신 기술을 사용하려고 합니다.
15. Blazor에서 라우팅은 무엇을 의미합니까?
경로는 URL의 패턴이고 라우팅은 요청을 추적하고 각각에 대해 수행할 작업을 결정하는 패턴 일치 프로세스입니다. ASP.net Core Endpoint Routing은 Blazor 서버 애플리케이션에서 사용됩니다.
Blazor 구성 요소에 대한 수신 연결은 이제 끝점 라우팅의 MapBlazorHub 확장 방법을 사용하여 ASP.net Core에서 수락됩니다.
클라이언트 쪽 라우팅은 Blazor 클라이언트 애플리케이션에서 제공됩니다. Blazor 클라이언트 앱의 App.cshtml 파일에는 라우터 구성 정보가 포함되어 있습니다.
Blazor 클라이언트 앱
블레이저 서버 앱
16. Blazor 서버는 권한 부여를 어떻게 처리합니까?
권한 부여 프로세스는 사용자가 프로그램의 리소스에 액세스할 수 있는 권한이 있는지 확인합니다.
즉, 역할, 클레임 및 규칙에 따라 리소스에 대한 사용자 액세스를 제한할 수 있습니다. 특성, 기본 제공 구성 요소 및 권한 부여 규칙의 정의를 활용하여 Blazor의 ASP.NET Core 권한 부여 시스템을 구현할 수 있습니다.
Blazor의 기본 제공 AuthorizeView 구성 요소는 사용자의 인증 상태에 따라 페이지 콘텐츠를 표시할 수 있습니다. 역할 기반 권한 부여와 함께 이 구성 요소는 정책 기반 권한 부여도 제공합니다.
이 구성 요소는 사용자의 역할, 정책 또는 인증 상태에 따라 페이지 콘텐츠를 표시하려는 경우 매우 유용합니다.
AuthentizationStateProvider 덕분에 사용자의 인증 상태를 알 수 있습니다.
17. CLI 명령을 사용하여 Blazor 서버 앱을 만들고 운영하려면 어떻게 해야 합니까?
asp.net core CLI를 사용하여 Blazor 서버 앱을 만들려면 명령줄을 열고 다음 명령을 입력합니다.
18. CLI 명령을 사용하여 Blazor WebAssembly 앱을 만들고 실행하려면 어떻게 해야 합니까?
asp.net 코어 CLI를 활용하여 명령줄을 열고 다음 명령을 입력하여 Blazor WebAssembly 프로그램을 구성할 수 있습니다.
19. Blazor의 데이터 바인딩은 무엇을 의미합니까?
최고의 웹 개발 프레임워크가 되기 위한 이 싸움에서 Blazor는 다른 현대 웹 개발 프레임워크에 힘든 싸움을 하고 있습니다.
바인딩은 텍스트 상자, 선택 또는 양식 구성 요소와 같은 데이터 또는 제어 개체와 상호 작용하는 데 핵심입니다.
단방향, 양방향 데이터 바인딩 및 강력한 이벤트 바인딩 동작을 통해 Blazor는 바인딩 사용에 대한 최상의 접근 방식을 제공합니다.
20. Blazor에서 양방향 데이터 바인딩은 어떻게 수행됩니까?
이 경우 정보는 소스에서 목적지로, 목적지에서 소스로 동시에 흐릅니다.
예를 들어 구성 요소 클래스의 데이터 변수를 소스로 사용하고 일부 메시지를 표시하거나 편집하기 위해 HTML UI에서 이 변수의 값에 액세스해야 한다고 가정해 보겠습니다.
Blazor 구성 요소의 모든 데이터 변수 값을 읽기 위해 Blazor의 razor에서 @bind가 있습니다.
사용자가 데이터를 편집하고 주의를 다른 요소로 옮기면 @bind는 ref에서 받은 값을 유지하고 원래 소스 요소를 업데이트합니다.
21. Blazor WebAssembly가 SQL Server 또는 다른 데이터베이스와 통신할 수 있습니까?
Blazor는 클라이언트에서 실행되는 .NET 코드입니다. IL 코드는 클라이언트 측에 다운로드되어 리버스 엔지니어링이 쉬워집니다. 따라서 Blazor WASM 코드에 암호와 같은 비밀을 포함하지 않아야 합니다.
Blazor 애플리케이션은 앱에만 저장할 수 있는 사용자 이름-암호 조합을 사용하여 원격 데이터베이스에 연결해야 합니다. 그렇게 하지 마십시오. 엄청난 보안 위험이 있습니다.
원거리 데이터에 접근하기 위해서는 접근이 제한된 서비스만 이용해야 합니다. 예를 들어 REST와 같이 제공하려는 작업을 노출하는 서비스 API를 데이터베이스 주변에 생성합니다.
그런 다음 해당 API에서 보안 토큰을 사용하여 승인된 사용자만 API 및 데이터에 액세스할 수 있도록 할 수 있습니다.
결론
Blazor는 개발 프로세스를 가속화하고 페이지 성능을 약간 높일 수 있는 솔루션을 찾고 있다면 훌륭한 플랫폼입니다.
일반적인 마케터가 웹사이트를 만들거나 랜딩 페이지를 구축하는 데 필요한 것 이상이지만 개발자에게는 놀라운 소식입니다.
사용자 친화적인 플랫폼은 코딩 언어 제한을 제거하고 워크플로를 간소화하며 개발 팀이 작업을 더 쉽게 완료할 수 있도록 합니다.
마지막으로 원하는 직업을 찾는 데 도움이 되는 20개 이상의 Blazor 인터뷰 질문이 있습니다.
댓글을 남겨주세요.