کدهک
1.93K subscribers
1.3K photos
7 videos
1 file
675 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
شمارش معکوس برای Build 2021

تا کمتر از یک هفته دیگر کنفرانس Build مایکروسافت شروع به کار میکند. این رویداد به صورت آنلاین برگزار میشود و از طریق سایت مایکروسافت همچنین Youtube قابل تماشاست.

بیلد فرصتی است برای مایکروسافت که به معرفی ابزار و تکنولوژیهای خود در زمینه توسعه نرم افزار بپردازد. انتظار میرود از پیش نمایش نسخه جدید Visual Studio 22 هم رو نمایی شود.

جلساتی درباره Blazor و دات نت 6 و سی شارپ 10 هم در نظر گرفته شده است.

https://codehaks.com/go/build21
Software Philosohpy Talk 03
Software Philosophy
سومین #گپ_تکنیکال «فلسفه نرم‌افزار»
با موضوع: «Software Architecture: Performance»

با حضور
#مهران_داودی
#یاسر_مرادی

لطفا نظرتون رو هم در مورد گپ این هفته بنویسید برامون :)

@SoftwarePhilosophy
@SoftwarePhilosophy
@SoftwarePhilosophy
Security
DotNetZoom
ویس ضبط شده هشتمین گفتگوی فنی #فری_تاک با موضوع Security
ارائه دهندگان : مجتبی تاجیک، محمدجواد ابراهیمی
_________________
@DotNetZoom
Forwarded from DotNetZoom (محمد جواد ابراهیمی)
نهمین گفتگوی فنی #فری_تاک
با موضوع : Security (قسمت دوم)
سه شنبه 4 خرداد، ساعت 21:00
ارائه دهندگان: محمدجواد ابراهیمی، مجتبی تاجیک

در
این گفتگو درباره مهم ترین آسیب پذیری های امنیتی در پروژه های نرم افزاری خصوصا Web Application ها و نیز راه حل ها و Best Practice های جلوگیری از این مشکلات صحبت خواهیم کرد
در این جلسه میزبان مجتبی تاجیک عزیز هستیم که تخصصا تو حوزه امنیت کار میکنه و بیش از 15 سال تجربه داره

جلسه قبلی درباره یه سری موارد صحبت کردیم، این جلسه در مورد باقی موارد صحبت خواهیم کرد، از جمله:
- CSRF/XSRF
- Open/Unvalidated Redirection
- CSP (Content Security Policy)
- SRI (Subresource Integrity)
- CORS (Cross Origin Resource Sharing)
- DDOS
- Security of JWT and Refresh Token
- Key Secrets Storage
- Malicious File Upload
- Decompiling, Obfuscate and Deobfuscate

#فری_تاک یک گفتگوی فنی در مورد توسعه نرم افزار (بیشتر متمرکز بر دات نت) هست که هر هفته سه شنبه ها ساعت 21:00 برگزار میشه
و در آخر ویس ضبط شدش رو همینجا منتشر میکنیم

ویس جلسات قبل رو میتونین با هشتگ #فری_تاک پیدا کنین
___________
@DotNetZoom
آپدیت کردن Entity در EF Core و مدیریت State برای پروپرتی ها

https://youtu.be/eND_VEtcfe0
بیلد 2021 آغاز به کار کرد

ساتیا نادلا مدیر عامل مایکروسافت می گوید :

پیشرفتهایی که پیش بینی میشد در 10 سال آینده اتفاق بیوفتد تنها در یک سال محقق شده است.

دیگر بخشی مجزایی به نام Tech وجود ندارد و همه تجارت ها در زمینه فن آوری و دنیای دیجیتال فعالیت می کنند

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

در صنعت اتوموبیل سازی تعداد استخدام های مربوط به مهندس نرم افزار 35 درصد بیشتر از مهندس مکانیک بوده است. (منبع لینکدین)
تعداد کاربران Microsoft Teams در یک سال گذشته دو برابر شده است.
در یک سال گذشته استخدام به صورت دورکاری 8 برابر شده است.
آینده توسعه اپلیکیشن های مدرن با دات نت

دات نت 6 و ASP NET Core از همیشه سریعتر شده است و EF Core هم از نظر پرفورمنس در جایگاه خوبی در مقایسه با Dapper و سایر ORM ها قرار گرفته است.

قابلیت Minimal API امکان میدهد اپلیکیشن های کوچک و سبک تحت وب پیاده کنید بدون نیاز به Razor Page یا کنترلر ها که در میکروسرویس و فضای ابری کاربرد زیادی دارد.

در سی شارپ 10 امکان تعریف Namespace گلوبال اضافه شده است و دیگر نیاز نیست در هر فایل using قرار بگیرد. همچنین برای تعریف Namespace دیگر نیاز به تعریف اسکوپ جدا وجود ندارد.

بلیزور مجهز به Hotreload شده و بدون بارگذاری و اجرای مجدد برنامه میتوان تغییرات را مشاهده کرد.

امکان ایزوله کردن CSS و پابلیش پروژه به صورت Shadow در ASP NET Core اضافه شده است.

دات نت 6 به همراه MAUI منتشر میشود که امکان ایجاد اپ با کد و سولوشن یکسان در اندروید،ویندوز و مک را فراهم میکند.

https://youtu.be/GJ_PaRNDe9E
با استفاده از Razor Class Library می توانید ویوها و صفحات سایت رو به پروژه ها جدا منتقل کنید.

https://youtu.be/ByHhEebHz1c
Forwarded from برنامه نویس
🔈 جایگزین کردن حروف ی و ک عربی با معادل های فارسی شان در ASP.NET Core

در بسیاری از وب سایت ها، مشکل حرف ی و ک عربی که توسط چینش کیبورد های قدیمی (اکثرا ویندوز 98 و ME فارسی سازی شده در قدیم) هنگام دریافت داده از کاربر وجود دارد.

در این سلسله از پرسش و پاسخ های مطرح شده در سایت barnamenevis.org چند روش مختلف از جمله جایگزین کردن حروف فوق توسط یک Extension Method در هنگام فراخوانی متد SaveChanges در EF، و جایگزین کردن از طریق نوشتن یک کلاس ModelBinder سفارشی برای تایپ String بررسی شده است:

لینک مطلب

#برنامه_نویس
#مطالب_مفید
#مقاله
@barnamenevis_net
چگونه عمر یک اپلیکیشن ASP NET Core را از طریق کد کنترل کنیم؟

https://youtu.be/eH532xt4FI4
اصل CQS بیان میکند که یک متد یا باید وضعیت (State) را تغییر دهد یا باید مقداری را برگرداند. بر مبنای این اصل متدهایی که وضعیت را تغییر میدهند Command و متدهایی که مقداری را بر میگردانند Query خوانده میشوند.

اگر قرار باشد هنگام خواندن یک Value وضعیت آن یا وضعیت Value دیگر تغییر کند میتواند یک نا هماهنگی در سیستم ایجاد کند که در نهایت منجر به باگ یا خطا شود.

اصل CQS با تکنیک CQRS از نظر مفهومی شباهت زیادی دارد . در CQS ما متدهای درون یک کلاس را جدا می کنیم اما در CQRS ساختار برنامه را جدا می کنیم که در نهایت ممکن است تا جدا شدن دیتابیس ها هم پیش رود.

باید توجه کنید که CQS یک اصل یا Principle در برنامه نویسی به حساب می آید و CQRS یک الگوی معماری است.
Forwarded from کدهک
آشنایی با Project Tye

https://youtu.be/PECLYxbPblQ
آموزش کار با CSS Isolation در ASP NET Core 6.0

https://youtu.be/kqdn7dzEyhk
Forwarded from DotNetZoom (محمد جواد ابراهیمی)
🔰گپ و گفت خودمونی و فان

توی این قسمت از #فری_تاک، من و حکیم و معین یه گپ و گفت خودنی و فان داریم
از سوتی هامون توی برنامه نویسی میگیم و ضرر هایی که بالا آوردیم
از تجربه های شکست و موفقیت هامون حرف میزنیم و...
و میگیم و میخندیم و شوخی میکنیم

این قسمت اولین قسمت از این سبک جدید هست که گپ و گفت های خودمونی و فان داریم.
گوش که دادین حتما فیدبک بدین که اگه دوس داشتین بیشتر از اینا بذاریم.
همیشه قرار نیس بحث فنی بکنیم، یه وقتایی هم لازمه بگیم و بخندیم و حال دلمون رو خوب کنیم. (این وسط یه تجربیاتی هم رد و بدل میکنیم)
خوش باشین :)

https://t.me/DotNetZoom/1236
_________________
@DotNetZoom
Forwarded from کدهک
فرق Concurrent با Parallel

برنامه نویسی Concurrent :

در این حالت دو یا چند عملیات را به صورت "همزمان" انجام میدهیم. منظور از همزمانی این است که عملیات ها ممکن است با هم شروع شوند و باهم به اتمام برسند اما لزوما در یک لحظه اجرا نمی شوند.
مثلا شما نمی توانید همزمان با غذا خوردن سوت بزنید.اما می توانید این دو کار را کنار هم انجام دهید!

برنامه نویسی Parallel :

در برنامه نویسی "موازی" ما چند کار را به صورت همزمان انجام میدهیم. این نوع برنامه نویسی فقط روی پردازنده های چند هسته ای ممکن است چون هر هسته در هر لحظه فقط می تواند یک خط کد را اجرا کند.

در پردازنده های تک هسته ای فقط امکان اجرای Concurrent وجود دارد.

اگر پردازنده چند هسته ای باشد برنامه ی Concurrent می تواند از هسته های مختلف کمک بگیرد اما لزوما به آنها احتیاج ندارد.
مقایسه رفتار Thread Pool در متدهای Sync و Async

https://youtu.be/AdauMu7fpkI
مقایسه رفتار Struct و Class و اثر آن بر پرفورمنس دات نت

https://youtu.be/phD97ZFAh_4
Forwarded from کدهک
آشنایی با GUID

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

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

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

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

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

دیتابیس SQL Server و فریم ورک دات نت مستقیما از این نوع داده پشتیبانی میکنند.