.NET Fun
1.78K subscribers
83 photos
58 videos
3 files
179 links
Let's Connect!

Linkedin: https://www.linkedin.com/in/babak-taremi

Github: https://github.com/babaktaremi

Twitter: https://twitter.com/BabakTaremi

Telegram: @bob_tm

دانلود دوره های برنامه نویسی کاملا رایگان:
@DotNetFunBot
Download Telegram
اولین دورهمی آنلاین Code Lodge ساعاتی پیش برگزار شد. از همه‌تون بابت استقبال گرمتون ممنونیم! شروعی قوی برای مسیری هیجان‌انگیزی که در تیم Code Lodge در نظر گرفتیم. حتماً Code Lodge رو توی شبکه‌های اجتماعی دنبال کنید تا از اتفاقات جذابی که قراره بیفته جا نمونید.

LinkedIn: https://www.linkedin.com/company/codelodge/

Telegram: https://t.iss.one/CodeLodge

Event Calendar: https://lu.ma/CodeLodge
خب توی سی شارپ ۱۳ تایپ جدید داریم! با اومدن Extension Types دیگه فقط محدود به نوشتن Extension Method نیستیم و میتونیم یک فیلد یا پراپرتی رو بعنوان Extension برای یک تایپ خاص تعریف کنیم. حتی میتونیم یک تایپ خاص رو Implicit طور از یک تایپ دیگه بعنوان اکستنشن تعریف کنیم. سینتکس عجیبی داره ولی بنظرم خیلی کاربردی میتونه باشه:

public implicit extension PersonExtension for Person
{
public bool IsLead
=> this.Organization
.Teams
.Any(team => team.Lead == this);
}



Join: https://t.iss.one/DotNetIsFun
کلیپ مربوط به Outbox Pattern هم ضبط شد و فردا منتشر میشه ( حدودای ساعت ۱۱ صبح) سعی کردم توی یک ساعت هم Outbox Pattern رو توضیح داده باشم و هم اون رو کامل توی یک پروژه پیاده سازی کرده باشیم. ( جدا از بحث کانال و برنامه نویسی، بردن تیم محبوبت یه جون به جونات اضافه میکنه😁😁❤️)

Join: https://t.iss.one/DotNetIsFun
Media is too big
VIEW IN TELEGRAM
به کمک Outbox Pattern میتونیم این تضمین رو بدیم که event ها از دست نمیرن و حتی اگه سرویس مربوط به اون event مشکل داشته باشه، ما اون رو جایی ثبت کردیم و میتونیم روی Retry داشته باشیم و اینجوری سرویسی قابل اطمینان خواهیم داشت که موقع بوجود اومدن مشکل در سرویس های دیگه، به کار خودش بدون مشکل ادامه خواهد داد و فلو های نصفه و نیمه درش بوجود نخواهد اومد. در این ویدیو حدودا یک ساعته به بررسی این پترن میپردازیم و به کمک EF Core و MediatR این پترن رو از صفر پیاده سازی میکنیم
سرفصل ها:

- Project Structure
- Detecting the problem
- Creating Outbox Entity Using EF Core and Conversion
- Registering Outbox messages
- Creating Outbox message handler
- Creating Outbox message publisher
- Automating message publishing

Code: https://github.com/babaktaremi/Outbox.Pattern.Sample

پ‌ن: اگه از این قسمت خوشتون اومد با دادن ⭐️به پروژه ای که لینکش رو گذاشتم حمایت کنید.

Join: https://t.iss.one/DotNetIsFun
بات دانلود دوره های پولی رو که یادتون نرفته؟؟ یه دوره خیلی خفن راجب گیت تحت عنوان Git Branching And Merging از Pluralsight داره داخلش آپلود میشه که رایگان میتونید دانلود کنید.

آدرس بات: @DotNetFunBot
Forwarded from CodeLodge
در این قسمت از سری پادکست‌های Code Lodge، به موضوع تست نویسی و اهمیت آن در توسعه نرم‌افزار می‌پردازیم. تست نویسی، فرآیندی ضروری برای تضمین کیفیت و عملکرد نرم‌افزارها است که با اجرای صحیح آن، می‌توان از بروز خطاها و مشکلات جلوگیری کرد. در این اپیزود، به بررسی اصول و مبانی تست نویسی، دلایل اهمیت آن و روش‌های انجام آن خواهیم پرداخت. همچنین، تلاش می‌کنیم تا با ارائه تجربیات و نکات عملی، به درک بهتری از تست نویسی و چگونگی اجرای موثر آن برسیم.

میزبان‌های شما در این اپیزود:
رامبد مقدم
بهنیا آزاد

این ایپزود را می توانید از طریق لینک های زیر هم بشنوید :

- 🔗Spotify

- 🔗Amazon

- 🔗Castbox

-🔗Apple podcast

-🔗 Shenoto


#Codelodge
#Software
#Testing
#softwareDeveloper
#SoftwareEngineer
@codeLodge
همیشه چالش رو دوست داشتم. این Stack up ای که Pluralsight داره خیلی باحاله. یه سوال رو اشتباه جواب بدی باید فرداش از اول با سوالات جدید شروع کنی. ایشالا دفعه بعد اول!

Join: https://t.iss.one/DotNetIsFun
هفته پیش تقریبا ۲۰ تا پیام داشتم که راجب Saga Pattern صحبت کنیم
به روی چشم. هفته بعد یک ویدیو مفصل راجبش خواهیم داشت

Join : https://t.iss.one/DotNetIsFun
کارای ضبط و ادیت Saga Pattern هم انجام شد و چهارشنبه منتشر میشه. نزدیک به 7 ساعت برای آماده سازی ساختار پروژه و مثال مناسبش وقت گذاشتم که اگه مرحله مرحله ضبطش میکردم میتونستم به عنوان دوره (میکروسرویس پیشرفته) مثل خیلیا با خدا تومن قیمت بفروشم😂
ولی هدف من این نیست که الکی یه چیزی رو با مسائل بی ربط پر کنم و بفروشمش. اینجا دور هم جمع شدیم که اصل مطلبی که قراره راجبش صحبت کنیم رو درست یاد بگیریم. هدف هم همین خواهد بود که تا حد ممکن مطالب رو رایگان (یا با قیمت معقول) منتشر کنم که همه بتونن ازش استفاده کنن. حمایت شما و معرفی کردن کانال به دوستاتون بزرگترین دارایی و دلگرمی منه❤️

Github Repository:https://github.com/babaktaremi/OrderManagement.Saga.Example

Join: https://t.iss.one/DotNetIsFun
Media is too big
VIEW IN TELEGRAM
یکی از پیچیده‌ترین و در عین حال پرکاربردترین الگوهایی که برای مدیریت تراکنش‌های توی میکروسرویس‌ها و سیستم‌های توزیع‌شده استفاده می‌شه، الگوی Saga هست. این الگو کلی مزیت داره، از جمله:

- می‌تونیم یک Transaction بزرگ رو به چند کار کوچکتر تقسیم کنیم و اون رو مرحله به مرحله با مدیریت خوب جلو ببریم

- اگه تو یکی از این مراحل خطایی پیش بیاد، می‌تونیم به یک حالت پایدار برگردیم و از اونجا کار رو ادامه بدیم

- به سرویس‌های مختلف توی میکروسرویس‌هامون استقلال می‌ده و وابستگی‌ها رو کم می‌کنه (Loose Coupling)

- نسبت به روش‌های دیگه برای مدیریت تراکنش‌های توزیع‌شده راحت‌تره (مثلاً حتماً می‌دونید که Two Phase Commit چه دردسر بزرگیه!)

توی این ویدیو به بررسی کامل این الگو می‌پردازیم و توی یک پروژه واقعی با استفاده از Masstransit و ترکیب اون با RabbitMQ و EF Core پیاده‌سازیش می‌کنیم.

پ‌ن: آدرس ریپوی مربوط به کدهای این قسمت رو هم در انتها قرار دادم. اگه این ویدیو براتون جالب بود، ممنون میشم با دادن ⭐️ از اون حمایت کنید

Code Repo:
https://github.com/babaktaremi/OrderManagement.Saga.Example

Join: https://t.iss.one/DotNetIsFun
.NET Fun
موضوع کلیپ بعدیمون چی باشه؟ تو کامنت های این پست بگید Join: https://t.iss.one/DotNetIsFun
اگه محتوای کانال رو مشاهده کرده باشید میدونید که من اهل تاپیک های ساده و پیش و پا افتاده نیستم. یا باید مبحث پیچیده باشه یا خیلییی عمیق یه بحثی رو باهم بررسی کنیم (خیلیا بمن پیام میدن میگن ازت متنفریم چون مباحثی که میگی باعث میشه حس کنیم از برنامه نویسی هیچی بلد نیستیم و دلسرد بشیم😂 من کوچیک و شاگرد همتونم تو بحث برنامه نویسی❤️)

یه ایده دیوانه وار دارم که تو قالب چنتا میت ( یا ویدیو) بیایم یه سرویس Messaging از صفر با استفاده از Actor Pattern و Blazor بنویسیم. البته فعلا در حد ایدس باید ببینیم چقدر طرفدار داره😁

Join: https://t.iss.one/DotNetIsFun
همین الان با بابک عزیز
خرسِ برنامه نویس
همین الان با بابک عزیز
یه کار بحث برانگیز با بهنیا ضبط کردیم😁😁

کانال Code Lodge رو داشته باشید:

https://t.iss.one/CodeLodge
Forwarded from TondTech (مسعود بیگی)
🔔🚀معرفی فیچر جدیدی که خستگی این چند وقت رو از تن من دراورد، مخصوصا که بیشتر کارهاش رو اعضای جدید تیم انجام دادن . از این به بعد میتونید قبل از دانلود یه کتاب از نویسنده ش سوال بپرسید، و مطمئن باشید که نیازهاتون رو برآورده میکنه یا نه؟ یا حتی در حل تمرین ها و خلاصه برداری هاتون ازش کمک بگیرید.

ممنون خواهم شد که این پیام رو با دوستانتون در میون بگذارید.😎🙏

راستی اگر نمیدونید از Refhub.ir میتونید کتاب های مورد نیاز زبان اصلی تون رو به راحتی دانلود کنید. همه چیز رو در ویدیو کامل توضیح دادم.
https://www.youtube.com/watch?v=2crTUaGgg0M
#مسعودبیگی #refhub
@tondTech
خیلی از رفقا درخواست آموزش GraphQL رو داشتن. یه ویدیو آموزشی در موردش خواهیم داشت و هم سمت سرورش رو باهم بررسی میکنیم و هم استفاده از اون توی Blazor Web Assembly

Join : https://t.iss.one/DotNetIsFun
اینم یه پروژه فان دیگه که Blazor Web Assembly نوشتم و روی Github Pages منتشر کردم. میتونید توی اون Markdown رو به HTML تبدیل کنید. از Syntax Highlighting هم پشتیبانی میکنه

Git Repo: https://github.com/babaktaremi/MarkdownConverter

Project website: https://babaktaremi.github.io/MarkdownConverter/

Join: https://t.iss.one/DotNetIsFun
Media is too big
VIEW IN TELEGRAM
خیلی وقت ها مجبوریم برای یک سری از دیتاها API های متفاوت توسعه بدیم. توی یکیش لیستی از اون دیتا رو برگردونیم، توی یکی دیگش جزییات رو برگردونیم و یا اون دیتا رو بر اساس متغیر های مختلف گروه بندی کنیم که تهش اینقدر اینکار تکراری میشه که از زندگی خسته میشیم! اینجاست که GraphQL میتونه خیلی کمک کننده باشه.
در این کلیپ نسبتا طولانی به طور مفصل به بررسی GraphQL میپردازیم و هم سمت API اون رو توسعه میدیم و هم با یک اپ Blazor Web Assembly از اون استفاده میکنیم.

سرفصل ها:

- Introduction
- Project Structure
- Defining First Query Using "Hot Chocolate"
- Integrating EF Core With " Hot Chocolate"
- Exploring "Banana Cake Pop" Playground
- Installing "StrawberryShake" Tools
- Defining Pagination Query
- Source Generating Blazor Components From GraphQL Queries
- Using Dependency Injection For GraphQL Client

Code Repo: https://github.com/babaktaremi/GraphQL.Samples

Join: https://t.iss.one/DotNetIsFun