- مدرس دوره : محمد مهدی بنیادی ( رزومه )
- تعداد ویدیوها : 10 ویدیو
- مدت زمان دوره : 4:3:00
- سطح دوره : مقدماتی
- وضعیت دوره : در حال برگزاری

شروع SignalR برای توسعه دهندگان .NET
آموزش SignalR برای توسعهدهندگان .NET؛ ساخت اولین اپلیکیشن بلادرنگ (Real-Time)
در یک وباپلیکیشن معمولی و سنتی، کلاینت (Client) زمانی از تغییرات سرور باخبر میشود که خودش یک درخواست یا Request جدید ارسال کند. اما چه میشود اگر بخواهیم سرور بتواند خودش و در همان لحظه، تغییرات را به کلاینتهای متصل اطلاع دهد؟
فرض کنید در پروژههای خود با سناریوهای زیر روبهرو هستید:
یک کاربر در بخش چت پیامی ارسال میکند و پیام باید همان لحظه برای سایر کاربران بدون رفرش صفحه نمایش داده شود.
وضعیت یک سفارش آنلاین تغییر میکند و کاربر بدون نیاز به بارگذاری مجدد صفحه، وضعیت جدید را بهصورت زنده میبیند.
یک نوتیفیکیشن یا اعلان جدید ایجاد میشود و باید بلافاصله روی مانیتور کاربر ظاهر شود.
یک داشبورد مدیریتی باید در لحظه (Live) با دادههای جدید بهروزرسانی شود.
اینجاست که وارد دنیای هیجانانگیز ارتباطات بلادرنگ یا Real-Time Communication میشویم. در این دوره رایگان یاد میگیرید چطور با استفاده از ASP.NET Core SignalR یک ارتباط دوطرفه و زنده بین کلاینت و سرور ایجاد کنید؛ بهشکلی که سرور بدون منتظر ماندن برای درخواست بعدی کلاینت، دادهها را ارسال کند.
ما در این دوره از پایه شروع میکنیم، با مفاهیم اصلی SignalR آشنا میشویم، اولین ارتباط Real-Time خود را برقرار میکنیم و قدمبهقدم پیش میرویم تا در نهایت یک پروژه کاربردی کامل را پیادهسازی کنیم.
سرفصلهای دوره آموزشی SignalR در داتنت
فصل اول: آشنایی با ارتباط بلادرنگ (Real-Time) و معماری SignalR
فصل دوم: شناخت عمیق هابها (Hubs) و کلاینتها در سیگنالار
فصل سوم: مدیریت ارتباط و تبادل داده بین کلاینت و سرور (Client ↔ Server Communication)
فصل چهارم: مدیریت اتصالها، اتصال مجدد (Reconnect) و مدیریت گروهها (Groups)
فصل پنجم: پیادهسازی پروژه عملی (ساخت چتروم و سیستم پیامرسانی زنده)
فصل ششم: بررسی قابلیتهای جدید SignalR و تکنولوژیهای مرتبط
این دوره برای چه کسانی مناسب است؟
این دوره بهصورت تخصصی برای توسعهدهندگان .NET طراحی شده است که با زبان برنامهنویسی C# و فریمورک ASP.NET Core آشنایی دارند و میخواهند برای اولین بار، مهارت خود را در زمینه توسعه وباپلیکیشنهای Real-Time ارتقا داده و SignalR را از صفر تا صد یاد بگیرند.
فهرستـــ ویدیوها
مدت زمان دوره 4:3:00با مشاهده آنلاین جلسات در سایت ، هزینه اینترنت شما به صورت نیم بها محاسبه خواهد شد.
قبل از SignalR: چرا به ارتباطات Real-Time نیاز داریم؟
در این جلسه مفهوم Real-Time را یاد میگیریم و بررسی میکنیم چرا برای ارتباط لحظهای بین Client و Server به تکنولوژیهایی مثل WebSocket و SignalR نیاز داریم.
اولین Connection در SignalR
در این قسمت اولین Connection در SignalR رو میسازیم و Client رو به Hub متصل میکنیم.
ارسال و دریافت پیام با SignalR، به همراه مینی پروژه چت روم
در این قسمت با invoke، SendAsync و on، ارتباط بین Hub و Clients رو پیادهسازی میکنیم و یک Mini Chat Room ساده با SignalR میسازیم.
مدیریت Connectionها در SignalR
در این قسمت با مفهوم Connection و ConnectionId آشنا میشیم و با Clients.All، Clients.Caller و Clients.Others نحوهی ارسال پیام به Clientها رو در Mini Chat بررسی میکنیم.
ارسال پیام به یک Connection مشخص در SignalR
در این قسمت با Clients.Client(connectionId) آشنا میشیم و در Mini Chat، پیام رو فقط برای یک Connection مشخص ارسال میکنیم.
چرخه حیات Hub در SignalR
در این قسمت با Lifecycle و Transient بودن Hub آشنا میشیم و تفاوت Hub Instance با Connection رو در Mini Chat بررسی میکنیم.
دریافت نتیجه از Hub Method در SignalR
در این قسمت با ساخت پروژهی Quiz با Razor Pages، یاد میگیریم چطور با connection.invoke یک Hub Method رو صدا بزنیم و نتیجهی اجرای اون رو مستقیماً در Client دریافت کنیم.
ارسال آبجکتهای پیچیده در SignalR
در این قسمت با ساخت یک پروژهی Online Whiteboard یاد میگیریم چطور آبجکتهای پیچیده رو با SignalR بین Client و Hub منتقل کنیم و با Serialization و Deserialization خودکار در SignalR آشنا میشیم.
مدیریت State در SignalR؛ ذخیرهسازی و همگامسازی دادهها
در این قسمت، پروژهی Online Whiteboard رو توسعه میدیم تا کاربران جدید هم بتونن تاریخچهی خطوط رسمشده رو دریافت کنن. با ساخت یک In-Memory Store و استفاده از OnConnectedAsync، یاد میگیریم چطور وضعیت فعلی برنامه رو نگه داریم و با Clientهای جدید همگام کنیم. همچنین بررسی میکنیم چرا همهی دادههای Real-Time لزوماً نباید در دیتابیس ذخیره بشن و چه زمانی باید از حافظه، Cache یا ذخیرهسازی پایدار استفاده کنیم.
مخصوص اعضای ویژه
نظرات کاربران در رابطه با این دوره