کدهک
1.95K subscribers
1.29K photos
7 videos
1 file
672 links
آموزشگاه تخصصی دات نت

https://codehaks.com

لینکدین :
https://www.linkedin.com/in/codehaks

یوتیوب:
https://www.youtube.com/@codehaksfa

ارتباط با مدیر :
Admin: @codehak
Email: ghods.hakim@hotmail.com
call: 09380146555
Download Telegram
فروش ویژه پاییز 1400

دوره جامع ASP NET Core کدهک با تخفیف ویژه 50 درصد برای مدت محدود عرضه میشود.

سر فصل ها :

آموزش پروژه محور ASP NET Core
کارگاه تخصصی Domain Driven Design
کارگاه تخصصی Microservice
دوره کامل EF Core 5.0


کد تخفیف : aban
https://codehaks.com/gallery/more/10
در سی شارپ String به صورت Immutable کار میکند. در این ویدیو به اثر این موضوع را در دات نت بررسی می کنیم و به معرفی و مقایسه استفاده از StringBuilder می پردازیم.

https://youtu.be/b1dTOkHjV4U
آشنایی با GUID

مقدار GUID یک عدد 128 است که به صورت 32 کاراکتر در مبنای 16 نمایش داده میشود و شامل 4 خط تیره است. نسخه های و ویرایش مختلفی از آن ارائه شده که در عدد ساخته شده درج میشود.

از GUID یا Globally Unique Identifier برای ایجاد کلید اصلی جداول دیتابیس استفاده میشود.

شانس تکراری بودن مقدار GUID صفر نیست اما مقدار تصادفی که ایجاد میشود آنقدر بزرگ است که شانس تکراری شدن آن حتی بعد از تولید هزاران میلیارد رکورد باز هم نزدیک به صفر است.

در دهه 80 میلادی از GUID در سیستم عامل Apollo ناسا استفاده میشد. بعد در سیستم عامل ویندوز و شبکه (آدرس MAC) مورد استفاده قرار گرفت.

مزیت اصلی GUID این است که بدون مراجعه به دیتابیس و بررسی سایر رکوردها می توان یک کلید غیر تکراری ایجاد کرد. این مسئله در معماری میکروسرویس و دیتابیس های توزیع شده کاربرد زیادی دارد.

دیتابیس SQL Server و فریم ورک دات نت مستقیما از این نوع داده پشتیبانی میکنند.
چگونه از Serilog برای ثبت لوگها در دیتابیس استفاده کنیم؟

https://youtu.be/UX3rZbQl1e0
Forwarded from برنامه نویس
🔈🤑 تخفیف 30% کلیه پکیج های آموزش ویدئویی برنامه نویس - ویژه جمعه سیاه

کد تخفیف: BF21
تاریخ انقضای کد تخفیف فوق: جمعه، ۵ آذر ۱۴۰۰، ساعت 12 شب

لازم به ذکر است، آموزش های ارائه شده در پکیج های آموزش ASP.NET Core، بدون هیچ تغییری در ASP.NET Core 6.0 نیز قابل استفاده است.

با تقدیم احترام
#مهدی_کرامتی
#تخفیف
@barnamenevis_net
مقایسه رفتار Thread Pool در متدهای Sync و Async

https://youtu.be/AdauMu7fpkI
آموزش Structured Logging در ASP NET Core با Serilog

https://youtu.be/PgefW2MupUI
آشنایی با Pattern Matching در سی شارپ

https://youtu.be/Obzgba4bq3s
پیاده کردن switch شرطی با کمک Relational Patterns در سی شارپ

https://youtu.be/lbUtvcpqajk
آموزش کار با Tuple در سی شارپ

https://youtu.be/R0GAVOi3nso
آشنایی با JWT

مکانیزم JWT یک روش برای Authorization تحت وب است به این صورت که کلاینت نام کاربری و رمز ورود خود را به سرور ارسال میکند و سرور در صورت درست بودن اطلاعات (Authenticate) کدی با محتوای base64 تولید میکند و آن را به کلاینت ارسال میکند.

از اینجا به بعد کلاینت برای دریافت اطلاعات از سرور فقط کافی است کد (نشان) دریافت شده را درون Header قرار دهد و در هر درخواست به سرور ارسال کند. سرور از روی الگوریتم داده ها را به امضای دیجیتال تبدیل میکند و آن را با امضای نشان مطابقت میدهد.

نشان JWT شامل سه بخش است :

بخش اول Header که نوع الگوریتم تولید امضا را مشخص میکند.

بخش دوم Payload که محتوای اطلاعات شامل نام کاربری، آی دی یا سمت و ... است.

بخش سوم Signature که یک امضای دیجیتال است که از روی الگوریتم رمزگذاری و اطلاعات بخش دوم تهیه میشود تا اطمینان حاصل شود محتوای نشان تغییر نمیکند.

هر بخش با نقطه از هم تفکیک میشود.

این روش گاهی Bearer token هم خوانده میشود.

اطلاعات توکن با فرمت Base64 جابجا میشود و رمزنگاری نشده است و توسط هر کس قابل خواندن است مگر اینکه از روشهایی مثل JWS یا JWE استفاده شود.
بررسی و مقایسه کلمات کلیدی in و out و ref در سی شارپ

https://youtu.be/9_eDA-uzHhw
مقایسه لیست و آرایه در سی شارپ

https://youtu.be/7slIziQPBgU
چک کردن وضعیت SDK های نصب شده در دات نت

با استفاده از دستور
dotnet sdk check

در دات نت 6 به بعد می توانید گزارشی از وضعیت نسخه های دات نت نصب شده بدست آورید. این گزارش به شما اعلام میکند که کدام نسخه های دات نت نصب شده است و آیا نسخه جدیدتری برای دانلود و نصب وجود دارد یا خیر.
متدهای جنریک در سی شارپ

https://youtu.be/eP1WyWp2psc
لوگ کردن رویدادها در EF Core 5.0

https://youtu.be/Oe4qN43mk90
ابزار TempData چطور کار میکند؟

https://youtu.be/8qfz6OYyBa4
Forwarded from کدهک
در ویژوال استودیو می توانید محتوای JSON را از کلیپ بورد مستقیما به کلاسهای سی شارپ تبدیل کنید.

برای استفاده ابتدا باید JSON را به کیپبورد کپی کنید و در VS یک کلاس خالی ایجاد کنید سپس Paste کنید.
در ASP NET Core ابزار IoC Container از سه روش Scoped و Transient و Singleton پشتیبانی می کند. در این ویدیو اثر استفاده از هرکدام را بررسی می کنیم

https://youtu.be/OhcYyK-w5Mg
شمارش خودکار ارجاع یا ARC روشی است که در زبانهایی مانند Objective-C و Swift برای مدیریت حافظه استفاده میشود.

در این روش پاکسازی حافظه یک شی زمانی انجام میشود که دیگر هیچ رفرنسی به آن داده نشده باشد.

در GC که #C و Java از آن استفاده میکنند پاکسازی حافظه در بازه های زمانی اتفاق می افتد و باعث مکث در برنامه میشود. همچنین هنگامی که حافظه سیستم پر میشود باید GC در بازه های زمانی کوتاهتر اجرا شود.

در ARC رفرنس های داده شده به شی یا گرفته شده از آن شمارش میشود و زمانی که تعداد آنها به صفر میرسد حافظه شی تخلیه میشود. این روش نیاز به الگوریتم ساده تری دارد و جایی که منابع حافظه محدود است (موبایل) کارایی بیشتری دارد.

اما ARC قادر به مدیریت Reference Cycle نیست یعنی زمانی که شی A فقط به شی B وابسته باشد و برعکس تعداد رفرنس ها هیچوقت صفر نمیشود و نیاز به مکانیزم بیرونی برای تشخیص و پاکسازی بوجود می آید در غیر این صورت Memory Leak پیش می آید.

همچنین دفعات زیاد رفرنس دهی یا حذف رفرنس از شی در ARC غیر بهینه عمل میکند. در حالی که در GC تاثیر نمیگذارد.

در iOS از نسخه 5 به بعد از ARC استفاده میشود.