کتاب Learning Blazor (یادگیری Blazor: ساخت برنامکهای تک صفحهای با WebAssembly و C#) از جدیدترین منابع یادگیری Blazor و برنامهنویسی وب با آن میباشد. این کتاب در 9 فصل به آموزش ساخت صفحات وب با استفاده از WebAssembly و سیشارپ خواهد پرداخت.
در ادامه مقدمهای از کتاب Learning Blazor را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Learning Blazor:
به Learning Blazor خوش آمدید. احتمالاً اینجا هستید زیرا چیزهای جالبی در مورد Blazor شنیدهاید و میخواهید آن را امتحان کنید. بنابراین، آن چیست؟ Blazor یک چارچوب وب منبع باز برای ساخت اجزای رابط کاربری وب تعاملی سمت سرویسگیرنده با استفاده از C# (تلفظ به “شارپ”)، HTML و شیوهنامههای آبشاری (CSS) است.1 به عنوان یکی از ویژگیهای ASP.NET Core، Blazor گسترش میدهد. سکوی توسعهدهنده NET با ابزارها و کتابخانهها برای ساخت برنامههای وب.
WebAssembly چندین زبان برنامهنویسی غیر مبتنی بر جاوا اسکریپت را قادر میسازد تا در مرورگر اجرا شوند. Blazor از WebAssembly نهایت استفاده را میبرد و به توسعهدهندگان سیشارپ اجازه میدهد تا اجزای رابط کاربری و تجربیات سمت مشتری را با داتنت بسازند. Blazor یک چارچوب برنامه تک صفحهای (SPA) است، برای مثال مانند Angular، React، VueJS، و Svelte، اما به جای جاوا اسکریپت بر اساس C# است.
خوب، این یک چارچوب وب است، اما چه چیزی آن را از سایر چارچوبهای سمت کلاینت برای ساخت رابط کاربری وب متفاوت میکند؟
چرا بلزور؟
Blazor یک تغییر دهنده بازی برای توسعهدهندگان داتنت و توسعهدهندگان وب است! در کتاب Learning Blazor، یاد خواهید گرفت که چگونه میتوانید از مدل میزبانی Blazor WebAssembly برای ایجاد تجربیات وب در زمان واقعی قانع کننده استفاده کنید. دلایل بیشماری برای انتخاب Blazor بهعنوان چارچوب توسعه برنامه وب بعدی شما وجود دارد. بیایید با آنچه که برای توسعه وب انجام میدهد شروع کنیم.
در اوایل دهه 90، گشت و گذار در وب مانند خواندن یک سری اسناد متنی مرتبط بود – HTML اصلی. این به سختی یک تجربه همهجانبه یا منسجم بود. هنگامی که CSS و جاوا اسکریپت وارد صحنه شدند، توانایی پاسخگویی پویا به تعاملات کاربر، طعم بسیار بیشتری را به تجربه وب اضافه کرد.
اگرچه صفحات وب جالبتر به نظر میرسند، اما بارگذاری آنها نیز بسیار کند بود و مردم انتظار یک تجربه کاربری کند با نمایش/بافر صفحه قابل مشاهده را داشتند. تماشای تصاویر در بخشهایی کاملاً قابل قبول بود زیرا دادههای تصویر زیربنایی از طریق HTTP با سرعت اتصال شمارهگیری به مرورگر بافر میشدند. این صبر دوام نیاورد این طبیعت انسان است که چیزها را همین الان بخواهد، درست است؟ اگر بیش از چند ثانیه روی مرورگر بنشینید، کمی احساس ناراحتی میکنید. با پیچیدهتر شدن محتوای وب، به نظر میرسد که چارچوبهای توسعه پیچیدگی را کاهش میدهند.
از جمله چنین چارچوبهای مخرب، Blazor با WebAssembly است. با Blazor، میتوانید کد C# را هم در سناریوهای کلاینت و هم در سرور به اشتراک بگذارید، همه اینها در حالی است که از ابزارها با خانواده محصولات ویژوال استودیو، CLI داتنت قوی و دیگر محیطهای توسعه یکپارچه داتنت (IDE) استفاده میکنید.
اکوسیستم داتنت در حال رشد است، پذیرش در حال افزایش است، و جذابیت پشتیبانی طولانی مدت (LTS) همچنان یک عامل محرک برای توسعه سازمانی است. در مقایسه با LTS سایر چارچوبهای SPA، مانند Angular و React، داتنت بهعنوان برنده آشکار شناخته میشود. زیرا خط مشی پشتیبانی که داتنت تمدید میکند سه سال از هر نسخه LTS است. به روز بودن با هر نسخه بسیار سودمند است. برای اطلاعات بیشتر، به خط مشی پشتیبانی داتنت مراجعه کنید.
درست مانند هر برنامه وب دیگری، برنامههای وب Blazor را میتوان به عنوان برنامههای وب مترقی (PWA) برای پشتیبانی از تجربیات آفلاین ایجاد کرد. آنها همچنین میتوانند در داخل برنامههای دسکتاپ بومی میزبانی شوند و بر روی دستگاه کاربر نصب شوند. برنامههای Blazor WebAssembly شما میتوانند وابستگیهای بومی را تعریف کنند، مانند وابستگیهای C و C++. هر چیزی که با Emscripten کامپایل شده باشد را می توان در Blazor استفاده کرد. به نظر من مبادلات زیادی وجود ندارد. پلت فرم توسعه وب تقاضای زیادی دارد و برنامه ریزی برای آن لذت بخش است.
زمانی که WebAssembly معرفی شد، در ابتدا فقط توجه و انتظارات متوسط جامعه توسعهدهندگان را به خود جلب کرد. در سال 2017، WebAssembly به طور آشکار استاندارد شد، که به توسعهدهندگان اجازه داد تا امکانات جدیدی را برای تعامل و عملکرد فراتر از جاوا اسکریپت به تنهایی کشف کنند.
این برای توسعهدهندگان وب مهم است، زیرا آنها میتوانند به راحتی با پلتفرم توسعه اپ استور سودآور رقابت کنند. جاوا اسکریپت به تکامل خود ادامه میدهد و ویژگیهایی فراتر از استاندارد ECMAScript اضافه میکند. با ایجاد Blazor توسط داتنت، سیشارپ به یک رقیب واقعی برای جاوا اسکریپت تبدیل شد.
به عنوان یک توسعهدهنده با بیش از یک دهه تجربه توسعه برنامههای وب در دنیای واقعی، میتوانم تأیید کنم که بارها و بارها از داتنت برای توسعه سازمانی برنامههای کاربردی تولید استفاده کرده ام. سطح API داتنت به تنهایی عظیم است و روی میلیاردها سیستم کامپیوتری در سراسر جهان استفاده شده است.
من طی سالها برنامههای وب زیادی را با استفاده از فناوریهای مختلف از جمله ASP.NET WebForms، AngularJS، Angular، VueJS، Svelte، بله و حتی React، سپس ASP.NET Core Model View Controller، Razor Pages و Blazor ساختهام. Blazor قدرت یک اکوسیستم تثبیت شده را با انعطاف پذیری و متانت وب ترکیب میکند و چیزهای زیادی برای ارائه به داتنت و توسعهدهندگان وب دارد.
چه کسی باید کتاب Learning Blazor را بخواند؟
این کتاب برای توسعهدهندگان داتنت و توسعهدهندگان وب با درک اولیه از HTML، CSS، مدل شیء سند، و جاوا اسکریپت، و همچنین تجربه توسعه برنامههای کاربردی در داتنت است.
کتاب Learning Blazor برای افرادی که در برنامهنویسی کاملا مبتدی هستند مناسب نیست. به عنوان مثال، وقتی به مادرم گفتم که دارم کتابی مینویسم، از او پرسید که درباره چیست و آیا از خواندن آن لذت میبرد. گفتم: «نه.» او نه توسعهدهنده داتنت است و نه توسعهدهنده وب، بنابراین فکر نمیکنم ارزش زیادی در این کتاب پیدا کند. با این حال، اگر شما یک توسعهدهنده داتنت یا توسعهدهنده وب هستید، در انتظار شما هستید.
برای توسعهدهندگان داتنت
اگر یک توسعهدهنده داتنت هستید که در مورد توسعه برنامههای وب کنجکاو هستید، کتاب Learning Blazor جزئیاتی را توضیح میدهد که چگونه میتوانید مهارتهای داتنت موجود خود را مهار کنید و آنها را در توسعه Blazor به کار ببرید. سکوی برنامه وب یک فرصت بزرگ برای توسعهدهندگان داتنت است. همه چارچوبهای محبوب جاوا اسکریپت SPA مانند Angular، React، VueJS و Svelte یک رقیب واقعی در Blazor دارند. توسعه برنامه Blazor باید برای شما آشنا باشد زیرا Blazor بر پایه داتنت و سیشارپ است. شما میتوانید کتابخانهها را بین مشتری و سرور به اشتراک بگذارید و توسعه را واقعا لذت بخش کنید.
برای توسعهدهندگان وب
اگر یک توسعهدهنده وب هستید که قبلاً با داتنت کار کردهاید، کتاب Learning Blazor دو مجموعه از مهارتهای برنامهنویسی آموخته شده را گسترش میدهد. تمام تجربیات شما در داتنت و همچنین دانش شما از اصول وب ادامه دارد. اگر شما یک توسعهدهنده SPA هستید، کتاب Learning Blazor چشمان شما را به مجموعه ای از ابزارهای بهتر از آنچه که به آن عادت کرده اید باز میکند. ما همچنین بسیاری از ویژگیهای جدید C# را بررسی میکنیم. اگر با سیشارپ آشنایی ندارید، این کتاب دیدگاهی اصطلاحی از سیشارپ و تجربهای کاملاً باورپذیر ارائه میکند.
نکته
اگر از خود میپرسید «C# اصطلاحی به چه معناست؟»، سیشارپ، مانند همه زبانهای برنامهنویسی، مجموعهای از اصطلاحات برنامهنویسی دارد. اصطلاحات برنامهنویسی راهی برای نوشتن کد هوشمندتر و بهتر برای انجام کاری است. C# اصطلاحی مجموعه ای از اصطلاحات است که برای خوانایی و نگهداری بیشتر کد شما استفاده میشود.
تجربه جاوا اسکریپت و توسعهدهنده شما از مسیریابی سمت مشتری و درک عمیق HTTP، معماری میکروسرویس، تزریق وابستگی و طرز فکر برنامههای مبتنی بر مؤلفه – همه این موارد مستقیماً برای توسعه Blazor قابل اجرا هستند. توسعه برنامه نباید چندان دشوار باشد، و من واقعاً معتقدم که Blazor آن را آسانتر میکند. با اتصال دادههای غنی از ویژگی، قالبهای تایپ شده قوی، رویدادهای سلسله مراتبی مؤلفهها، ورود به سیستم، محلیسازی، تأیید اعتبار، پشتیبانی از PWA و میزبانی، شما همه بلوکهای ساختمانی را برای هماهنگ کردن تجربیات وب جذاب دارید.
چرا کتاب Learning Blazor را نوشتم؟
وقتی کسی از من میپرسد “چرا میخواستی کتاب بنویسی؟” مکث میکنم و وانمود خواهم کرد که فکر عمیقی میکنم، قبل از اینکه پاسخ دهم: «اوریلی از من خواست.» به همین سادگی. اما با جدیت تمام، وقتی یک ایمیل دوستانه از یک ویراستار اکتسابهای O’Reilly دریافت کردم تا ببینم آیا علاقهمندم کتابی درباره Blazor بنویسم یا خیر، به آن فکر کردم. اول، خیلی جالب بود که از شما بپرسند! اما من همچنین میدانستم که انجام این نوع پروژه به معنای به تعویق انداختن چند چیز است.
من باید از رویدادهای سخنرانی، که بخش عمدهای از زندگی من در چند سال گذشته بوده اند، فاصله بگیرم. با این حال من در کمک به دیگران پیشرفت میکنم، بنابراین نوشتن یک کتاب میتواند به طور متفاوتی به مردم کمک کند. نوشتن کتاب همچنین به معنای گرفتن وقت از خانواده جوان من است. خانواده من و همسرم به طور خاص بسیار خونگرم و حمایت کننده بوده اند. او به توانایی من برای کمک به دیگران اعتقاد دارد و اشتیاق من را به اشتراک میگذارد. در نهایت تصمیم گرفتم: «بله! من میخواهم کتاب بنویسم!»
برای من، کمک به جامعه توسعهدهندگان به تقویت درک من از یک فناوری خاص نیز کمک می کند. من بلزور را دوست دارم! Blazor یک سرمایه گذاری بزرگ برای تیمهای توسعه داتنت و ASP.NET مایکروسافت است (و بوده است). آنها همچنان به نوآوری ادامه می دهند و دسترسی به C# و اکوسیستم داتنت را به طور کلی گسترش می دهند. این کتاب یکی از ضروریترین کتابهای توسعهدهنده است، و این راهی است که من میتوانم به جامعه توسعهدهندگانی که عاشق آنها هستم، برگردانم. من خودم را در این کتاب ریختهام و میدانم که اشتیاقم برای Blazor درخشنده است.
نحوه استفاده از کتاب Learning Blazor
این نوع کتاب «معرفی X» معمولی شما نیست. این یک کتاب فنی است که شما را با استفاده از Blazor برای ساخت SPA با WebAssembly و C# آشنا میکند. کتابهای زیادی وجود دارد که از رویکرد گام به گام استفاده میکنند – این کتاب یکی از آنها نیست.
در حین خواندن کتاب Learning Blazor، من میخواهم تجربهای مشابه تجربهای داشته باشید که هنگام پیوستن به یک تیم جدید خواهید داشت. شما اندکی سوار شدن را تجربه خواهید کرد، با یک برنامه موجود به سرعت آشنا خواهید شد و در طول مسیر بیتهای دامنه مختلفی را یاد خواهید گرفت. برنامه نمونه “Learning Blazor” راه حلی با اندازه مناسب با بیش از دهها پروژه در اندازههای مختلف است. هر پروژه شامل یا به عملکرد خاصی در برنامه Learning Blazor کمک میکند.
ما این پروژهها را به عنوان نمونههایی از نحوه انجام کارها در Blazor بررسی خواهیم کرد. همانطور که شما را از طریق کارهای داخلی برنامه راهنمایی میکنم، در طول مسیر توسعه اپلیکیشن Blazor را یاد خواهید گرفت. در پایان، در مورد آنچه در توسعه اپلیکیشن Blazor میآید، تجربه کسب خواهید کرد و متوجه میشوید که چرا تصمیمهای توسعه خاصی گرفته شدهاند، و نمونههای کارآمدی از نحوه انجام کارها خواهید داشت. شما کتاب را میبندید و برای برنامههای خود الهام میگیرید.
تمام مثالهای این کتاب با استفاده از اپلیکیشن Learning Blazor (یا اپلیکیشن مدل) نشان داده شدهاند. کد منبع برنامه مدل، همراه با کتاب Learning Blazor، یک منبع یادگیری عالی و نقطه مرجع آینده است. مخزن کد منبع در GitHub موجود است و در «The Code Must Live On» به اشتراک گذاشته شده است.
نقشه راه و اهداف کتاب Learning Blazor
ساختار این کتاب به شرح زیر است:
فصل 1، «Blazing into Blazor»، مفاهیم اصلی و اصول Blazor را برای توسعه برنامه وب به عنوان یک پلتفرم معرفی میکند. همچنین برنامه نمونه کتاب Learning Blazor را معرفی کرده و معماری آن را مورد بحث قرار میدهد.
فصل 2 کتاب Learning Blazor، «اجرای برنامه»، به چگونگی اجرای عملکرد برنامه از اولین درخواست مشتری تا نشانی وب سایت ثابت میپردازد. شما یاد خواهید گرفت که چگونه HTML ارائه میشود، چگونه درخواستهای بعدی برای منابع اضافی فراخوانی میشود، و چگونه Blazor خود را بوت استرپ میکند.
فصل 3، «Componentizing» به نحوه نمایش کاربر در برنامه میپردازد. شما یاد خواهید گرفت که چگونه از ارائهدهندگان احراز هویت شخص ثالث برای تأیید هویت کاربر استفاده کنید. شما در مورد سفارشی سازی حالت احراز هویت UX و در مورد رویکردهای مختلف اتصال داده با ساختارهای کنترل Razor خواهید آموخت.
فصل 4 کتاب Learning Blazor، «سفارشی کردن تجربه ورود به سیستم کاربر»، نحوه ثبت خدمات مشتری برای تزریق وابستگی را شرح میدهد. شما در مورد کامپوننت سازی و نحوه استفاده از رویکرد RenderFragment برای سفارشی سازی اجزا یاد خواهید گرفت. همچنین یاد خواهید گرفت که چگونه بنویسید و از سنتز گفتار بومی کلاینت پارامتری شده استفاده کنید که در Blazor WebAssembly کاملاً کاربردی و قابل تنظیم است.
فصل 5 کتاب Learning Blazor، «بومیسازی برنامه»، نشان میدهد که چگونه میتوانید از خط لوله تحویل خودکار رایگان مبتنی بر هوش مصنوعی برای پشتیبانی از بومیسازی استفاده کنید. نحوه استفاده از نوع IStringLocalizer<T> ارائه شده توسط چارچوب و خدمات مربوطه را خواهید آموخت.
فصل 6 کتاب Learning Blazor، «نمونهسازی عملکرد وب بلادرنگ»، عملکرد وب بیدرنگ را معرفی میکند و سیستم اعلان، صفحه پخش زنده توییت و قابلیتهای هشدار را نشان میدهد. علاوه بر این، یاد خواهید گرفت که چگونه با استفاده از ASP.NET Core SignalR یک برنامه چت بسازید.
فصل 7 کتاب Learning Blazor، «استفاده از مولدهای منبع»، موردی را برای مولدهای منبع ایجاد میکند تا تجربه قابلیت همکاری (interop) Blazor JavaScript را بهبود بخشند. خواهید آموخت که چرا مولدهای منبع C# در توسعه برنامه بسیار مفید هستند و چگونه در زمان شما صرفه جویی میکنند.
فصل ۸ کتاب Learning Blazor، «پذیرش ورودی فرم با اعتبارسنجی»، نحوه عملکرد فرمها را بررسی میکند. ما از طریق <form> پیشرفته اعتبار سنجی ورودی خواهیم رفت. ما همچنین به نحوه ادغام تشخیص گفتار بومی در فرم برای ارائه گزینه ورودی دیگری به کاربران نگاه خواهیم کرد. نحوه استفاده از EditContext و form-model binding را یاد خواهید گرفت. فصل 8 همچنین الگویی را برای تأیید وضعیت سفارشی نشان میدهد که بهروزرسانیهای زنده را با استفاده از برنامههای افزودنی Reactive برای NET دریافت میکند.
فصل ۹ کتاب Learning Blazor، «آزمایش همه چیز»، به شما میآموزد که چگونه تستهای واحد، تستهای مؤلفه، و حتی تستهای سرتاسر بنویسید تا مطمئن شوید برنامهتان کار میکند. این تستها میتوانند بهطور خودکار اجرا شوند تا هر بار که برنامه با استفاده از GitHub Actions به مخزن GitHub فرستاده میشود.
سرفصلهای کتاب Learning Blazor:
- Foreword
- Preface
- 1. Blazing into Blazor
- 2. Executing the App
- 3. Componentizing
- 4. Customizing the User Login Experience
- 5. Localizing the App
- 6. Exemplifying Real-Time Web Functionality
- 7. Using Source Generators
- 8. Accepting Form Input with Validation
- 9. Testing All the Things
- A. Learning Blazor App Projects
- Index
جهت دانلود کتاب Learning Blazor میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.