Media is too big
VIEW IN TELEGRAM
توی این ویدیو به دو ویژگی باحال و گودرتمند توی EF Core پرداختیم که هم میشه استفاده های خوب ازش کرد و هم میشه کدبیس رو به گند و کثافت کشید و صدای هم تیمی ها رو باهاش در آورد ( ولی جدا از شوخی این EF Core یکی از زیبایی های دنیای دات نت هست که خیلی کار ها رو بی سر و صدا پشت صحنه برامون به بهترین شکل انجام میده)
Join: @DotNetIsFun
Join: @DotNetIsFun
.NET Fun
به به 😍😍 دیگه بهونه ای برای استفاده نکردن از این جیگر نیست...
چرا در مورد رایدر همه دنبال ویدیو و آموزشن؟😂
حالا اگه فرصت شد یه ویدیو کوتاه راجع بهش میسازیم ولی یه بار نصب کنید یه پروژه ساده کنسول باهاش بیارید بالا همه چیش دستتون میاد. چیز سختی نیست بخدا. تو عمل هم متوجه تفاوت ها و مزیت هاش نسبت به Visual Studio میشید
Join: @DotNetIsFun
حالا اگه فرصت شد یه ویدیو کوتاه راجع بهش میسازیم ولی یه بار نصب کنید یه پروژه ساده کنسول باهاش بیارید بالا همه چیش دستتون میاد. چیز سختی نیست بخدا. تو عمل هم متوجه تفاوت ها و مزیت هاش نسبت به Visual Studio میشید
Join: @DotNetIsFun
مزیت های رایدر بنظر من:
- پرفورمنس بهتری داره
-فیچر Code decompile خیلی خوبی داره که خیلی جاها میتونه کمک کنه
-بشخصه با فیچر IL Viewer ای که داره خیلی حال میکنم
-اینتلیسنس و code suggestion خیلی بهتری نسبت به ویژوال استدیو ( بدون ریشارپر) داره
- ابزار خیلی بهتر و تمیز تری برای دیباگ کد در اختیار قرار میده (Thread View و Memory Snapshot اش رو خیلی دوست دارم)
- قسمت Market Place خیلی خوبی داره! من توی یک پروژه هم از Sql Server هم Kafka و هم Redis استفاده میکنم و همه این ها توی رایدر قابل مشاهده و مدیریت هست و ابزارش رو از مارکتی که داره میتونید دانلود کنید و بشخصه نیاز ندارم که بین محیط های مختلف سوییچ کنم
- مدیریت کامندهای EF Core خیلی قشنگ تر و راحتتر توی Rider انجام میشه. در رابطه با کانفیگ انتیتی مدل ها هم پیشنهاد های خیلی خوبی میده ( مثلا اگه تایپ استرینگ براش max length نذاشته باشید بهتون وارنینگ میده)
- ابزار خیلی بیشتری رو در ارتباط با گیت در اختیارتون قرار میده ( یه نکته خیلی باحالش این بود که من توی یکی از کامنت هام todo داشتم و رایدر تشخیص داد و بهم وارنینگ داد که todo داری! کامیت کنم یا نه؟)
- مدیریت پکیج ها و dependency های پروژه توی رایدر برای من خیلی راحتتره
- پرفورمنس بهتری داره
-فیچر Code decompile خیلی خوبی داره که خیلی جاها میتونه کمک کنه
-بشخصه با فیچر IL Viewer ای که داره خیلی حال میکنم
-اینتلیسنس و code suggestion خیلی بهتری نسبت به ویژوال استدیو ( بدون ریشارپر) داره
- ابزار خیلی بهتر و تمیز تری برای دیباگ کد در اختیار قرار میده (Thread View و Memory Snapshot اش رو خیلی دوست دارم)
- قسمت Market Place خیلی خوبی داره! من توی یک پروژه هم از Sql Server هم Kafka و هم Redis استفاده میکنم و همه این ها توی رایدر قابل مشاهده و مدیریت هست و ابزارش رو از مارکتی که داره میتونید دانلود کنید و بشخصه نیاز ندارم که بین محیط های مختلف سوییچ کنم
- مدیریت کامندهای EF Core خیلی قشنگ تر و راحتتر توی Rider انجام میشه. در رابطه با کانفیگ انتیتی مدل ها هم پیشنهاد های خیلی خوبی میده ( مثلا اگه تایپ استرینگ براش max length نذاشته باشید بهتون وارنینگ میده)
- ابزار خیلی بیشتری رو در ارتباط با گیت در اختیارتون قرار میده ( یه نکته خیلی باحالش این بود که من توی یکی از کامنت هام todo داشتم و رایدر تشخیص داد و بهم وارنینگ داد که todo داری! کامیت کنم یا نه؟)
- مدیریت پکیج ها و dependency های پروژه توی رایدر برای من خیلی راحتتره
دیشب میخواستم یه چیزی رو روی کافکا با Masstransit تست کنم، حوصله نوشتن docker-compose و کانفیگای چرت و پرت کافکا رو نداشتم. اینجا بود که Aspire خیلی به کارم اومد و کاری که برای من شاید بیشتر از یک ساعت طول میکشید رو توی ۵ دقیقه انجام داد. خدا David Fowler رو برامون حفظ کنه!
Join: @DotNetIsFun
Join: @DotNetIsFun
اگه کسی پرسید عملکرد GC چجوری روی سیستم تاثیر میذاره این عکس رو نشونش بدید.
Join: @DotNetIsFun
Join: @DotNetIsFun
Forwarded from thisisnabi.dev [Farsi]
حالا که دات نت ۹ داره میاد
وقتی می خواید فریمورک یک پروژه رو ارتقا بدین باید به breaking changes های نسخه جدید فریمورک آشنا باشید.
شاید پروژه تون بیلد و حتی ران بشه، اما باید حواستون باشه که عملکرد نرم افزار شما می تونه متاثر باشه از این قضیه.
وقتی می خواید فریمورک یک پروژه رو ارتقا بدین باید به breaking changes های نسخه جدید فریمورک آشنا باشید.
شاید پروژه تون بیلد و حتی ران بشه، اما باید حواستون باشه که عملکرد نرم افزار شما می تونه متاثر باشه از این قضیه.
امروز ساعت ۱۹:۳۰ کنفرانس دات نت شروع میشه و دات نت ۹ رسما ریلیز میشه.
به دات نت ۹ آپدیت میکنید؟ یا صبر میکنید ۱۰ بیاد؟
به دات نت ۹ آپدیت میکنید؟ یا صبر میکنید ۱۰ بیاد؟
Anonymous Poll
38%
بله
62%
خیر
.NET Fun
.NET Conf keynote: https://youtu.be/ikSNL-lxolc?si=QWta0sXWDjxhDY2C
خنده دار ترین Opening Scene 😂
از دولوپر و مهندس نرم افزار بازیگر درنمیاد بخدا
از دولوپر و مهندس نرم افزار بازیگر درنمیاد بخدا
اگه بنچمارک ها راجع به Adaptive GC حقیقت داشته باشه یه فیچر انقلابی رو خواهیم داشت که memory management رو برامون خیلی خیلی بهبود میده! ( بشخصه ازش خیلی استقبال میکنم چون مصرف مموری بالا توی high throughput رو به چشم دیدم)
.NET Fun
بررسی تمامی فیچر های جدید سی شارپ 13 در 18 دقیقه Join: @DotNetIsFun
به کلمه کلیدی field اشاره ای نشده چون هنوز جزو فیچرهای preview هست و توی سی شارپ ۱۳ نیست ( فیچر واقعا مزخرفی هم هست نمیدونم چرا اینقدر خواهان داشته)
پروژه Clean Architecture به دات نت 9 آپدیت شد و میتونید اون رو از طریق Nuget دریافت کنید.
علاوه بر آپدیت، کلی تغییر و بهبود توی این ورژن داشتیم که میتونید لیست کاملش رو توی لینک زیر ببینید:
https://github.com/babaktaremi/Clean-Architecture-Template/releases/tag/9.0.0
لینک خود ریپو:
https://github.com/babaktaremi/Clean-Architecture-Template
اگه مشکلی توی پروژه دیدید یا بهبودی رو در نظر دارید حتما PR بدید و مشارکت کنید و اگه از این پروژه خوشتون اومد با دادن ⭐️ حمایت کنید.
حمایت شما دلگرمی بزرگیه که به ساپورت و آپدیت این پروژه در کنار شما ادامه بدم.
Join: @DotNetIsFun
علاوه بر آپدیت، کلی تغییر و بهبود توی این ورژن داشتیم که میتونید لیست کاملش رو توی لینک زیر ببینید:
https://github.com/babaktaremi/Clean-Architecture-Template/releases/tag/9.0.0
لینک خود ریپو:
https://github.com/babaktaremi/Clean-Architecture-Template
اگه مشکلی توی پروژه دیدید یا بهبودی رو در نظر دارید حتما PR بدید و مشارکت کنید و اگه از این پروژه خوشتون اومد با دادن ⭐️ حمایت کنید.
حمایت شما دلگرمی بزرگیه که به ساپورت و آپدیت این پروژه در کنار شما ادامه بدم.
Join: @DotNetIsFun
از تک تک کلماتی که Stephen Toub توی ارائش راجع به بهبود های پرفورمنسی دات نت ۹ گفت میشه یک مقاله کامل در آورد. مگه میشه یه نفر اینقدر خفن باشه...
Join: @DotNetIsFun
Join: @DotNetIsFun
تفاوت رفتار GC در دات نت 8 و دات نت 9
توی دات نت 8 رفتار GC روی پرفورمنس و Throughput تمرکز داره و سعی میکنه زیاد توی Memory Management دخالت نکنه. ( تعداد دفعاتی که GC رخ داده صفر هست)
ولی توی دات نت 9 و با فعال شدن Adaptive GC میبینیم که تعداد دفعاتی که GC رخ داده بیشتر هست و مصرف مموری هم بسیار کمتر هست !
یکم تاثیر منفی روی Throughput داره ولی از اون طرف Gain ای که از مصرف کم مموری بدست میارید قطعا ارزشش رو داره
واقعا دم تیم دات نت گرم!
Join: @DotNetIsFun
توی دات نت 8 رفتار GC روی پرفورمنس و Throughput تمرکز داره و سعی میکنه زیاد توی Memory Management دخالت نکنه. ( تعداد دفعاتی که GC رخ داده صفر هست)
ولی توی دات نت 9 و با فعال شدن Adaptive GC میبینیم که تعداد دفعاتی که GC رخ داده بیشتر هست و مصرف مموری هم بسیار کمتر هست !
یکم تاثیر منفی روی Throughput داره ولی از اون طرف Gain ای که از مصرف کم مموری بدست میارید قطعا ارزشش رو داره
واقعا دم تیم دات نت گرم!
Join: @DotNetIsFun
تفاوت Memory Usage در دات نت 8 و دات نت 9 در Throughput یکسان
همونطور که میبینید با فعال شدن Adaptive GC مصرف مموری بسیار کمتر شده و GC تعداد دفعات بیشتری وارد عمل شده. نتیجه این بنچمارک بشخصه خیلی خوشحالم کرد!
Join: @DotNetIsFun
همونطور که میبینید با فعال شدن Adaptive GC مصرف مموری بسیار کمتر شده و GC تعداد دفعات بیشتری وارد عمل شده. نتیجه این بنچمارک بشخصه خیلی خوشحالم کرد!
Join: @DotNetIsFun
Forwarded from tech-afternoon (Amin Mesbahi)
✨ DORA چیه؟
فریمورک DORA که مختصر شدهی DevOps Research and Assessment است، یک فریمورک برای تحقیق و ارزیابیه که تمرکزش روی بهبود مستمر تحویل نرمافزار در سازمانهاست. هدف DORA کمک به تیمها و سازمانها برای بهبود عملکرد و شناسایی نقاط ضعف فرآیند توسعه و عملیاتشونه. DORA بر اساس گزارشهای سالانه مثل "Accelerate State of DevOps" و ۴ معیار کلیدی (DORA Metrics) شناخته میشه:
اول: Lead Time for Changes
زمان لازم برای انتقال تغییرات کد به محیط تولید.
دوم: Deployment Frequency
تعداد دفعات دیپلوی به محیط تولید.
سوم: Change Failure Rate
درصد دیپلویهای ناموفق که باعث مشکلات در محیط تولید میشه.
چهارم: Time to Restore Service
زمان لازم برای رفع خرابی و بازگرداندن سیستم به حالت پایدار.
🧐 به چه درد میخوره؟
فریمورک DORA به تیمها کمک میکنه تا عملکرد خودشون رو ارزیابی کنن و با استفاده از «داده» تصمیم بگیرن که کدوم بخشها نیاز به بهبود دارن. گزارشهای DORA به سازمانها کمک میکنه تا با بررسی این معیارها، روند بهبود مستمر رو پیادهسازی کنن و بهترین عملکرد رو به دست بیارن.
⚙️ استفاده از DORA برای بهبود پایدار عملکرد مهندسی سازمانه، چند موضوع مهم:
🔹 چالش جمعآوری داده: به دست آوردن دادههای دقیق برای متریکهای DORA همیشه آسون نیست. ابزارهای اتوماتیک کمک میکنن، ولی هنوز هم تلاش زیادی برای ادغام این ابزارها در اکوسیستم سازمان نیاز هست.
🔹 اهمیت بازخورد: تیمها میتونن از گزارشهای DORA به عنوان بخشی از فرآیند بهبود مستمر استفاده کنن، مشابه یک ریتروسپکتیو تیمی که با تحلیل گزارشها به اقدامات جدید میرسن.
🔹 تأثیرات پیادهسازی درست DORA: پیادهسازی درست DORA خیلی به رهبری و نحوه حمایت از اون بستگی داره. اگر تیمها آزادی عمل داشته باشن تا بهبودهای خودشون رو انتخاب کنن، نتایج پایدارتری به دست میآد.
🔹تیمهای موفق از استانداردهای صنعتی الهام میگیرن: تبیین قابلیتهای DORA باعث میشه تا تیمها بهتر بتونن معیارها رو درک کنن و از "این نظر منه" و "نظر تو چیه" فاصله بگیرن و به یک استاندارد صنعتی مشترک برسن.
🧾 نکات جالب از گزارش DORA 2024
🔸 رشد استفاده از هوش مصنوعی: پذیرش هوش مصنوعی داره به شدت رشد میکنه و تیمها گزارش دادن که استفاده از AI باعث افزایش بهرهوری، کیفیت کد، و سرعت بررسیهای کد شده. با این حال، استفاده از AI تأثیر منفی کوچکی روی پایداری تحویل نرمافزار داشته.
🔸 مهندسی پلتفرم: گزارش اشاره کرده که تیمهای استفادهکننده از پلتفرمهای داخلی ۱۰ درصد بهرهوری بیشتری داشتن، ولی کاهش ۸ درصدی در throughput و ۱۴ درصدی در stability هم مشاهده شده.
🔸 تثبیت اولویتها: سازمانهایی که اولویتهای پایدار دارن، بهرهوری بیشتری دارن و سطح فرسودگی (burnout) کارکنان پایینتره.
❇️ خلاصه اینکه، روشمند و ساختاریافته در مورد فرایندهامون رفتار کنیم 😉
🔗 وبسایت DORA
🔗 گزارش سال ۲۰۲۴
فریمورک DORA که مختصر شدهی DevOps Research and Assessment است، یک فریمورک برای تحقیق و ارزیابیه که تمرکزش روی بهبود مستمر تحویل نرمافزار در سازمانهاست. هدف DORA کمک به تیمها و سازمانها برای بهبود عملکرد و شناسایی نقاط ضعف فرآیند توسعه و عملیاتشونه. DORA بر اساس گزارشهای سالانه مثل "Accelerate State of DevOps" و ۴ معیار کلیدی (DORA Metrics) شناخته میشه:
اول: Lead Time for Changes
زمان لازم برای انتقال تغییرات کد به محیط تولید.
دوم: Deployment Frequency
تعداد دفعات دیپلوی به محیط تولید.
سوم: Change Failure Rate
درصد دیپلویهای ناموفق که باعث مشکلات در محیط تولید میشه.
چهارم: Time to Restore Service
زمان لازم برای رفع خرابی و بازگرداندن سیستم به حالت پایدار.
🧐 به چه درد میخوره؟
فریمورک DORA به تیمها کمک میکنه تا عملکرد خودشون رو ارزیابی کنن و با استفاده از «داده» تصمیم بگیرن که کدوم بخشها نیاز به بهبود دارن. گزارشهای DORA به سازمانها کمک میکنه تا با بررسی این معیارها، روند بهبود مستمر رو پیادهسازی کنن و بهترین عملکرد رو به دست بیارن.
⚙️ استفاده از DORA برای بهبود پایدار عملکرد مهندسی سازمانه، چند موضوع مهم:
🔹 چالش جمعآوری داده: به دست آوردن دادههای دقیق برای متریکهای DORA همیشه آسون نیست. ابزارهای اتوماتیک کمک میکنن، ولی هنوز هم تلاش زیادی برای ادغام این ابزارها در اکوسیستم سازمان نیاز هست.
🔹 اهمیت بازخورد: تیمها میتونن از گزارشهای DORA به عنوان بخشی از فرآیند بهبود مستمر استفاده کنن، مشابه یک ریتروسپکتیو تیمی که با تحلیل گزارشها به اقدامات جدید میرسن.
🔹 تأثیرات پیادهسازی درست DORA: پیادهسازی درست DORA خیلی به رهبری و نحوه حمایت از اون بستگی داره. اگر تیمها آزادی عمل داشته باشن تا بهبودهای خودشون رو انتخاب کنن، نتایج پایدارتری به دست میآد.
🔹تیمهای موفق از استانداردهای صنعتی الهام میگیرن: تبیین قابلیتهای DORA باعث میشه تا تیمها بهتر بتونن معیارها رو درک کنن و از "این نظر منه" و "نظر تو چیه" فاصله بگیرن و به یک استاندارد صنعتی مشترک برسن.
🧾 نکات جالب از گزارش DORA 2024
🔸 رشد استفاده از هوش مصنوعی: پذیرش هوش مصنوعی داره به شدت رشد میکنه و تیمها گزارش دادن که استفاده از AI باعث افزایش بهرهوری، کیفیت کد، و سرعت بررسیهای کد شده. با این حال، استفاده از AI تأثیر منفی کوچکی روی پایداری تحویل نرمافزار داشته.
🔸 مهندسی پلتفرم: گزارش اشاره کرده که تیمهای استفادهکننده از پلتفرمهای داخلی ۱۰ درصد بهرهوری بیشتری داشتن، ولی کاهش ۸ درصدی در throughput و ۱۴ درصدی در stability هم مشاهده شده.
🔸 تثبیت اولویتها: سازمانهایی که اولویتهای پایدار دارن، بهرهوری بیشتری دارن و سطح فرسودگی (burnout) کارکنان پایینتره.
❇️ خلاصه اینکه، روشمند و ساختاریافته در مورد فرایندهامون رفتار کنیم 😉
🔗 وبسایت DORA
🔗 گزارش سال ۲۰۲۴
dora.dev
DORA | Get Better at Getting Better
DORA is a long running research program that seeks to understand the capabilities that drive software delivery and operations performance. DORA helps teams apply those capabilities, leading to better organizational performance.