Змест[Схаваць][Паказаць]
- 1. Што такое Blazor?
- 2. Апішыце кампаненты фреймворка Blazor?
- 3. Чаму я павінен выкарыстоўваць Blazor?
- 4. Якім мэтам служыць Blazor?
- 5. Што вы маеце на ўвазе пад Blazor WebAssembly?
- 6. Якія перавагі і недахопы прапануе Blazor WebAssembly?
- 7. Якая роля рэжысуры ў Blazor?
- 8. Якія падыходы да цыкла існавання выкарыстоўваюцца Blazor Components?
- 9. Што вы маеце на ўвазе пад «серверам Blazor»?
- 10. Якія перавагі і недахопы прапануе сервер Blazor?
- 11. Пры якіх абставінах было б разумна выкарыстоўваць Blazor Server?
- 12. Якія этапы падтрымлівае Blazor?
- 13. Што адрознівае Blazor WebAssembly ад Blazor Server?
- 14. Калі я павінен выкарыстоўваць Blazer WebAssembly замест Blazer Server?
- 15. Што азначае маршрутызацыя ў Blazor?
- 16. Як сервер Blazor апрацоўвае аўтарызацыю?
- 17. Як серверную праграму Blazor можна стварыць і кіраваць ёю з дапамогай каманд CLI?
- 18. Як можна стварыць і выканаць прыкладанне Blazor WebAssembly з дапамогай каманд CLI?
- 19. Што азначае прывязка даных Blazor?
- 20. Як у Blazor ажыццяўляецца двухбаковае прывязванне даных?
- 21. Ці можа Blazor WebAssembly мець зносіны з SQL Server або іншымі базамі дадзеных?
- заключэнне
Распрацоўка вэб-сайтаў і мабільных дадаткаў цяпер у займальную эпоху. Большасць распрацоўшчыкаў першапачаткова выкарыстоўвалі JavaScript для напісання кода для вэб-прыкладанняў з-за яго свабоды платформы і іншых наватарскіх функцый.
Самай папулярнай і пераважнай мовай праграмавання на сённяшні дзень лічыцца JavaScript.
Каб ствараць выдатныя інтэрнэт-праграмы і мабільныя прыкладанні, распрацоўшчыкі праграмнага забеспячэння шукаюць альтэрнатывы JavaScript, паколькі сектар вэб-распрацоўкі расце хуткімі тэмпамі.
Blazor Web Assembly - гэта распрацоўка, якая дазваляе запускаць .NET у праграме без неабходнасці дадатковых кампанентаў і модуляў.
Нягледзячы на тое, што прайсці сумоўе пры прыёме на працу ў рамках Blazor складана, калі вы вырашылі гэта зрабіць, вы прыйшлі ў ідэальнае месца.
Вы можаце знайсці сваю ідэальную працу, выкарыстоўваючы галоўнае пытанне для інтэрв'ю ў гэтай публікацыі з фреймворка Blazor. Пачынаючы зараз!
1. Што такое Blazor?
Стварэнне сучаснага, маштабаванага і кросплатформеннага Вэб-прыкладанні з C# і .NET стала магчымым з бясплатнай платформай Blazor Web з адкрытым зыходным кодам.
Першапачаткова ён прызначаўся для распрацоўшчыкаў C# і .NET, якія жадалі ствараць вэб-кліентскія прыкладанні з выкарыстаннем мовы C#, якая была распрацавана Blazor, праектам Microsoft і супольнасці з адкрытым зыходным кодам.
Сучасны, імклівы і хутка зменлівы лепш за ўсё апісвае Blazor. Blazor падтрымлівае кадаванне як на баку кліента, так і на баку сервера. .NET выкарыстоўваецца для напісання логікі прыкладання як на баку сервера, так і на баку кліента.
Blazor стварае інтэрфейс карыстальніка як HTML і CSS для шырокай сумяшчальнасці браўзераў, уключаючы мабільныя браўзеры, нягледзячы на тое, што код напісаны на .NET і C#.
2. Апішыце кампаненты фреймворка Blazor?
Механізм шаблонаў Razor, які выкарыстоўваецца Blazor, стварае HTML і адпраўляе яго ў вэб-браўзеры. Разам сінтаксіс HTML і C# можна выкарыстоўваць у шаблонах Razor, якія пасля кампілююцца механізмам Razor для стварэння HTML.
Што тычыцца логікі ў Blazor Components, у нас ёсць два варыянты: мы можам падзяліць логіку і запісаць функцыі кампанента ў асобны файл класа C#.
Для напісання функцый C# разам з HTML мы выкарыстоўваем блок @code. «. razor” выкарыстоўваецца Blazor для ідэнтыфікацыі кампанентаў.
3. Чаму я павінен выкарыстоўваць Blazor?
Мэтавай аўдыторыяй Blazor з'яўляюцца распрацоўшчыкі з досведам працы з C# і .NET, якія не валодаюць JavaScript. Blazor мае наступныя перавагі:
- Выкарыстоўвайце C# замест JavaScript пры напісанні кода.
- Падзяліцеся логікай праграмы паміж кліентам і серверам.
- Выкарыстоўвайце бібліятэкі .NET, якія ўжо існуюць у асяроддзі .NET.
- Выйгрыш ад прадукцыйнасці, надзейнасці і бяспекі .NET.
- Стварыце сваё прыкладанне, выкарыстоўваючы надзейную, шматфункцыянальную і зручную калекцыю моў, фрэймворкаў і інструментаў.
- Каб быць прадуктыўным, выкарыстоўвайце Visual Studio ў Windows, Linux і macOS.
4. Якім мэтам служыць Blazor?
Для стварэння вэб-прыкладанняў выкарыстоўваецца Blazor. Гэта можа прымяняцца да вэб-сайтаў, мабільных прыкладанняў і ўсяго іншага, што вы можаце стварыць з дапамогай JavaScript.
Вы можаце выконваць мноства тыповых дзеянняў па распрацоўцы з дапамогай фрэймворка, у тым ліку візуалізацыя HTML і кода кампанентаў, атрыманне даных праз HTTP і маршрутызацыя на баку кліента.
Ён мае поўны доступ да API JavaScript браўзера пры выкарыстанні на адным. Такім чынам, праграмы Blazor могуць выкарыстоўваць як метады .NET з функцый JavaScript, так і метады .NET з функцый JavaScript.
Распрацоўшчыкі выкарыстоўваюць узаемадзеянне JavaScript, калі ў фрэймворку адсутнічае пэўны API або кампанент або калі яны хочуць працаваць з экасістэмай JavaScript.
5. Што вы маеце на ўвазе пад Blazor WebAssembly?
Microsoft распрацавала новую тэхналогію карыстацкага інтэрфейсу пад назвай Blazor WebAssembly. Выкарыстоўваючы кампанентны дызайн, Blazor дазваляе распрацоўшчыкам ствараць аднастаронкавыя прыкладанні (SPA) з дапамогай C# і .NET.
Асяроддзе выканання A.NET уключана ў кліенцкую рэалізацыю Blazor у браўзеры пад назвай Blazor WebAssembly. З увядзеннем Blazor WebAssembly C# цяпер можна выкарыстоўваць для распрацоўкі SPA на баку кліента.
Раней Blazor Server і ASP.NET Core MVC, абодва з якіх з'яўляюцца сервернымі рашэннямі, маглі выкарыстоўвацца для стварэння вэб-сайтаў.
Blazor WebAssembly для вас, калі вы хочаце пашырыць свой набор навыкаў, выкарыстоўваць новыя тэхналогіі Microsoft або проста зацікаўлены ў WebAssembly ў цэлым.
6. Якія перавагі і недахопы прапануе Blazor WebAssembly?
перавагі:
- Сетка з меншай затрымкай
- аўтаномная дапамога.
- Разуменне JavaScript не патрабуецца для ўзаемадзеяння на баку кліента.
Недахопы:
- Вялікі памер загрузкі старонкі.
- Падтрымка зборак Limited.Net.
- Адладка на баку кліента не вельмі эфектыўная.
- Не вельмі бяспечна; браўзер загрузіць DLL.
- Залежнасць ад браўзера; Internet Explorer не падтрымліваецца.
7. Якая роля рэжысуры ў Blazor?
Маршруты - гэта мадэлі URL-адрасоў, а маршрутызацыя - гэта мадэль планавання, якая ўключае дзеянні для фільтрацыі пакупак і вызначэння таго, як апрацоўваць кожную продаж. ASP.net Core Endpoint Routing выкарыстоўваецца спецыялізаваным дадаткам Blazor.
Пераход у бок адносін для часткі Blazor пачынае распазнавацца ASP.net Core з выкарыстаннем тэхнікі пашырэння MapBlazorHub для навядзення канчатковай кропкі.
Маршрутызацыя на баку кліента забяспечваецца кліенцкім дадаткам Blazor. Пераключальнік наладжваецца ў дадатку. cshtml запіс кліенцкага прыкладання Blazor.
Запасны курс вызначаецца ліцэнзіяй прыкладання Blazor Server. Ён эфектыўны ў кіраванні планаваннем з невялікім попытам.
Запасная стратэгія можа выкарыстоўвацца, калі розныя стратэгіі не падтрымліваюцца. Частка _Host—cshtml у асноўным апісвае рэзервовы механізм.
8. Якія падыходы да цыкла існавання выкарыстоўваюцца Blazor Components?
У дадзеным прыкладзе выкананых частак Blazor, а таксама неконкурентных тактык, прыкладанне Blazor дае розныя навыкі для выканання наступных задач:
- Усталяваны
- OnInitializedAsync
- OnParametersSet
- OnParameters
- SetAsync
- OnAfterRender
- OnAfterRenderAsync
9. Што вы маеце на ўвазе пад «серверам Blazor»?
Каб выказаць логіку кліенцкага браўзера, Microsoft Blazor Server аддзяляе ўзроўні прыкладанняў з дапамогай кампанентаў Blazor (у выглядзе кампанентаў Razor).
Фреймворк ASP.Net Core паслужыў асновай для Blazor. Ён прапануе дапамогу ў размяшчэнні кампанентаў Razor у дадатку ASP.NET Core на серверы.
Для падлучэння да DOM на баку кліента на серверы ASP.Net Blazor выкарыстоўвае SignalR.
10. Якія перавагі і недахопы прапануе сервер Blazor?
перавагі:
- Выкарыстоўвайце з любым праграмным забеспячэннем.
- Выкарыстоўваецца неверагодна мала месца для загрузкі старонкі.
- У JavaScript няма перадумоў.
- Код будзе, у пэўным сэнсе, на серверы, што значна больш бяспечна.
- Поўная падтрымка сацыяльнай дзейнасці ў Інтэрнэце, калі вы выкарыстоўваеце кропкавую канцэнтрацыю ў Інтэрнэце ад прафесіянала.
Недахопы:
- Маніторынг падзей SignalR патрабуе больш рэсурсаў.
- Высокая сетка марудлівасці для скаардынаванай працоўнай дзейнасці
- Кожны сцэнар патрабуе працоўнага спецыяліста; не павінна быць адключанай дапамогі.
11. Пры якіх абставінах было б разумна выкарыстоўваць Blazor Server?
Для нашых прыкладанняў .NET Blazor дазваляе нам ствараць багатыя, зручныя інтэрфейсы. Існуе мноства апраўданняў для выкарыстання Blazor Server.
- Калі вы павінны перадаць працу ад кліента да супрацоўніка.
- Бягучае абгрунтаванне заяўкі не павінна быць зменена па якой-небудзь пераканаўчай прычыне.
- Прыкладанні, якія патрабуюць выкарыстання прылад з нізкім кантролем, могуць атрымаць ад гэтага вялікую карысць.
- Асацыяцыю, наладжаную для серверных праграм Blazor, трэба проста загрузіць.
12. Якія этапы падтрымлівае Blazor?
Праграмы ад Blazor можна паказваць і выкарыстоўваць на платформах, уключаючы Windows, Linux, macOS, воблака і Інтэрнэт. Праграмы на баку кліента і рабочага абслугоўваюцца Blazor.
AПраграмы для працоўнага боку Blazor ствараюцца з дапамогай ASP.NET Core. WebAssembly выкарыстоўваецца для запуску прыкладанняў Blazor на баку кліента ў вэб-праграмах.
Blazor выкарыстоўваецца для стварэння інтэрнэт-праграм, воблачных праграм, лакальных гнуткіх праграм і кліенцкіх праграм Windows.
13. Што адрознівае Blazor WebAssembly ад Blazor Server?
Blazor прапануе сервер Blazor і Blazor WebAssembly у якасці двух метадаў распрацоўкі прыкладанняў. Прыкладанні Blazor Server кіруюць узаемадзеяннем карыстацкага інтэрфейсу праз жывое злучэнне SignalR, адначасова размяшчаючы кампаненты Blazor на серверы.
ASP.NET Core адлюстроўвае кампаненты Razor, кампілюе код C# на серверы, а затым выкарыстоўвае SignalR для адпраўкі атрыманых элементаў карыстацкага інтэрфейсу назад у браўзер.
Праграмы Blazor WebAssembly выкарыстоўваюць асяроддзе выканання WebAssembly, якое з'яўляецца эксклюзіўным для .NET, у адрозненне ад Blazor Server, які размяшчае кампаненты на баку кліента ў браўзеры.
.NET павінен быць ператвораны ў кампаненты браўзера падчас выканання. Кліенцкі браўзер кіруе кожным кампанентам і працэсам яго візуалізацыі.
14. Калі я павінен выкарыстоўваць Blazer WebAssembly замест Blazer Server?
Для распрацоўшчыкаў C# і .NET, якія жадаюць ствараць вэб-праграмы на баку кліента, якія працуюць у браўзеры без сервера, Blazor WebAssembly прапануе альтэрнатыву.
Праграма Blazor WebAssembly не патрабуе сервера, у адрозненне ад Blazor Server, і ўвесь код выконваецца ў браўзеры. Вось некалькі сцэнарыяў, калі Blazor WebAssembly можа быць пераважней над Blazor Server.
- Вы хочаце хутка ствараць статычныя вэб-старонкі.
- Вам не хапае ведаў па праграмаванні на баку сервера і ASP.NET.
- На серверы кіраванне і распаўсюджванне кода - гэта не тое, чым вы хочаце займацца.
- Вы хочаце выкарыстоўваць працэсар, памяць і сховішча, а таксама кліенцкія браўзеры.
- Вы хочаце ствараць вэб-праграмы, якія могуць працаваць цалкам у аўтаномным рэжыме.
- Адказы ў рэжыме рэальнага часу і карыстацкі інтэрфейс, які пастаянна абнаўляецца, - гэта тое, што вы хочаце стварыць.
- Каб дадаць жывыя абвесткі, лакальнае сховішча браўзера, паведамленні і рабочых сервераў, вы хочаце выкарыстоўваць сучасныя тэхналогіі, такія як прагрэсіўныя вэб-прыкладанні (PWA).
15. Што азначае маршрутызацыя ў Blazor?
Маршрут - гэта шаблон URL-адраса, а маршрутызацыя - гэта працэс супастаўлення шаблонаў, які адсочвае запыты і вырашае, што рабіць з кожным з іх. ASP.net Core Endpoint Routing выкарыстоўваецца серверным дадаткам Blazor.
Уваходныя злучэнні для кампанента Blazor цяпер прымаюцца ASP.net Core з выкарыстаннем метаду пашырэння MapBlazorHub для маршрутызацыі канцавых кропак.
Маршрутызацыя на баку кліента прапануецца кліенцкім дадаткам Blazor. Файл App.cshtml кліенцкай праграмы Blazor змяшчае інфармацыю аб канфігурацыі маршрутызатара.
Кліенцкае прыкладанне Blazor
Blazor Server App
16. Як сервер Blazor апрацоўвае аўтарызацыю?
Працэс аўтарызацыі правярае, ці мае карыстальнік права доступу да рэсурсу праграмы.
Іншымі словамі, гэта дазваляе абмежаваць доступ карыстальнікаў да рэсурсу ў адпаведнасці з ролямі, патрабаваннямі і правіламі. Дзякуючы выкарыстанню атрыбутаў, убудаваных кампанентаў і вызначэння правілаў аўтарызацыі можна рэалізаваць сістэму аўтарызацыі ASP.NET Core ад Blazor.
Убудаваны кампанент AuthorizeView Blazor можа адлюстроўваць змесціва старонкі ў залежнасці ад статусу аўтэнтыфікацыі карыстальніка. Разам з аўтарызацыяй на аснове роляў гэты кампанент таксама забяспечвае аўтарызацыю на аснове палітыкі.
Гэты кампанент вельмі зручны, калі вы хочаце адлюстраваць змесціва старонкі ў адпаведнасці з роляй карыстальніка, палітыкай або статусам аўтэнтыфікацыі.
Стан аўтэнтыфікацыі карыстальніка вядомы дзякуючы AuthentizationStateProvider.
17. Як серверную праграму Blazor можна стварыць і кіраваць ёю з дапамогай каманд CLI?
Каб стварыць серверную праграму Blazor з дапамогай асноўнага CLI asp.net, адкрыйце камандны радок і ўвядзіце наступную каманду:
18. Як можна стварыць і выканаць прыкладанне Blazor WebAssembly з дапамогай каманд CLI?
Выкарыстоўваючы асноўны CLI asp.net, мы можам стварыць праграму Blazor WebAssembly, адкрыўшы камандны радок і ўвёўшы наступную каманду:
19. Што азначае прывязка даных Blazor?
У гэтай барацьбе за найвялікшую структуру вэб-распрацоўкі Blazor дае цяжкую барацьбу іншым сучасным структурам вэб-распрацоўкі.
Прывязкі з'яўляюцца ключом да ўзаемадзеяння з дадзенымі або аб'ектамі кіравання, такімі як кампаненты Textboxes, Selects або Forms.
Дзякуючы аднабаковай і двухбаковай прывязцы даных і надзейным паводзінам прывязкі падзей Blazor прапануе найлепшы падыход да выкарыстання прывязак.
20. Як у Blazor ажыццяўляецца двухбаковае прывязванне даных?
У гэтым выпадку інфармацыя паступае адначасова ад крыніцы да пункта прызначэння і ад пункта прызначэння да крыніцы.
Напрыклад, выкажам здагадку, што мы выкарыстоўваем зменныя даных майго класа(-аў) кампанентаў у якасці крыніцы і маем патрэбу ў доступе да значэння гэтай зменнай у карыстальніцкім інтэрфейсе HTML для адлюстравання або рэдагавання некаторых паведамленняў.
У нас ёсць @bind з брытвы ў Blazor, каб счытваць значэнне любой зменнай дадзеных у кампаненце Blazor.
Калі карыстальнік рэдагуе дадзеныя і пераключае ўвагу на іншы элемент, @bind захоўвае значэнне, атрыманае ад спасылкі, і абнаўляе першапачатковы зыходны элемент.
21. Ці можа Blazor WebAssembly мець зносіны з SQL Server або іншымі базамі дадзеных?
Blazor - гэта код .NET, які працуе на кліенце. Код IL будзе спампаваны на баку кліента, што палягчае адваротнае праектаванне. І з-за гэтага вам варта пазбягаць уключэння любых сакрэтаў, такіх як паролі, у ваш код Blazor WASM.
Вашаму прыкладанню Blazor трэба будзе падключыцца да аддаленай базы дадзеных з дапамогай камбінацыі імя карыстальніка і пароля, якую можна захаваць толькі ў праграме. Не рабіце гэтага - гэта вялікая рызыка для бяспекі.
Вы павінны выкарыстоўваць толькі службу з абмежаваным доступам для доступу да аддаленых дадзеных. Стварыце сэрвісны API вакол вашай базы дадзеных, які паказвае аперацыі, якія вы хочаце забяспечыць, такія як REST, напрыклад.
Затым вы можаце выкарыстоўваць маркеры бяспекі ў гэтым API, каб пераканацца, што толькі аўтарызаваныя карыстальнікі могуць атрымаць доступ да API і, такім чынам, да вашых даных.
заключэнне
Blazor - выдатная платформа, калі вы шукаеце рашэнне, каб паскорыць працэс распрацоўкі і трохі павялічыць прадукцыйнасць старонкі.
Гэта цудоўная навіна для распрацоўшчыкаў, нават калі яна выходзіць за рамкі таго, што патрэбна звычайнаму маркетолага для стварэння вэб-сайта або мэтавай старонкі.
Зручная платформа здымае моўныя абмежаванні кадавання, аптымізуе працоўныя працэсы і спрашчае камандам распрацоўшчыкаў выкананне сваіх задач.
Нарэшце, вось 20+ лепшых пытанняў для інтэрв'ю Blazor, каб атрымаць жаданую працу.
Пакінуць каментар