مهدی عادلی فر
بنیانگذار توسینسو و برنامه نویس

بلیزور چیست؟ معرفی Blazor یا فریمورک سمت کلاینت مایکروسافت

Blazor چیست؟ تیم Asp.net مجموعه ابزاری را به نام Blazor ساخته اند که یک فریمورک سمت کلاینت (client side) برای برنامه های دات نت است. تفاوت این فریمورک با فریمورک های سمت کلاینت دیگر مانند angular, react  این است که anuglar و react هنگامی که برای مرورگرف کامپایل می شوند به کد جاوا اسکریپت که قابل درک برای مرورگر ها است تبدیل می شوند. اما blazor به کد جاوااسکریپت تبدیل نمی شود و به وب اسمبلی کامپایل می شود. از ویژگی هایی که این فریمورک دارد موارد زیر است:

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران
سرفصل های این مطلب
  1. مفهوم WebAssembly
  • پایه آن تکنولوژی های امروزی مثل html , css است با این تفاوت که به جای استفاده از جاوا اسکریپت از سی شارپ و دستورات Razor استفاده می کنید.
  • شما با استفاده از این تکنولوژي می توانید همه قابلیت های پلتفرم SPA(برنامه های تک صفحه ای وب) را در دسترس دارید.
  • این فریمورک از WebAssembly استفاده می کند.

مفهوم WebAssembly

یک فرمت باینری برای کد در مرورگر است که هنگام اجرا از جاوااسکریپت بسیار سریع تر است و سرعت اجرای آن مانند اجرای برنامه به صورت لوکال است. همچنین می توان از زبان های مختلفی مانند زبانهای دات نت و سی و جاوا خروجی WebAssembly گرفت. با استفاده از این فریمورک برنامه نویسان دات نت به راحتی می توانند با همان زبان دات نت مثل سی شارپ هم برای کلاینت و هم برای سرور برنامه نوشته و تعامل ایجاد کنند. دقت داشته باشید که دو مدل از blazor وجود دارد که یکی مدل سروری و دیگری مدل کلاینتی است. نسخه سمت سرور با dot net core 3 ارائه می شود و نسخه سمت کلاینت هم هر روز در حال آپدیت شدن و بهتر شدن است ولی هنوز تا زمان نوشته شدن این مطلب به صورت Preview باقی مانده است.

در مدل سروری این فریمورک کامپوننتهای Ui در سمت سرور کامپایل می شود و به سمت کلاینت ارسال می شوند و ارتباط بین کلاینت و سرور با استفاده از signalR انجام می شود. در این حالت سرعت لود سریع بوده و لازم نیست که زمانی برای لود سایت طول بکشد. همچنین مرورگر های زیادی از جمله مرورگرهای دسکتاپ و موبایل با آن سازگاری دارند. مدل کلاینتی تا حدودی متفاوت است و به این شکل است که پروژه به صورت وب اسمبلی کامپایل شده و به مرورگر ارسال می شود و مرورگر آن را اجرا می کند. هنگامی که کل پروژه سمت مرورگر باشد سرعت اجرا بسیار بالاتر خواهد بود. ولی خب باید حجم وب اسمبلی ساخته شده بسیار پایین باشد تا سرعت لود اولیه سایت بالا باشد. که در حال حاضر این حجم بالاتر از سایر فریمورک های جاوااسکریپتی است.
این فریمورک به صورت Open source ارائه شده است و بسیاری از طرفداران مایکروسافت به به سراغ آن رفته اند یکی از دلایل استقبال از این فریمورک این است که می توان از قدرت زبان سی شارپ برای برنامه نویسی سمت کلاینت هم استفاده کرد و همینطور از قابلیت های ویژوال استودیو برای این زبان. همچنین با این فریمورک نیازی به نوشتن کد جاوااسکریپت نیست. در پایان باید دید که مایکروسافت در نسخه نهایی چه قابلیت هایی برای این فریمورک در نظر خواهد گرفت و آیا این فریمورک موفق خواهد بود یا خیر. با وب سایت توسینسو همراه باشید.


مهدی عادلی فر
مهدی عادلی فر

بنیانگذار توسینسو و برنامه نویس

مهدی عادلی، بنیان گذار TOSINSO. کارشناس ارشد نرم افزار کامپیوتر از دانشگاه صنعتی امیرکبیر و #C و جاوا و اندروید کار می کنم. در زمینه های موبایل و وب و ویندوز فعالیت دارم و به طراحی نرم افزار و اصول مهندسی نرم افزار علاقه مندم.

نظرات