ساخت فراخوانی رویه از راه دور (RPC) - از صفر در زبان سی
✅ سرفصل و جزئیات آموزش
آنچه یاد خواهید گرفت:
- توانایی ساخت فراخوانی های رویه از راه دور (RPC) با شروع از include#
- درک مفهوم سریالسازی و DeSerialization دادهها
- فهم مفهوم همزمانسازی استیت اپلیکیشن
- درک مفهوم چکپوینتینگ استیت اپلیکیشن
- توانایی مدیریت اشیاء داده به صورت استریم بایتها
- قابلیت کار با اشیاء به صورت بازگشتی
- امکان توسعه و بکارگیری مفاهیم آموختهشده در زبانهای برنامهنویسی دیگر
- درک پیشنیازهای انتقال داده بین ماشینهای متنوع
پیش نیازهای دوره
- زبان برنامهنویسی C - حداقل سطح متوسط
- آشنایی حداقلی با برنامهنویسی سوکت، برای ارسال و دریافت داده مطلوب است اما اجباری نیست
- سیستمعامل Linux، هر توزیع، - اجرا به صورت Native یا ماشین مجازی
- ابزار مهمترین - اشتیاق و علاقه به یادگیری
توضیحات دوره
درباره دورهاین دوره درباره توسعه فراخوانی های رویه از راه دور (RPC) شخصیسازی شده است - از سیستمعامل Linux برای این دوره استفاده میکنیم، اما اگر بیشتر با Windows آشنا هستید میتوانید از آن استفاده کنید. جوهر و قدرت واقعی این دوره درعدم استفاده از کتابخانههای شخص ثالث است. آنچه از طریق دوره یاد میگیرید، صفر تا صد یاد میگیرید. این دوره طبق این اصل است و به شما آموزش میدهد چگونه مرحله به مرحله از ابتدا، بدون هیچ چارچوب، ابزار یا کتابخانه حمایتی، فقط با زبان C خالص، RPC بسازید.
این دوره در واقع پایهگذاری بسیاری از پروژههای آتی در سیستمنویسی است. برخی از آنها در برنامه درسی دوره گنجانده شده است.
فراخوانی رویه از راه دور (RPC) تکنیکی است برای فراخوانی تابع/رویهای که در ماشین فیزیکی دیگری در شبکه قرار دارد. در این دوره، مفاهیم پشت صحنه آن را خواهید آموخت. این مفاهیم میتوانند به توسعه دیگر مفاهیم سیستمنویسی مانند همزمانسازی دادهها و چکپوینت کردن استیت اپلیکیشن هم تعمیم داده شوند. این دوره وعده میدهد که محتوای کامل توسعه RPC را در نسخه اولیه ارائه کند.
همزمانسازی داده عملیاتی برای هماهنگسازی استیت کل heap اپلیکیشن با ماشین راه دور است. ماشین راه دور mirror heap state را میسازد و در صورت خرابی ماشین اول، میتواند جایگزین شده و عملیات ماشین اصلی را ادامه دهد، چرا که تمامی استیت لازم را دارد.
چکپوینتینگ حفظ استیت حافظه برنامه در دیسک/فایل برای امکان راهاندازی مجدد آن است. این فرآیند باعث میشود اپلیکیشن هر زمان که خواستید، با ساختن همان استیت حافظه از نمونههای قبلی، دوباره راهاندازی شود. این قابلیت در نسخههای بعدی دوره ارائه خواهد شد.
این دوره برای چه کسانی مناسب است؟
دانشجویان مبتدی، در صورت تمایل، میتوانند این دوره را شروع کنند. باید درک خوبی از اشارهگرهای C و نحوه قرارگیری اشیاء در حافظه داشته باشید.
پیشنیازها
C و مهارت در اشارهگرها، پیشنیاز این دوره است. آشنایی پایه با برنامهنویسی سوکت مطلوب است اما الزامی نیست. این دوره از ابتداییترین اصول شروع شده و پایههای لازم برای یادگیرنده ساخته میشود. اگر با اشارهگرها و مدیریت حافظه در C مشکل دارید، لطفاً بعد از برآوردن پیشنیازها وارد دوره شوید.
زبان برنامهنویسی مورد استفاده در این دوره:
دلایل قوی انتخاب C برای این دوره:
RPC تکنیکی است که در صورت فهم مفاهیم، در هر زبان برنامهنویسی قابل پیادهسازی است. یادگیری RPC با C کمک میکند تا پشت صحنه کارکرد سیستم را درک کنید. زبان C جزو معدود زبانهایی است که جزئیات سطح پایین نحوه کار سیستم را فاش میکند. در سیستمنویسی، C زبان اصلی است و جایگزین قابل اطمینانی ندارد.
بدون کتابخانههای شخص ثالث
هر logic که پیادهسازی میکنید، باید از ابتدا، با include# شروع کنید. این دوره کمک گرفتن از کتابخانههای خارجی را نمیپذیرد، زیرا هدف آن آموزش از پایه است. ولی استفاده از کتابخانههای رایج برای ساختارهای داده مانند لیستهای پیوندی، درختها، صفها و غیره، مجاز است تا زمان و تلاش صرفهجویی شود.
این دوره برای چه کسانی مناسب است؟
- دانشجویانی که میخواهند خود را از دیگران متمایز کنند.
- متخصصانی که به دنبال پیشرفت شغلی یا تغییر شغل هستند.
- کسانی که عاشق کدنویسی هستند و نرمافزارهای سیستمی واقعی میسازند.
ساخت فراخوانی رویه از راه دور (RPC) - از صفر در زبان سی
-
فهرست مطالب 03:10
-
پیوستن به گروه تلگرام 00:13
-
دستور کار 02:15
-
مقدمه 07:24
-
چرا نیاز به سریالسازی داریم؟ 04:19
-
مشکلهای بدون DeSerialization 12:07
-
کاربردهای سریالسازی 03:14
-
خلاصه 01:23
-
پایههای سریالسازی 01:09
-
سریالسازی ساختارهای ساده 03:56
-
سریالسازی ساختارهای تو در تو 02:24
-
سریالسازی ساختارهای اشارهگر 06:43
-
DeSerialize کردن ساختارهای ساده 03:40
-
DeSerialize کردن ساختارهای تو در تو 02:49
-
DeSerialize کردن ساختارهای اشارهگر 05:36
-
نمونه DeSerialize کردن 09:05
-
جزئیات کامل 03:18
-
ترتیب کامل مراحل - فلو چارت 01:54
-
نمونههای Serialization API 05:22
-
خلاصه 02:13
-
استریم ها - بخش 1 09:54
-
استریم ها - بخش 2 06:09
-
استریم ها - بخش 3 05:49
-
هدفهای ما چیست؟ 03:55
-
مرور سریع C 05:28
-
سریالسازی ساختارهای ساده 11:22
-
سریالسازی ساختارهای تو در تو 04:05
-
سریالسازی ساختارهای اشارهگر 05:41
-
DeSerialize کردن ساختارهای ساده 06:43
-
قوانین و استانداردهای DeSerialize کردن 02:14
-
DeSerialize کردن ساختارهای تو در تو 03:46
-
DeSerialize کردن ساختارهای اشارهگر 05:31
-
سریالسازی یک لیست پیوندی 06:27
-
اشتباهات رایج در سریالسازی و DeSerialize کردن 12:00
-
محدودیتهای DeSerialize کردن 03:16
-
نمایش - مرور کد 01:45
-
مرور کد ساختارهای C - بخش 1 01:54
-
مرور کد ساختارهای C - بخش 2 09:11
-
مرور کد ساختارهای C - بخش 3 10:09
-
مرور کد ساختارهای C - بخش 4 09:36
-
تمرینها 00:25
-
از آرشیو سوال و جواب None
-
سریالسازی یک لیست پیوندی جنریک - بخش 1 11:51
-
سریالسازی یک لیست پیوندی جنریک - بخش 2 08:31
-
دستور کار 01:41
-
درک RPCs 05:47
-
9 مرحله برای RPC 07:13
-
مراحل 1 تا 2 RPC 07:15
-
مرور کد مراحل 1 تا 3 RPC 17:05
-
مراحل 4 تا 6 RPC 05:34
-
مرور کد مراحل 4 تا 6 RPC 11:16
-
مراحل 7 تا 8 RPC 03:25
-
مرور کد مراحل 7 تا 8 RPC 05:32
-
مرحله 9 - مرحله نهایی RPC 02:35
-
مرور کد مرحله 9 RPC - نهایی 07:20
-
دمو RPC 03:34
-
RPC - چهار روال خاص 05:49
-
شناسه RPC 07:32
-
اتصال هدر RPC روی کلاینت RPC 07:41
-
دیکودینگ هدر RPC روی سرور RPC 05:00
-
موارد کاربرد RPC و مسیرهای بعدی دوره 08:03
-
تکلیف کدنویسی RPC 00:51
-
مقدمه همزمانسازی استیت اپلیکیشن 09:20
-
پیادهسازی همزمانسازی استیت اپلیکیشن 08:36
-
نمایش همزمانسازی استیت 09:45
-
مدرسه اضافه - وقت کادوی گرفتن است !! 01:16
مشخصات آموزش
ساخت فراخوانی رویه از راه دور (RPC) - از صفر در زبان سی
- تاریخ به روز رسانی: 1404/06/21
- سطح دوره:متوسط
- تعداد درس:66
- مدت زمان :06:10:06
- حجم :5.43GB
- زبان:دوبله زبان فارسی
- دوره آموزشی:AI Academy