CodeForFood @codeforfood Channel on Telegram

CodeForFood

@codeforfood


کانال معرفی محتوای آموزشی مرتبط با برنامه نویسی و دنیای وسیع IT بویژه محصولات مایکروسافت

CodeForFood (Persian)

CodeForFood یک کانال تلگرامی است که به اشتراک گذاری محتوای آموزشی مرتبط با برنامه نویسی و دنیای وسیع IT، به خصوص محصولات مایکروسافت می‌پردازد. اگر به دنبال یادگیری مهارت‌های برنامه نویسی و به روز بودن با تکنولوژی‌های جدید و نوآوری‌های صنعت IT هستید، CodeForFood منبعی عالی برای شماست. با دنبال کردن این کانال، شما به دنیای جذاب برنامه نویسی و تکنولوژی عمیق‌تر و دقیق‌تر وارد خواهید شد. محتوای این کانال شامل مقالات، ویدیوها، و لینک‌های مفید است که به شما کمک می‌کند تا به روزترین مطالب را دنبال کنید و مهارت‌های لازم برای توسعه حرفه‌ای خود را به دست بیاورید. بنابراین، اگر به دنبال بهبود توانایی‌های برنامه نویسی خود و کسب دانش جدید در زمینه IT هستید، حتما این کانال را دنبال کنید و از اطلاعات مفید آن بهره مند شوید.

CodeForFood

16 Feb, 10:04


💡 𝗩𝗶𝘀𝘂𝗮𝗹 𝗦𝘁𝘂𝗱𝗶𝗼 𝐓𝐢𝐩 - 𝗦𝘁𝗶𝗰𝗸𝘆 𝗦𝗰𝗿𝗼𝗹𝗹 𝗙𝗲𝗮𝘁𝘂𝗿𝗲 𝗶𝗻 𝗩𝗶𝘀𝘂𝗮𝗹 𝗦𝘁𝘂𝗱𝗶𝗼 𝟮𝟬𝟮𝟮

🔥The 𝗦𝘁𝗶𝗰𝗸𝘆 𝗦𝗰𝗿𝗼𝗹𝗹 feature was introduced in 𝗩𝗶𝘀𝘂𝗮𝗹 𝗦𝘁𝘂𝗱𝗶𝗼 𝟮𝟬𝟮𝟮 𝘃𝗲𝗿𝘀𝗶𝗼𝗻 𝟭𝟳.𝟱 𝗽𝗿𝗲𝘃𝗶𝗲𝘄 𝟮, enabling you to stick scopes at the top of the editor, ensuring their constant visibility as you navigate through your code.

Various code formats are supported, such as 𝗖#, 𝗖++, 𝗫𝗔𝗠𝗟, and 𝗝𝗦𝗢𝗡.

🚀 How to turn 𝗦𝘁𝗶𝗰𝗸𝘆 𝗦𝗰𝗿𝗼𝗹𝗹 on or off in 𝗩𝗶𝘀𝘂𝗮𝗹 𝗦𝘁𝘂𝗱𝗶𝗼 𝟮𝟬𝟮𝟮?

CodeForFood

14 Feb, 09:56


Financial Data Engineering: Design and Build Data-Driven Financial Products

#pdf #ebook

CodeForFood

12 Feb, 10:03


یک برنامه نویس واقعی باید 40 تا 50 دامنه ثبت شده با کلی نقشه و هدف داشته باشد و حتی هر 5 سال یکبار آنها را Renew کند ، ولی هیچ وقت هیچ کاری با آنها نکند!

اگر شما اقلا 20 تا دامنه ثبت شده با کلی هدف برای هر کدام ندارید، قطعا یک مشکلی یک جایی هست !!

CodeForFood

06 Feb, 15:55


بررسی مفهوم Vector با کمی جزئیات بیشتر !

نمی شود یک دفعه وارد Vector Databases شد وقتی هنوز درست مفهوم Vector در هاله ای از ابهام باشد، لذا در این ویدئو سعی کردیم مفهوم Vector را کمی بازتر کنیم، هرچند در ویدئوی قبلی مشخص شده بود داستان چی است


Tags : #ml #llm #ai #هوش_مصنوعی



Channel : @llmiran



https://www.youtube.com/watch?v=6-2rNuuXjVI

CodeForFood

05 Feb, 14:43


قسمت اول - روند کارکرد LLM ها و سپس بررسی مفهومی Retrieval Models

در این ویدئو در ابتدا نگاهی کوتاه به مراحل دریافت ، بررسی و تولید نتیجه در یک LLM پرداختیم تا مشخص شود نقش vector ها چیست و سپس مشخص شد Retrieval Models چیست و کاربرد آن چیست

لینک پلی لیست : ( https://www.youtube.com/watch?v=YlvP9Z8ixl8&list=PLbluqgRVyY1PiJfWxul468XBdKf2sIWkS )


Tags : #ml #llm #ai #هوش_مصنوعی


https://www.youtube.com/watch?v=kcgct-PyPgU&t=6s

CodeForFood

04 Feb, 14:36


به دنیای LLM ها علاقه مند هستید ؟

این شروع و صرفا مقدمه یک Play List طولانی خواهد بود از شروع بررسی LLM ها و عدم استفاده از یک LLM صرفا به صورت یک Black Box !. قصد دارم از صفر باز کنم که دقیقا آن پشت چه خبر است و به کمک ریاضی ، الگوریتم و IT بتوانیم خودمان یک LLM بسازیم !.

چون همه چیز را قرار است از صفر شروع کنیم، قطعا داستان بسیار طولانی و در بعضی جاها سخت خواهد شد، یا با تصمیم محکم ما را دنبال کنید یا کلا این موضوع را بیخیال شوید !

Tags : #ml #llm #ai #هوش_مصنوعی

https://www.youtube.com/watch?v=YlvP9Z8ixl8

Channel : @llmiran

.

CodeForFood

04 Feb, 02:57


اگر پدر شما پولدار است، این نوشته به درد شما نمی خورد!

چرا باید با پدر پولدار گرفتار خستگی ذهنی بشود اصلا کسی ؟.

همیشه حتی بی دلیل ناناحت هستید؟! - شاید گرفتار خستگی ذهنی شده باشید !!

در این نوشته به بررسی نشانه های خستگی ذهنی پرداخته شده است !



https://www.linkedin.com/posts/alikolahdoozan_%D8%AE%D8%B3%D8%AA%DA%AF%DB%8C-%D8%B0%D9%87%D9%86%DB%8C-%D8%B1%D8%A7%D9%87%D9%86%D9%85%D8%A7%DB%8C-%D8%B3%D8%A7%D8%AF%D9%87-%D9%88-%D8%B1%D9%88%D8%B2%D9%85%D8%B1%D9%87-%D9%88%DB%8C%D8%B1%DA%AF%D9%88%D9%84-activity-7292369051190734850-HdRs?utm_source=share&utm_medium=member_desktop&rcm=ACoAAAddduUBYGgnHEwQB8Mr91IK5Ya2UC793PM

CodeForFood

02 Feb, 15:26


یک مدل بزرگ و قوی ساخته شده توسط مجموعه Meta بر روی سرور لوکال و استفاده از آن در دات نت !

الزاما لازم نیست از کانسپتی مثل DeepSeek بر روی سرور لوکال استفاده کنیم، اگر به مدلهای از پیش Train شده قانع باشیم یا بتوانیم خودمان مدل Train کنیم و به این مدلها اضافه کنیم، مثلا LLaMa 3 هم بد نیست ، مجموعه Meta هم خیلی بی دست و پا نیست. در این ویدئو این مدل بزرگ را به صورت لوکال نصب و سپس API قابل استفاده را درPostMan و در دات نت استفاده نمودیم

#llm
#meta
#deepseek
#ai
#ml



https://www.youtube.com/watch?v=vpvJxkr6r0Y

CodeForFood

01 Feb, 02:21


** شادی ما دزدیده می شود - بخش سوم **

یکی از بزرگ‌ترین موانع خوشبختی، میل به کنترل کردن همه چیز در زندگی است



https://vrgl.ir/L0VvM

CodeForFood

31 Jan, 02:09


شادی ما دزدیده می شود - بخش دوم


شادی تو وجود همه ماست. فقط باید بذاریم خودش رو نشون بده. بهش فرصت بده و ببین چطور زندگی‌ت تغییر می‌کنه. 🌱



https://vrgl.ir/Dnhqy

CodeForFood

30 Jan, 09:18


شادی ما دزدیده می شود - بخش اول

شادی چیزی نیست که باید برایش تلاش کنیم یا منتظر باشیم تا یک روز خودبه‌خود سراغمان بیاید. شادی یک انتخاب است، همین الان و همین لحظه. اما چرا ما اغلب شاد نیستیم؟ خب، چون یک‌سری "دزد" داریم که شادی را از ما می‌گیرند.




https://vrgl.ir/FQ72f

CodeForFood

30 Jan, 07:04


معرفی Janus-Pro ، یک پلتفرم مبتنی بر DeepSeek جهت کار با تصویر و ویدئو و ....

ظاهرا DeepSeek دست از سر رقبا بر نمی دارد و با ارائه Janus-Pro راه را برای سیخ زدن به تصویر و ویدئو هم باز کرد !

در این ویدئو فقط Janus-Pro معرفی شد و در قسمتهای بعدی به سراغ اتصال به آن به صورت لوکال و استفاده از آن در برنامه های خود خواهیم رفت

#chatgpt
#deepseek
#llsm
#ai
#ml


https://www.youtube.com/watch?v=ha-HeW7YdUY

CodeForFood

29 Jan, 14:16


نمونه سوال یک مصاحبه فنی موقعیت Data Engineer در یک شرکت استرالیایی

این سوال را به عنوان سوال مرحله اول یک به عنوان یک SQL Coding Challenge یکی از دوستان باید به صورت Live حل می کرد

صرفا خواستم با روند آن آشنا شوید

#interview
#sql
#dataengineering



https://www.youtube.com/watch?v=yAujzBXWLAQ

CodeForFood

29 Jan, 01:57


بیایید بررسی کنیم کدامیک در تولید کد و ایجاد Preview در حالت Free بهتر عمل می کند ؟

این فقط یک مقایسه ساده است تا ببینیم در حالت نسبتا مجانی کدام یک بهتر عمل کرده و از آنچه به عنوان IT در جهان مطرح است ، بهتر استفاده نموده است !

#chatgpt
#deepseek
#llsm
#ai
#ml


https://www.youtube.com/watch?v=NAodpHSjG3I

CodeForFood

28 Jan, 04:01


نصب و استفاده از DeepSeek R1 بدون یک خط برنامه نویسی و اتصال به یک ChatBot قوی

در ویدئوی قبلی پس از نصب DeepSeek توسط Ollama ، یا باید در یک محیط کامند مسخره کار می می کردیم یا باید با سی شارپ یا حالا هر زبانی Endpoint را مدیریت کرده و صدا می زدیم، در این ویدئو کلا نیاز به برنامه نویسی را بیخیال شدیم و ضمننا یک محیط Chat عالی و زیبا را معرفی نمودیم، باشد که کیف کنید

#chatbot
#ml
#ai
#llms




https://www.youtube.com/watch?v=Fp1Ew7YVVHs

CodeForFood

27 Jan, 14:55


در این ویدئو صرفا از طریق Ollama توانستیم DeepSeek R1 را روی یک لپ تاپ ساده نصب کنیم، شروع به سوال و جواب کنیم و سپس در غالب یک API از آن در یک برنامه دات نتی استفاده کنیم

نقشه های بزرگی در سر داریم، با ما باشید ...

هوش مصنوعی دیپ‌‌سیک(DeepSeek) اَپ‌اِستور آمریکا را فتح کرد؛ هوش مصنوعی چینی در صدر پردانلودترین اپلیکیشن‌ها !!!

#deepseek
#ai
#ml
#prompt
#llm



https://www.youtube.com/watch?v=Vm7CPUb98e0

CodeForFood

26 Jan, 14:01


ATS friendly CV !

CodeForFood

26 Jan, 14:01


زیاد می بینم که از اواخر 2024 رایج شده که رزومه ها باید خیلی خیلی خیلی منطبق بر قواعد ATS باشد وگرنه رد می شود، اندکی فضولی کرده و به این Template رسیدم، ظاهرا که مفید بوده است، حالا هزینه که ندارد، فایلش را هم گذاشته ام ، امتحان کنید، انشاالله که مفید فایده باشد



#resume
#ats
#cv



https://www.youtube.com/watch?v=q1Z3BZ9b3BY

CodeForFood

25 Jan, 03:03


یک Drag and Drop ساده در Blazor WASM !

اصولا کار با DOM در SPA ها یک مساله بوده، هست و خواهد بود ، در این ویدئو یک لیست ساده خواهیم داشت که توسط یک Component دارای قابلیت Drag & Drop می توانیم آیتمهای آنرا Reorder کنیم

تا وقتی سورس کد را باز نکنید ، چیزی برایتان مشخص نخواهد شد ، لذا اول سورس را بردارید

#blazor
#aspdotnet
#csharp
@wasm



https://www.youtube.com/watch?v=NJFrvrqulyI

CodeForFood

19 Jan, 02:41


این یک نمونه از Coding Interview ها است که باید با TypeScript حل میشده و توسط Airbnb مطرح شده بوده است

این را برای نمونه زدم ترکاندم ولی باز هم افرادی که انتخاب شده اند با توضیحات و داستانهایی مفصل تر از اینها روبرو خواهند شد

این البته سوال سختی نبود، بعضی از نمونه سوالات جر می دهد، این چیزی نبود !

حتی از CodeEditor هم استفاده نکردم که دقیقا همه چیز مشابه وضعیت واقعی باشد


ثبت نام جمعه تمام شد و فقط 15 نفر را انتخاب خواهم کرد ، 5 نفر را از قبل پارتی بازی کرده ام، دلم خواست !!

#interview
#livecoding
#typescript



https://www.youtube.com/watch?v=IGZvYn5ul1M

CodeForFood

18 Jan, 00:52


این صرفا بررسی SingleOrDefault و FirstOrDefault نیست !

نگاه کنید ببینید چگونه جهل را منتشر می کنند و نمی دانید چون صرفا رنگی رنگی است ولی از بیخ اشتباه است !

اصولا یک Fact Check ساده بکنید، بد نیست !


hashtag#dotnet
hashtag#csharp
hashtag#database
hashtag#ef



https://www.youtube.com/watch?v=6KV-GE0kFm4

CodeForFood

17 Jan, 02:20


بنده به عنوان شوهر عمه تست نویسی ایران به شما اعلام می کنم، نگران بحث Commercial شدن Fluent Assertation نباشید !


در این ویدئو به بررسی چطوری به خاک و خون کشیدن آن توسط دیگر ابزارهای Alternative پرداخته شده است !

هیچ وقت یک اصفهانی را تهدید به پولی کردن چیزی نکنید !



https://www.youtube.com/watch?v=Nm-th3mXI0Y

CodeForFood

16 Jan, 03:54


بررسی Facade Design Pattern و موارد استفاده از آن

اصلا باید بررسی میشد بودن یا نبودن چنین کانسپتی چه نقشی در کدنویسی دارد که انجام شد ، یک تحرک ساده بدون این کانسپت انجام شد و سپس Facade Pattern وارد شد تا بررسی شود چه بخشی از مشکل برطرف شده است

#dotnet
#csharp
#aspdotnet
#designpatterns




https://www.youtube.com/watch?v=M8yx6_1BhF0

CodeForFood

15 Jan, 14:08


ثبت نام جهت بررسی افراد شرکت کننده در دوره منهدم کردن تستهای مصاحبه های فنی

- لطفا اگر به زبان انگلیسی تسلط ندارید، ثبت نام نکنید - دانه دانه با ZOOM مصاحبه می کنم و نتوانید صحبت کنید، حذف خواهید شد
- بیخودی ثبت نام نکنید
- تجربه کافی ندارید ثبت نام نکنید - این داستان فقط برای کسانی است که در پاس کردن مصاحبه ها مشکل دارند نه چیز دیگری
- اگر لیسانس نرم افزار ندارید، ثبت نام نکنید
- سربازی نرفته اید یا به هر دلیلی اصلا امکان مهاجرت کاری ندارید، بیخیال شوید
- اگر پایتون کار می کنید، ثبت نام نکنید
- زیر 28 سال هستید، ثبت نام نکنید، فاصله فارق التحصیلی تا تجربه دار حساب شدن شما هنوز کافی نیست
- کد ملی و شماره شناسنامه خود را وارد نکنید - بیخودی در سایت گذاشته شده است
- به من پیام خصوصی ندهید، حالش را ندارم جواب بدهم
- اگر به هر دلیلی سایت باز نشد و ...، بیخیال شوید، حتما شانس شما نبوده است
- کلا حالش را ندارم، ایجاد دردسر کنید، بیخیال خواهم شد - خیلی شدید شول کنید
- تا جایی که می شود ثبت نام نکنید، حسش نیست


فرصت ثبت نام تا آخر جمعه است

فقط 15 تا 20 نفر انتخاب خواهند شد




https://iteasy.ir/Register

CodeForFood

13 Jan, 13:40


این ویدئو صرفا یک دموی ساده از برنامه ای است که در پیش دارم

مواد لازم : مغز + VS Code !

20 تا نهایت 30 نفر را انتخاب و از صفر با آنها شروع می کنم چگونه این Coding Challenge ها را منفجر کنند !

اکثر این Challenge در سطح بسیار سخت و مطرح شده در مایکروسافت و.... می باشد

همه الگوریتمها و راه حل ها شکافته و بررسی خواهد شد

این یک کورس نیست و با افراد در ارتباط خواهم بود - در یوتوب هم قرار نخواهد گرفت

حوصله جینگیلها و کدکشها را هم ندارم، لذا باید انتخاب کنم چه افرادی می توانند شرکت کنند

بیشتر هم به درد افرادی می خورد که بخواهند بعدا یک شغل با درآمد سالانه اقلا 300 هزار دلار داشته باشند، اگر خارج از ایران لنگ 2000 دلار هستید، بزنید به چاک، وقت و حوصله ندارم، بلاک کنید بروید پی کارتان !.

راه و روش ما این شکلی خواهد بود، هر کس خوشش آمد، بعدا خواهم گفت چه کند تا ثبت نام کرده باشد




https://www.youtube.com/watch?v=qSZyByMZy8o

CodeForFood

11 Jan, 02:53


https://www.youtube.com/watch?v=PN2FPvwC9zM&t=27s

CodeForFood

08 Jan, 01:18


بررسی Strategy Design Pattern و موارد استفاده از آن

در این ویدئو درباره Strategy Design Pattern صحبت می‌کنیم. این الگو یکی از الگوهای رفتاری در طراحی نرم‌افزار است که به ما کمک می‌کند تا منطق یا الگوریتم‌های مختلف را به‌صورت مستقل پیاده‌سازی کنیم و در زمان اجرا به‌راحتی از آن‌ها استفاده کنیم.

به زبان ساده، اگر بخواهیم رفتارهای مختلفی (مثل روش‌های پرداخت) را بدون تغییر کد اصلی تغییر دهیم یا اضافه کنیم، Strategy Pattern بهترین گزینه است. این الگو اصل باز-بسته (Open/Closed Principle) را رعایت می‌کند و باعث می‌شود کدهایمان انعطاف‌پذیرتر و قابل نگهداری‌تر باشند.

#dotnet
#designpatterns
#csharp
#softwareengineering




https://www.youtube.com/watch?v=XfBdvS1jB6o

CodeForFood

06 Jan, 22:56


بررسی Code Smell Mutable Data و راه حل آن

در این ویدئو به بررسی Code Smell Mutable Data پرداختیم ، این مشکل زمانی رخ می‌دهد که داده‌ها یا آبجکت‌ها پس از ایجاد قابل تغییر باشند. این موضوع می‌تواند باعث شود کد به سختی قابل پیش‌بینی و دیباگ باشد، زیرا تغییرات توسط بخش‌های مختلف سیستم انجام می‌شوند و ممکن است رفتار غیرمنتظره‌ای ایجاد کنند.


عدم کنترل روی تغییرات: هر بخشی از کد می‌تواند به داده‌ها دسترسی پیدا کرده و آن‌ها را تغییر دهد.

دیباگ سخت‌تر: پیدا کردن منبع اصلی تغییرات دشوار می‌شود.

ناهماهنگی داده‌ها: ممکن است داده‌ها در وضعیت نامعتبر قرار گیرند.

#codesmell
#csharp
#cleancode
#softwareengineering




https://www.youtube.com/watch?v=TmfE0qYBFI4

CodeForFood

05 Jan, 23:36


بررسی Middle Man ، یکی از Code Smell های رایج و چگونگی حل و فصل آن

در این ویدئو به یکی از Code Smell‌های رایج به نام Middle Man می‌پردازیم. این مشکل زمانی رخ می‌دهد که یک کلاس یا سرویس تنها به عنوان واسطه بین درخواست‌ها و سرویس‌های دیگر عمل می‌کند، بدون اینکه منطق خاصی به کد اضافه کند.


راه‌حل این است که یا این کلاس را حذف کنیم و مستقیماً از سرویس‌های اصلی استفاده کنیم، یا اگر نیاز به وجود کلاس واسطه است، منطق خاصی را در آن پیاده‌سازی کنیم که ارزش افزوده‌ای برای سیستم ایجاد کند.


#codesmell
#csharp
#cleancode
#softwareengineering




https://www.youtube.com/watch?v=UT-oxddlBYQ

CodeForFood

04 Jan, 23:58


نگاهی به چگونگی استفاده از View ها در EF Core !



استفاده از View در Entity Framework زمانی مفید است که بخواهید نتایج یک کوئری پیچیده را به‌صورت ساده‌تر مدیریت کنید. یک View در پایگاه داده شبیه به یک جدول مجازی است که از اجرای یک کوئری SQL ساخته می‌شود.

در EF، می‌توانید یک View را به‌عنوان یک (Entity) تعریف کنید و آن را در مدل خود استفاده کنید


#database
#coding
#efcore
#aspdotnet
#csharp




https://www.youtube.com/watch?v=XBORCnwNSM0

CodeForFood

04 Jan, 00:22


بررسی Refused Bequest ، یک Code Smell رایج در روند ارث بری

اگر بخواهیم Refused Bequest یا ارث‌بری نامناسب را توضیح دهیم، این Code Smell زمانی رخ می‌دهد که یک کلاس فرزند متدی را از کلاس والد به ارث می‌برد که برای آن بی‌معنی است و نباید در آن استفاده شود.

در این مثال، کلاس InStoreOrder متد SendShippingNotification را از کلاس والد Order به ارث می‌برد، اما چون سفارش‌های حضوری نیازی به ارسال اعلان حمل‌ونقل ندارند، این متد برای آن‌ها نامربوط است. در نتیجه، اجرای این متد در InStoreOrder منجر به پرتاب استثنای NotImplementedException می‌شود.

این وضعیت باعث:

ابهام در API: مصرف‌کننده نمی‌تواند از روی متدهای موجود تشخیص دهد که کدام کلاس واقعاً نیازمند این متد است.
نقض اصل LSP: کلاس فرزند نمی‌تواند جایگزین کلاس والد باشد، زیرا رفتار سازگاری ندارد.
نگهداری سخت‌تر: هر تغییری در متدهای نامربوط والد ممکن است کلاس فرزند را نیز به‌صورت غیرضروری تحت تأثیر قرار دهد.

#codesmell
#csharp
#cleancode
#softwareengineering



https://www.youtube.com/watch?v=vBTaAgTQmjI

CodeForFood

03 Jan, 00:26


بررسی Shallow Module به عنوان یکی دیگر از Code Smell های مرسوم

این نوع مشکل یعنی Shallow Module یا ماژول کم‌عمق یکی از مشکلات طراحی نرم‌افزار است که در آن یک ماژول یا کلاس تعداد زیادی متد سطح پایین ارائه می‌دهد، اما ارزش یا عملکرد قابل‌توجهی در اختیار مصرف‌کننده قرار نمی‌دهد. این مشکل باعث می‌شود:

پیچیدگی زیاد: مصرف‌کننده باید ترتیب اجرای متدها را بداند و همه جزئیات را مدیریت کند.
کاهش انتزاع: ماژول به جای ارائه یک رابط ساده، مصرف‌کننده را با جزئیات داخلی درگیر می‌کند.
افزایش خطا: فراموش کردن یک متد یا اشتباه در ترتیب اجرا می‌تواند منجر به خروجی اشتباه شود.
نگهداری سخت‌تر: تغییر در منطق ماژول نیازمند به‌روزرسانی چندین نقطه از کد است.

#codesmell
#csharp
#cleancode
#softwareengineering



https://www.youtube.com/watch?v=5r2QPPIL-ts

CodeForFood

02 Jan, 00:36


از شاتگان سرجری (Shotgun Surgery) به عنوان یک Code smell رایج دوری کنید !

شاتگان سرجری یک نشانه (Code Smell) است که زمانی رخ می‌دهد که یک تغییر در عملکرد نرم‌افزار نیازمند اعمال تغییرات کوچک در تعداد زیادی کلاس یا ماژول در کدبیس باشد. این وضعیت نشان‌دهنده‌ی انسجام پایین و عدم کپسوله‌سازی است که نگهداری و توسعه سیستم را دشوار می‌کند.

#codesmell
#csharp
#cleancode
#softwareengineering


https://www.youtube.com/watch?v=YuoSCHmZ0lo

CodeForFood

01 Jan, 09:53


در هم تندیدگی داده ها و Functionality و قصه مایکروسرویسها !

اگر بنا باشد از یک کانسپتی به درستی و در جای درستی استفاده کنیم، اول باید بدانیم در کجاها نباید از آن استفاده کنیم

در این ویدئو خارج از تمرکز بر زبان برنامه نویسی به یکی از مواردی پرداخته شد که در آن از مایکروسرویسها نباید استفاده نمود !

خلاصه با هرچه برنامه می نویسید، این را ببینید !

باشد که پند گیرید !

#microservicesarchitecture
#softwarearchitecture





https://youtu.be/xXFsuxpCNIU

CodeForFood

31 Dec, 00:04


ترکیب Polly و EF SavePoints در جهت پیاده سازی یک مکانیزم Retry در روند ذخیره دیتا

ترکیب Polly و EF SavePoints برای پیاده‌سازی یک مکانیزم Retry در روند ذخیره دیتا به این صورت است:

اولا Polly: برای تلاش مجدد در صورت وقوع خطاهای موقتی (مثل خطاهای پایگاه داده) استفاده می‌شود و تعداد دفعات Retry و تأخیر بین آن‌ها را مدیریت می‌کند.

دوما EF SavePoints: برای ایجاد نقاط بازگشت (Checkpoints) در تراکنش‌ها استفاده می‌شود تا در صورت شکست بخشی از عملیات، بتوان تغییرات موفق قبلی را حفظ کرد.

نتیجه: این ترکیب اجازه می‌دهد که عملیات‌هایی که موقتاً با شکست مواجه شده‌اند، دوباره امتحان شوند و در صورت موفقیت، کل تراکنش بدون نیاز به بازگشت کامل انجام شود.


#dotnet
#csharp
#efcore
#database
#aspdtnet




https://www.youtube.com/watch?v=pPwb0hc7f_8

CodeForFood

30 Dec, 01:21


چگونگی استفاده از SavePoints در مدیریت EF Transactions و مدیریت تراکنشهای نیمه کاره


در Entity Framework (EF)، Savepoint به عنوان یک مکانیزم در تراکنش‌ها استفاده می‌شود که به شما اجازه می‌دهد یک نقطه بازگشت (checkpoint) داخل تراکنش تعریف کنید. اگر بخشی از عملیات داخل تراکنش شکست بخورد، می‌توانید به این نقطه بازگشت کنید، بدون اینکه کل تراکنش را لغو کنید.

تعریف یک Savepoint: await transaction.CreateSavepointAsync("SavepointName")

بازگشت به Savepoint: await transaction.RollbackToSavepointAsync("SavepointName")

این قابلیت برای سناریوهایی مفید است که شامل چندین عملیات وابسته باشد و نمی‌خواهید در صورت خطا کل عملیات را از ابتدا شروع کنید.

#dotnet
#csharp
#efcore
#database
#aspdtnet




https://www.youtube.com/watch?v=IKc6oGt2410

CodeForFood

29 Dec, 00:19


بررسی Transaction Scope در دات نت 9 و ایجاد Data Consistency

در واقع TransactionScope یک ابزار قدرتمند در دات نت برای مدیریت تراکنش‌های چند مرحله‌ای (Multi-Step) به صورت خودکار است. این ابزار به شما اجازه می‌دهد که چند عملیات بانک اطلاعاتی یا حتی چند عملیات مرتبط با منابع مختلف (مانند بانک اطلاعاتی و پیام‌رسان‌ها) را در قالب یک تراکنش واحد اجرا کنید. اگر هر یک از عملیات در طول تراکنش شکست بخورد، همه تغییرات به صورت خودکار به حالت قبل بازگردانده (Rollback) می‌شوند و این باعث می‌شود داده‌ها در یک حالت سازگار باقی بمانند.


#dotnet
#csharp
#efcore
#database
#aspdtnet




http://youtube.social-card-share.top/ue4vlg

CodeForFood

28 Dec, 02:30


بررسی آخرین تغییرات EF بر برخورد با فیلدهای نوع Json

در نسخه‌های اخیر EF ، پشتیبانی از فیلدهای نوع JSON به شکلی کامل و بهینه ارائه شده است. اکنون می‌توان به راحتی داده‌های ساختاریافته را در فیلدهای JSON ذخیره و مستقیماً با استفاده از LINQ کوئری‌های پیچیده روی آن‌ها انجام داد. این قابلیت، انعطاف‌پذیری فوق‌العاده‌ای برای کار با داده‌های نیمه‌ساختاریافته فراهم کرده و نیاز به استفاده از راه‌حل‌های جانبی را برطرف کرده است. ابزار قدرتمندی که برنامه نویسان دات نت را در مدیریت بهتر داده‌ها یاری می‌کند.

در این ویدئو به بررسی آخرین تغییرات در این حوزه خواهیم پرداخت


#dotnet
#csharp
#efcore
#database
#json



https://www.youtube.com/watch?v=0g8gXINmaps

CodeForFood

26 Dec, 00:50


بررسی FluentAssertions.Json و دلیل استفاده از آن حتی با وجود FluentAssertions

می توان گفت FluentAssertions یک کتابخانه عمومی برای نوشتن UnitTest در دات‌ نت است که امکان بررسی اشیاء، استثناها، و انواع داده‌ها را به صورت ساده و قابل خواندن فراهم می‌کند. FluentAssertions.Json یک افزونه خاص برای FluentAssertions است که ابزارهایی برای مقایسه مستقیم JSON‌ها ارائه می‌دهد. این افزونه به شما اجازه می‌دهد ترتیب خصوصیات را نادیده بگیرید، تفاوت‌ها در ساختارهای تو در تو را به راحتی بررسی کنید و مقایسه‌های خاص‌تری برای داده‌های JSON انجام دهید. اگر نیاز به تست JSON‌های پیچیده دارید، FluentAssertions.Json انتخاب بهتری است، اما برای بررسی عمومی JSON به صورت رشته‌ای، FluentAssertions کافی است.


#tdd
#dotnet
#flunetassertation
#unittesting




https://www.youtube.com/watch?v=nHexZaoejuc

CodeForFood

25 Dec, 01:02


استفاده از SQL Query ها در EF - نحوه استفاده از RAW SQL در EF Core

در EF Core، می‌توان از Raw SQL برای اجرای کوئری‌های مستقیم SQL استفاده کرد. این قابلیت برای مواردی مانند استفاده از کوئری‌های پیچیده یا بازگرداندن داده‌ها به انواع غیر مپ‌شده (Unmapped Types) بسیار کاربردی است. متدهایی مانند FromSqlRaw و SqlQuery امکان استفاده از این کوئری‌ها را با امنیت بالا و پشتیبانی از پارامترهای کوئری فراهم می‌کنند.

#dotnet
#efcore
#aspdotnet
#csharp




https://www.youtube.com/watch?v=QPbCFUxq5s8&t=9s

CodeForFood

24 Dec, 03:04


بررسی UseSeeding و UseAsyncSeeding در EF 9

در EF Core 9، متدهای UseSeeding و UseAsyncSeeding برای اضافه کردن داده‌های اولیه (Seeding) به پایگاه داده در زمان اجرا استفاده می‌شوند. UseSeeding به صورت همزمان (Synchronous) عمل کرده و داده‌ها را به پایگاه داده اضافه می‌کند، در حالی که UseAsyncSeeding به صورت غیرهمزمان (Asynchronous) این کار را انجام می‌دهد و برای عملیات سنگین یا استفاده از منابع خارجی مفید است. این متدها جایگزین استفاده از HasData در سناریوهای پیشرفته‌تر هستند.


#efcore
#csharp
#aspdotnet
#dotnet

https://www.youtube.com/watch?v=shyKJA12S9g

CodeForFood

23 Dec, 09:09


بررسی روند فشرده سازی فایلهای استاتیک در دات نت 9

در دات‌نت 9، روند فشرده‌سازی فایل‌های استاتیک (مانند CSS، JavaScript، و تصاویر) با بهینه‌سازی‌های قابل‌توجهی همراه شده است. این بهبودها شامل استفاده از فشرده‌سازی Brotli با تنظیمات پیش‌فرض بهینه‌تر و همچنین استفاده مجدد از کانتکست‌های فشرده‌سازی است. این ویژگی که به نام Compression Context Pooling شناخته می‌شود، باعث کاهش بار پردازشی و استفاده کمتر از حافظه در سرور می‌شود.

فایل‌های استاتیک ابتدا توسط Middleware فشرده‌سازی پاسخ‌ها پردازش شده و در صورت درخواست مرورگر، با الگوریتم‌های Brotli یا Gzip فشرده می‌شوند. استفاده از این قابلیت به راحتی با اضافه کردن Middleware مربوطه در فایل Program.cs امکان‌پذیر است.

این ویژگی‌ها باعث بهبود عملکرد در برنامه‌های با ترافیک بالا می‌شوند و زمان بارگذاری فایل‌ها را به شکل چشم‌گیری کاهش می‌دهند.

#dotnet
#aspdotnet
#csharp



https://www.youtube.com/watch?v=7z7IwKekjYc

CodeForFood

22 Dec, 04:06


بررسی Composite Design Pattern در دات نت

اگر بخواهیم در مورد Composite Design Pattern صحبت کنیم ، میتوان گفت ؛ این دیزاین پترن به شما این امکان را می‌دهد که اشیاء پیچیده‌ای را به صورت درختی سازماندهی کنید، به طوری که اشیاء منفرد (Leaf) و ترکیب‌شده (Composite) به صورت یکسان مدیریت شوند. این الگو برای نمایش ساختارهای سلسله‌مراتبی مانند سیستم فایل، منوها یا سازمان‌ها استفاده می‌شود.


#dotnet
#csharp
#aspdotnet
#designpatterns




https://www.youtube.com/watch?v=Se1wzGAZFf8

CodeForFood

20 Dec, 23:57


بررسی چگونگی برخورد با داده های مشترک بین چند Thread در MultiThreading

در (Multithreaded Environment)، دسترسی همزمان چند Thread به داده‌های مشترک می‌تواند منجر به (Race Condition) شود. در سی‌شارپ، از کلمه کلیدی lock برای هماهنگی بین رشته‌ها استفاده می‌شود تا تنها یک Thread در هر لحظه به بخش بحرانی کد دسترسی داشته باشد


#dotnet
#csharp
#aspdotnet
#async




https://www.youtube.com/watch?v=6Ji5RcDZCp4

CodeForFood

20 Dec, 08:27


مدیریت صحیح خطا در کدهای Asynchronous در سی شارپ


در برنامه‌های (Asynchronous) یا چند‌وظیفه‌ای (Concurrent) در سی‌شارپ، ممکن است چندین خطا به صورت هم‌زمان در (Tasks) های مختلف رخ دهند. در این موارد، .دات نت این خطاها را در قالب یک شیء AggregateException گردآوری می‌کند.

در عمل AggregateException این امکان را فراهم می‌کند که تمام خطاهای رخ‌داده در تسک های مختلف را به صورت مجموعه‌ای از InnerExceptions بررسی و مدیریت کنید. این روش به برنامه‌نویس کمک می‌کند تا به‌جای مدیریت جداگانه هر خطا، تمام آن‌ها را به صورت متمرکز بررسی و تحلیل کند.

#dotnet
#csharp
#aspdotnet
#async





https://www.youtube.com/watch?v=pY1ObQRou6c

CodeForFood

19 Dec, 14:30


بررسی سرعت در صورت استفاده از ReadOnlySpan - آیا همه جا باید استفاده شود ؟


اگر بخواهیم در مورد ReadOnlySpan صحبت کنیم ، باید گفت ، یک ساختار در زبان سی شارپ است که برای دسترسی به داده‌های پیوسته در حافظه طراحی شده است، بدون ایجاد کپی‌های غیرضروری یا تخصیص حافظه اضافی. این قابلیت بهینه‌سازی عملکرد و کاهش استفاده از حافظه را در برنامه‌های حساس به کارایی فراهم می‌کند.

#dotnet
#csharp
#performance
#aspdotnet





https://youtu.be/mPtZGT55R9s

CodeForFood

19 Dec, 03:09


#MAUI #book #pdf

CodeForFood

19 Dec, 03:08


.NET MAUI Cookbook

#MAUI
#book
#pdf

CodeForFood

19 Dec, 01:49


* شکست پروسه های سنگین توسط Parallel.Invoke در دات نت *

با توجه به اینکه Parallel.Invoke یکی از قابلیت‌های قدرتمند دات‌نت می باشد که به شما این امکان را می‌دهد چندین وظیفه مستقل را به صورت موازی اجرا کنید، لازم دیدم کمی در مورد آن صحبت کنیم .این روش زمانی مفید است که وظایف مختلفی دارید که نیاز به اجرا به صورت همزمان دارند و به منابع یکسانی وابسته نیستند. با استفاده از این قابلیت، می‌توانید از هسته‌های پردازنده بهینه‌تر استفاده کرده و عملکرد برنامه خود را بهبود دهید. از این روش می‌توان برای پردازش داده‌های سنگین، محاسبات پیچیده، یا اجرای وظایف مختلف مانند خواندن فایل‌ها و پردازش شبکه به صورت همزمان استفاده کرد.


#dotnet
#csharp

https://www.youtube.com/watch?v=t0HcXJVzE2M

CodeForFood

18 Dec, 02:43


در این ویدئوی بسیار کوتاه ، صرفا به بررسی مزیت استفاده از Parallel.Foreach پرداخته شده است

اکر بلد هستید، دیگر نبینید ، اگر بلد نیستید هم بروید از کسانی که بلد هستند بپرسید و این را نبینید !

اصلا کلا به من چه ؟

#dotnet
#csharp
#parallel

https://youtu.be/lBCf0DowY5w

CodeForFood

17 Dec, 14:55


آیا کد نویسی دیگر فایده خواهد داشت ؟. از نظر بزرگان حوزه AI و کسانی از پشت قضیه خبر دارند چطور؟





https://www.youtube.com/watch?v=oxXuf4G3A8w

CodeForFood

16 Dec, 13:41


.NET 9 Enhanced Service Registration

Dependency Injection (DI) is a fundamental principle of modern software development, enabling loose coupling and improving testability. With every release, .NET further enhances its DI framework, making it more efficient for developers to manage dependencies. The latest .NET 9 release brings several improvements that streamline the DI process, offering greater flexibility and better performance. In this article, we’ll take a closer look at these new features and share best practices for utilizing them effectively in your projects.


#dotnet
#DI
#Csharp

CodeForFood

16 Dec, 01:07


Pro .NET Memory Management


#book #dotnet #pdf #csharp #aspdotnet

CodeForFood

16 Dec, 01:04


Parallel Programming with C# and .NET

#book #pdf #dotnet

CodeForFood

14 Dec, 02:23


دیشب Nick خواست یک طوری ویدئوی قبلی را جمع کند، لذا مدیر تیم Blazor آمد و صحبت کردند و خلاصه همه چیز مثبت است و کل بحث را در 4 دقیقه برایتان در آوردم



https://www.youtube.com/watch?v=D4uOJyiy9m0

CodeForFood

13 Dec, 11:11


بررسی چگونگی پیاده سازی سه نوع رابطه رایج بین جداول توسط EF در یک پروژه دات نتی


به طور کلی در Entity Framework سه نوع رابطه اصلی میان موجودیت‌ها (Entityها) تعریف می‌شود:

یک-به-یک (One-to-One): هر موجودیت A با دقیقاً یک نمونه از موجودیت B مرتبط است و بالعکس.
یک-به-چند (One-to-Many): یک موجودیت A می‌تواند با چندین نمونه از موجودیت B مرتبط باشد، اما هر موجودیت B تنها با یک موجودیت A در ارتباط است.
چند-به-چند (Many-to-Many): چندین نمونه از موجودیت A با چندین نمونه از موجودیت B مرتبط‌اند. این رابطه معمولاً از طریق یک جدول واسط (Join Table) در پایگاه داده پیاده‌سازی می‌شود.

در این ویدئو به بررسی این موارد با ذکر یک مثال پرداختیم


#dotnet
#csharp
#database
#efcore



https://www.youtube.com/watch?v=qsXGgKzHfIM&t=13s

CodeForFood

04 Dec, 09:06


** The Zip method in LINQ **

The Zip method in LINQ is a powerful and straightforward tool used to merge two sequences (collections) into a single sequence by applying a specified function to corresponding elements from each sequence.

Key Points about Zip:

Purpose: Combines two sequences element-by-element and produces a single sequence.

Result: Each element in the resulting sequence is created by applying a function (e.g., a lambda expression) to the corresponding elements from the two input sequences.

Requirements:
Both sequences must have the same or compatible lengths.
The shorter sequence determines the length of the result (remaining elements in the longer sequence are ignored).

Working code : ( https://lnkd.in/gsZJxnZ8 )

CodeForFood

04 Dec, 03:20


همه بخشهای Mininal API ها در دات نت 9 را توی یوتوب آزاد کردم، فقط اطلاع رسانی نکرده ام، خواستید بروید ببینید، ولی اطلاع رسانی روزانه به صورت بخش به بخش تا پایان را خواهیم داشت

#dotnet
#aspdotnet
#csharp
#webapi
#programming



لینک کلی این پلی لیست : ( https://shorturl.at/jTqnh )

CodeForFood

04 Dec, 01:54


خوب دیگه نتیجه مشخص است و پایان نظرسنجی را اعلام می کنیم

CodeForFood

04 Dec, 00:58


GroupBy with Multiple Keys


The GroupBy operation is a powerful feature in programming that allows you to categorize data into groups based on one or more attributes. It is often used for summarizing or aggregating data, such as calculating totals, averages, or counts within each group.

Working Code : ( https://dotnetfiddle.net/J2gjU8 )

#dotnet
#csharp
#LINQ

CodeForFood

03 Dec, 23:51


بخش 18 منتشر شد !


بررسی چگونگی دانلود و آپلود فایل در Minimal API های دات نت 9

به طور قطع در یک پروژه واقعی ما درگیر کار با فایلها، آپلود و دانلود فایل نیز خواهیم شد، لذا در این ویدئو به بررسی چگونگی آپلود و دانلود فایل در Minimal API ها خواهیم پرداخت و سپس با کمک PostMan یک بار روند دانلود و آپلود را تست خواهیم نمود

لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=Kht5ImbAPOg )

لینک کلی این پلی لیست : ( https://shorturl.at/jTqnh )



#dotnet
#aspdotnet
#csharp
#webapi
#programming



https://www.youtube.com/watch?v=Kht5ImbAPOg

CodeForFood

03 Dec, 05:06


Efficient Resource Management in Minimal APIs

When working with minimal APIs, it's crucial to manage resources like database connections or file handles carefully to prevent potential leaks and ensure optimal performance. Proper disposal of resources in an asynchronous context is a key aspect of achieving this.

For resources that implement IDisposable, you can rely on a using statement to handle cleanup automatically. However, when working with asynchronous code, it’s recommended to leverage IAsyncDisposable wherever possible.

This allows you to utilize await with the using statement for effective asynchronous resource management.

#dotnet
#aspdotnet
#csharp

CodeForFood

03 Dec, 00:29


بخش 17 منتشر شد !

آشنایی با طریقه Custom کردن خروجی یک Endpoint در Minimal API ها


در Minimal API، سفارشی‌سازی نتایج به شما این امکان را می‌دهد که پاسخ‌های API را بر اساس نیازهای خاص کاربران شکل دهید. این شامل حذف فیلدهای حساس، اضافه کردن مقادیر محاسبه‌شده یا تغییر ساختار داده‌ها می‌شود. با استفاده از روش‌هایی مثل DTO یا ایجاد کلاس‌های سفارشی که از IResult ارث‌بری می‌کنند، می‌توان کد را خواناتر، انعطاف‌پذیرتر و قابل نگهداری‌تر کرد.

لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=BCh8-mj0xks )

لینک کلی این پلی لیست : ( https://shorturl.at/jTqnh )



#dotnet
#aspdotnet
#csharp
#webapi
#programming




https://www.youtube.com/watch?v=BCh8-mj0xks

CodeForFood

02 Dec, 14:34


Preventing Deadlocks in Asynchronous Programming

Why This Happens:
Using "Task.Run" along with .Result blocks the main thread, which can lead to deadlocks, especially in environments relying on a single-threaded synchronization context.

How to Prevent Deadlocks:
The solution is to use await when executing the task. This ensures the operation is non-blocking and allows the main thread to remain free.

#dotnet
#aspdotnet
#csharp

CodeForFood

02 Dec, 00:46


بخش 16 منتشر شد !



بررسی و افزودن Response Contract در جهت بهبود مستندات Swagger

استفاده از Response Contract در مستندات Swagger باعث بهبود شفافیت و خوانایی مستندات API می‌شود. این کار ساختار دقیق پاسخ‌ها و کدهای وضعیت HTTP را نمایش می‌دهد، که به توسعه‌دهندگان کمک می‌کند تا بهتر انتظارات از هر endpoint را درک کنند.

لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=iqD6okKhSzU )

لینک کلی این پلی لیست : ( https://shorturl.at/jTqnh )






#dotnet
#aspdotnet
#csharp
#webapi
#programming



https://www.youtube.com/watch?v=iqD6okKhSzU

CodeForFood

02 Dec, 00:45


بخش 15 منتشر شد !

بررسی چگونگی افزودن Authentication به Minimal API ها در دات نت 9

امن کردن APIها (مانند Web API) اهمیت زیادی دارد، زیرا نقاط ورود برای دسترسی به داده‌ها و سرویس‌های حساس در برنامه هستند. اگر امنیت رعایت نشود، مهاجمان می‌توانند به داده‌های کاربران دسترسی پیدا کنند، حملات Injection (مانند SQL Injection) انجام دهند یا سیستم را مختل کنند. استفاده از روش‌هایی مانند احراز هویت (JWT)، کنترل دسترسی، رمزنگاری ارتباطات (HTTPS) و اعتبارسنجی ورودی‌ها، از خطرات جلوگیری می‌کند و اعتماد کاربران را افزایش می‌دهد.


لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=rqd0HvBZcf4&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8&index=15 )
لینک کلی این پلی لیست : ( https://shorturl.at/jTqnh )


#dotnet
#aspdotnet
#csharp
#webapi
#programming



https://www.youtube.com/watch?v=rqd0HvBZcf4

CodeForFood

30 Nov, 23:27


بخش 14 منتشر شد !

معرفی و افزودن روشهای Validate کردن داده های ورودی در Minimal API های دات نت 9

اعتبارسنجی (Validation) در Minimal API‌ها نقش حیاتی در تضمین صحت و امنیت داده‌های ورودی ایفا می‌کند. این کار از ورود داده‌های نامعتبر جلوگیری کرده و از بروز مشکلات در منطق برنامه یا دیتابیس جلوگیری می‌کند. استفاده از ابزارهایی مانند FluentValidation به توسعه‌دهندگان کمک می‌کند تا قوانین اعتبارسنجی را به‌صورت جداگانه و قابل‌مدیریت تعریف کنند. این کار باعث افزایش خوانایی، نگهداری و قابلیت اطمینان کد می‌شود.

لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=40bNAsrXZtU )
لینک کلی این پلی لیست : ( https://www.youtube.com/watch?v=CD62NjvVn44&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8 )


#dotnet
#aspdotnet
#csharp
#webapi
#programming





https://www.youtube.com/watch?v=40bNAsrXZtU

CodeForFood

30 Nov, 00:22


بخش 13 منتشر شد !


افزودن EF به عنوان یک ORM و ایجاد یک CRUD

یک پروژه جدید ساختیم ، چرا ؟، چون تا به اینجا همه چیز به صورت In-Memory و کمی اولیه بود، در این قسمت یک EF را به پروژه افزودیم و همه چیز را واقعی کردیم - حالا یک CRUD واقعی داریم که به دیتابیس متصل خواهد بود و پروژه هم تمیز کاری شده است


لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=YvY-utvdjyM )

لینک کلی این پلی لیست : ( https://www.youtube.com/watch?v=CD62NjvVn44&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8 )


#dotnet
#aspdotnet
#csharp
#webapi
#programming



https://www.youtube.com/watch?v=YvY-utvdjyM

CodeForFood

28 Nov, 23:07


بخش 12 منتشر شد !


استفاده از Controller ها در پروژه های Minimal API در دات نت 9

من دقیقا خودم هم نمی دانم چرا شاید لازم شود از Controller ها در Minimal API ها استفاده کنیم، ولی خوب به هر حال در این کره خاکی هر چیزی ممکن است ، لذا توضیح داده شد که بماند به یادگار !

لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=OOzR9Qlmk8M )

لینک کلی این پلی لیست : ( https://www.youtube.com/watch?v=CD62NjvVn44&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8 )


#dotnet
#aspdotnet
#csharp
#webapi
#programming



https://www.youtube.com/watch?v=OOzR9Qlmk8M

CodeForFood

28 Nov, 23:02


بخش 11 منتشر شد !

بررسی Custom Binding در Minimal API های دات نت 9

در Minimal API‌ها . Custom Binding به شما اجازه می‌دهد داده‌های ورودی درخواست (مانند Route، Query، Header یا Body) را به شکلی سفارشی به پارامترهای متد تبدیل کنید. برای این کار، می‌توانید متدی به نام BindAsync در کلاس مورد نظر تعریف کنید. این متد وظیفه دارد داده‌های مورد نیاز را از درخواست استخراج کرده و به شیء دلخواه تبدیل کند. این روش زمانی کاربردی است که نیاز به پردازش یا تبدیل خاصی در داده‌ها داشته باشید.

لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=dc2VccHRbKk )
لینک کلی این پلی لیست : ( https://www.youtube.com/watch?v=CD62NjvVn44&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8 )


#dotnet
#aspdotnet
#csharp
#webapi
#programming




https://www.youtube.com/watch?v=dc2VccHRbKk

CodeForFood

28 Nov, 01:29


ظاهرا از دات نت 9 به بعد، به دلیل یکسری گیس و گیس کشیها در تیم دات نت و ساپورت کنندگان Swagger، این ابزار از حالت دیفالت و بخشی از پروژه ها بودن خارج شده که البته می توانید خودتان آنرا به پروژه ها اضافه کنید، اما :

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

پیشنهاد خود من : این ویدئو را نبینید و همان Swagger را استفاده کنید !

سوال : پس چرا این ویدئو را درست کردم ؟. بیمارم !

CodeForFood

28 Nov, 00:47


Microservices Can Become Technical Debt

In the article "Microservices Can Become Technical Debt," I discuss how microservices architecture, despite its benefits, can lead to technical debt if not properly managed. Key points include:

Over-segmentation of Services: Dividing applications into too many small services without clear justification can increase complexity and communication overhead.

Lack of Standardization: Inconsistent standards across teams, such as using different frameworks or protocols, complicate integration and debugging.

Inadequate Monitoring and Logging: Without centralized systems, debugging distributed services becomes challenging.

Dependency Spaghetti: Unintended interdependencies among services can cause system fragility, where a failure in one service affects others.

I emphasize the importance of careful design, standardization, and robust monitoring to prevent microservices from becoming a source of technical debt.


https://dev.to/alikolahdoozan/microservices-can-become-technical-debt-1fo7

CodeForFood

28 Nov, 00:33


بخش دهم منتشر شد !

بررسی DI و Middleware در Minimal API های دات نت 9


تا این بخش، هیچ Object خاصی در Endpoint ها درگیر نبود، لذا خیلی با DI هم کاری نداشتیم و فقط یکجا به صورت نمادین استفاده شد !. در این ویدئو حالا هم سرویس و Repository داریم و هم اصلا قصد داریم Middleware و روند DI را بررسی کنیم .



لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=nHeP6Al3C-8 )
لینک کلی این پلی لیست : ( https://www.youtube.com/watch?v=CD62NjvVn44&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8 )


#dotnet
#aspdotnet
#csharp
#webapi
#programming




https://www.youtube.com/watch?v=nHeP6Al3C-8

CodeForFood

27 Nov, 03:55


We can test the endpoints using Endpoints Explorer in Visual Studio.

Select the following in the main menu: View ➤ Other Windows ➤ Endpoint Explorer

CodeForFood

27 Nov, 00:28


بخش نهم منتشر شد !

بررسی Parameter Binding در Minimal API ها در دات نت 9


اگر قرار باشد در مورد Parameter Binding صحبت کنیم، می توان گفت Parameter Binding در Minimal API‌ فرآیندی است که طی آن داده‌های ارسال‌شده در درخواست HTTP (مانند Route، Query String، Header یا Body) به طور خودکار به پارامترهای متد متصل می‌شوند. این ویژگی به برنامه‌نویسان امکان می‌دهد تا بدون نیاز به استخراج دستی داده‌ها، به صورت ساده و سریع به مقادیر مورد نیاز دسترسی پیدا کنند.


لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=aZdKln1ZB-4 )
لینک کلی این پلی لیست : ( https://www.youtube.com/watch?v=CD62NjvVn44&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8 )


#dotnet
#aspdotnet
#csharp
#webapi
#programming






https://www.youtube.com/watch?v=aZdKln1ZB-4

CodeForFood

26 Nov, 01:45


بخش هشتم منتشر شد !

** بررسی Response Type ها در Minimal API های دات نت 9 **


لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=aoKmNpf1CuE )
لینک کلی این پلی لیست : ( https://www.youtube.com/watch?v=CD62NjvVn44&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8 )


در این قسمت به سراغ Respnose Type در Minimal API ها خواهیم رفت - از طریق آنها می توانید مشخص می‌کند که یک Endpoint چه نوع پاسخی به کلاینت بازمی‌گرداند، مانند JSON، متن ساده یا یک کد وضعیت HTTP. استفاده از TypedResults امکان بازگشت پاسخ‌هایی با تایپ قوی‌تر و مدیریت دقیق‌تر را فراهم می‌کند. این قابلیت باعث می‌شود کد خواناتر و خطاها در زمان کامپایل شناسایی شوند. برای مثال، از TypedResults.Ok برای پاسخ موفق و از TypedResults.NotFound برای خطای پیدا نشدن استفاده می‌شود. انتخاب درست Response Type تجربه کاربری بهتری فراهم می‌کند و مدیریت کدها را آسان‌تر می‌سازد.


#dotnet
#aspdotnet
#csharp
#webapi
#programming






https://www.youtube.com/watch?v=aoKmNpf1CuE

CodeForFood

25 Nov, 00:54


بخش هفتم منتشر شد !

** بررسی چگونگی هندل کردن پارامتر در Route های تعریف شده در Minimal API ها در دات نت 9 **

تا قبل از این ویدئو، عملا همه Route ها مثل هم بودند و نه پارامتری داشتند، نه فرق خاصی می کردند، در این ویدئو قصد داریم پارامتر را نیز به Route ها اضافه کنیم تا بحث مقداری جدی تر شود، هر چند هنوز راه درازی برای جدی شدن بحث باقی است


لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=AwJ4gScxOsA )
لینک کلی این پلی لیست : ( https://www.youtube.com/watch?v=CD62NjvVn44&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8 )


#dotnet
#aspdotnet
#csharp
#webapi
#programming






https://www.youtube.com/watch?v=AwJ4gScxOsA

CodeForFood

24 Nov, 01:44


بخش ششم منتشر شد !

افزودن Swagger به Minimal API ها در دات نت 9



لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=f2LZ1Y6cHzo&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8&index=7 )
لینک کلی این پلی لیست : ( https://www.youtube.com/watch?v=CD62NjvVn44&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8 )


#dotnet
#aspdotnet
#csharp
#webapi
#programming


مستند سازی API ها و Endpoint ها خود مبحثی است طولانی و دارای کلی بحث و مطلب ، ما در ASP.NET اصولا از Swagger استفاده می کنیم که در دات نت 9 کمی چالشی شده است - در این ویدئو فعلا Swagger را افزودیم و روی API های ساده صرفا کار خواهد کرد، بعدا که پروژه واقعی شود، همه امور ساده تر و بهتر پیش خواهد رفت





https://www.youtube.com/watch?v=f2LZ1Y6cHzo&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8&index=7

CodeForFood

23 Nov, 01:07


بخش پنجم منتشر شد !

تعریف کلاس مجزا و TagName و Grouping در Endpoint های Minimal API های دات نت 9


کم کم باید به سراغ اندکی تمیز کاری و دسته بندی Endpoint ها می رفتیم که در این بخش حاصل شد ، هنوز همه چیز خیلی اولیه و شبه Hello Word است، ولی آرام آرام همه چیز شکل خواهد گرفت

لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=n7U3WX2_oHA )
لینک کلی این پلی لیست : ( https://www.youtube.com/watch?v=CD62NjvVn44&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8 )


#dotnet
#aspdotnet
#csharp
#webapi
#programming





https://www.youtube.com/watch?v=n7U3WX2_oHA

CodeForFood

22 Nov, 02:35


بخش چهارم منتشر شد !

بررسی Route Handler ها در فرآیند روتینگ و ایجاد بدنه برای EndPoint های تعریف شده در Minimal API های دات نت 9 - بخش دوم

اصولا یک EndPoint به یک بدنه نیاز دارید یا فرآیندی را شروع و به پایان برساند و این دقیقا مانند بدنه Action Method ها در Controller ها می باشد، ولی Minimal API ها به ما آزادی بیشتری داده و تقریبا همه چیز را به برنامه نویس سپرده تا خود برای خودش به تعریف بدنه EndPoint ها بپردازد، یعنی حتی نوع بدنه EndPoint هم دست من و شما است و فقط یک Delegate وظیفه اجرا شدن متد تعریف شده ما را بر عهده دارد.


لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=2d41G4bI0Ss )
لینک کلی این پلی لیست : ( https://www.youtube.com/watch?v=CD62NjvVn44&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8 )


#dotnet
#aspdotnet
#csharp
#webapi
#programming



https://www.youtube.com/watch?v=2d41G4bI0Ss

CodeForFood

21 Nov, 02:14


بخش سوم منتشر شد !

بررسی Routing در Minimal API های دات نت 9 - بخش اول

در Minimal API ها عملا همه چیز بر پایه Routing Patterns استوار است - در این ویدئو به بررسی چگونگی تعریف EndPoint ها زیر قاعده Map و Routing خواهیم پرداخت. دقت کنید این فقط معرفی است و با مشاهده ویدئوهای بعدی مبحث تکمیل خواهد شد


لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=BSC1KJUfqCM&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8&index=4 )

لینک کلی این پلی لیست : ( https://www.youtube.com/watch?v=CD62NjvVn44&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8 )


#dotnet
#aspdotnet
#csharp
#webapi
#programming



https://www.youtube.com/watch?v=BSC1KJUfqCM&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8&index=4

CodeForFood

19 Nov, 23:51


بخش دوم منتشر شد !

ایجاد و بررسی آناتومی یک پروژه Minimal API در دات نت 9

در این ویدئو یک پروژه از نوع Minimal API ایجاد کردیم، با Structure این پروژه ها آشنا شدیم و کمی هم در تنظیمات آن دست بردیم و یاد گرفتیم چطوری با کد در این تغییرات دست ببریم


لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=-sw_7ytluZA )

لینک کلی این پلی لیست : ( https://www.youtube.com/watch?v=CD62NjvVn44&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8 )


#dotnet
#aspdotnet
#csharp
#webapi
#programming



https://www.youtube.com/watch?v=-sw_7ytluZA

CodeForFood

19 Nov, 03:18


بخش اول منتشر شد !


بررسی HTTP Verb ها در یک WebAPI و نگاهی به Action Method ها در یک کنترلر

به طور قطع شما با Verb ها آشنا هستید، در این ویدئو صرفا قصد داریم Action Method ها را مبتنی بر این Verb ها ببینیم و سپس آرام آرام مطرح کنیم قرار است وارد چه مبحثی بشویم

لینک فصلی که اخیرا اضافه شده : ( https://www.youtube.com/watch?v=jQ-7cRtkfzY&t=12s )
لینک کلی این پلی لیست : ( https://www.youtube.com/watch?v=CD62NjvVn44&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8 )


#dotnet
#aspdotnet
#csharp
#webapi
#programming



https://www.youtube.com/watch?v=CD62NjvVn44&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8

CodeForFood

18 Nov, 10:27


مقدمه و شروعی بر Minimal API ها در دات نت 9


از تقریبا دو سال پیش ، Minimal API ها در ASP.NET با ما هستند، اما در دات نت 9 ظاهرا با یک Performance Improvement قابل توجه روبرو گشته ایم، لذا با این ویدئو که مقدمه ای بر Minimal API ها در دات نت 9 می باشد، این مبحث را آغاز و با آن که مطمئن هستم شما خود با این قابلیت آشنا هستید، سعی می کنم C# 13 و قابلیتهای جدید آنرا را بیشتر درگیر و در کنار آن به ریزه کاریها بپردازم .

این سری ویدئو در یک PlayList منتشر و روزانه به روز رسانی خواهد گردید

#dotnet
#aspdotnet
#csharp
#programming

https://www.youtube.com/watch?v=CD62NjvVn44&list=PLbluqgRVyY1MXkO0gLDY-7x4e4m0pufX8

CodeForFood

14 Nov, 14:59


بررسی یک Large Dataset Processing ساده در سی شارپ توسط Memory

یکی از مباحث پایه در برنامه نویسی ، شناخت Memory است - البته بحث Memory Management در سی شارپ و دات نت بزرگتر از این حرفها است، ولی من در این حدود 8 دقیقه سعی کردم یک نگاه کوتاه به Memory و Span در سی شارپ داشته و در یک مثال عملی یک Large Dataset را تشکیل و یک Processing ساده در آن داشته باشم . خلاصه که High Performance Csharp برای خودش داستانی است - یک جاهاییش را خودم هم نمی فهمم، آنجاها را شول کردم !

#dotnet
#csharp
#aspdotnet
#programming



https://www.youtube.com/watch?v=LZFdgGY6x5g

CodeForFood

14 Nov, 03:15


ذخیره کردن اطلاعات مهم و کلیدی و حساس کاربران در دیتابیس به صورت رمزنگاری نشده برابر است با انواع خطرهای امنیتی به خطر افتادن کاربران و وجه کاری شرکتها ، در این ویدئو به بررسی چگونگی رمزنگاری داده ها در دات نت 9 خواهیم پرداخت که البته با هر زبان و فریم ورک دیگری هم مشابه آنرا می توان انجام داد
Github Link : https://github.com/bugandfix/BugandFixDataSecuritySample


#dotnet
#csharp
#aspdotnet

https://www.youtube.com/watch?v=UyXsgWA4nhc

CodeForFood

09 Nov, 02:35


.NET Conf 2024!

More about Blazor and MAUI are on the way....

CodeForFood

08 Nov, 09:12


در زبان سی شارپ، Deconstructing Objects به شما این امکان را میدهد که مقادیر موجود در یک شیء را به صورت مستقیم به متغیرهای جداگانه اختصاص دهید. این ویژگی به ویژه زمانی مفید است که بخواهید به سرعت به مقادیر خاصی از یک شیء دسترسی پیدا کنید بدون اینکه نیاز به استفاده از ویژگیهای شیء به صورت جداگانه داشته باشید.

#dotnet
#csharp
#programming




https://www.youtube.com/watch?v=ax3sFGVtsCg

CodeForFood

07 Nov, 14:51


در سی شارپ، Anonymous Functions و Lambda Expressions به شما امکان میدهند تا متدهای بدون نام را به سادگی و به صورت مختصر تعریف و استفاده کنید. این قابلیتها به بهبود خوانایی و کاهش کدهای اضافی کمک میکنند.

#dotnet
#code
#csharp
#programming



https://www.youtube.com/watch?v=Iz2Bqo-Dgdo

CodeForFood

06 Nov, 14:58


و حالا مشاهده خواهید کرد چطور می توان با Multicast Delegate به سادگی یک روند اجرای پشت سر هم درست کنید بدون اینکه چیزی را Hardcode کنید.

یک سری متد را می توان به همدیگر Chain کرد و به یکباره دستور اجرای همه را صادر نمود - نکته و قسمت جالب ماجرا این است که میتوان مثلا یکی را قبل را Invoke از زنجیره خارج نمود یا یک روند را بیش از یکبار اجرا نمود !

شاید در ویدئوی بعدی همین را با یک Database درگیر و یک کانسپت Dynamic ایجاد کنم، شاید هم حالش را نداشته باشم !

#dotnet
#csharp
#programming

https://www.youtube.com/watch?v=dPQu-LR866k

CodeForFood

06 Nov, 09:22


در این ویدئو به بررسی Delegate ها در سی شارپ پرداخته شد و با یک مثال ساده بررسی شد Function Pointer یعنی چه و چه کاربردی دارد

#dotnet
#csharp
#programming


https://www.youtube.com/watch?v=MQEC8E_zx6M

CodeForFood

05 Nov, 02:44


بررسی تغییرات کلاسهای Partial در سی شارپ 13


https://www.youtube.com/watch?v=LEq8uGV3GfE

CodeForFood

04 Nov, 15:07


بررسی قابلیت جدید Params در سی شارپ 13

https://www.youtube.com/watch?v=BIvOu_QMy5w

CodeForFood

02 Nov, 02:26


#js #book #pdf #coding #programming

CodeForFood

02 Nov, 02:25


JavaScript The Definitive Guide

#book #pdf #js #programming #coding 👇👇👇👇

CodeForFood

31 Oct, 07:17


افقی برای کارگری و کارهای یدی در هیچ کجای جهان مشهود نمی باشد!.

نسخه جدید اطلس همانطور که در ویدیو بالا قابل مشاهده است، می‌تواند وظایف محول‌شده خود را تکمیل کند و به اتفاقات محیطی واکنش نشان دهد.

CodeForFood

29 Oct, 04:48


#book #LLM #AI #ML

CodeForFood

29 Oct, 04:47


Building LLM Powered Applications

#book #LLM #AI #ML

CodeForFood

19 Oct, 16:43


در یک ویدئوی کوتاه که میشود این ==> https://t.me/CodeForFood/2695

به بررسی Cancellation Token پرداختیم و آنرا در یک Windows Application مورد بررسی قرار دادیم

در این ویدئو به بررسی همین عزیز دل یعنی Cancellation Token در یک WebApi خواهیم پرداخت و با یک مثال ساده و 4 خط کد نشان دادیم چگونه می توان جان سرور را نجات داد و کاری کرد که کاربر هم ما را فحش کش نکند و از شر درخواستی که به هر دلیلی زمان بر شده بتواند نجات پیدا کند

CodeForFood

18 Oct, 15:15


اصولا ایجاد امکان بیخیال شدن یک روند کاری در برنامه نویسی بسیار اهمیت دارد !.

حتی در حوزه UX هم مهم است که کاربر بتواند هر جا عشقش کشید ، دکمه را بزند و هر روندی را درخواست کرده را کنسل کند و بیخیال شود و برود پی کارش !

خلاصه که حوصله ندارم توضیح متنی بدهم، خودتان بروید ببینید در این ویدئو با Cancellation Token چه می توان کرد

اگر هم بلد هستید، این ویدئو را بیخیال شوید - اگر هم بلد نیستید، باز هم می توانید این ویدئو را بیخیال شوید و بروید از آنها که می دانند بپرسید !

CodeForFood

18 Oct, 09:37


گاهی یک متد ساده در یک زبان برنامه نویسی ، سبب کلی صرفه جویی در وقت و زمان خواهد شد

یکی از آنها یک متد ساده به نام TrueForAll می باشد که سبب می شود حالی به حول شما شود و بسیار ساده هم هست

این ویدئو بسیار کوتاه و ساده است ، اصلا آنرا تماشا نکردید هم نکردید، اصلا برایم مهم نیست !!

#csharp #aspdotnet #programming

CodeForFood

13 Oct, 03:24


در این ویدئو، نه تنها در مورد یکی از مباحث پایه در برخورد با یکی از موارد رایج در Code Smell صحبت شده است، بلکه کمی هم در مورد یک تله در مصاحبه های فنی یا پروژه های تستی که سبب Fail شدن شما می گردد صحبت شده است

این مبحث ، فارق از زبان برنامه نویسی تهیه شده و بررسی آن به همه پیشنهاد می گردد

باشد که پند گیرید....
#programming
#DDD
#codesmell

CodeForFood

12 Oct, 14:23


Domain Driven Design is not a type or style of software architecture, nor is it a design or architectural pattern, and it's certainly not a software development methodology.

#DDD

CodeForFood

06 Oct, 12:54


هوش مصنوعی Apple Intelligence احتمالا دوشنبه، ۷ آبان ۱۴۰۳ به صورت عمومی منتشر خواهد شد

CodeForFood

02 Oct, 13:24


#book #pdf #api #web

CodeForFood

30 Sep, 01:06


AI-Assisted Programming for Web and Machine Learning: Improve your development workflow with ChatGPT and GitHub Copilot

#book #pdf #AI #web

CodeForFood

25 Sep, 13:13


البته مانند همیشه، به من چه ولی خیلی وقتها ،

کد شما در Code Review زیر بحث و رد شدن می رود یا وقتی در مصاحبه های فنی و Live Code هستید و یا پروژه تستی ارسال می کنید، پس از چند روز یک ایمیل قشنگ مبتنی بر اینکه شما خیلی خوب هستید و دانش شما هم عالی است ، ولی با عرض تاسف با کاندیدای دیگری ادامه خواهند داد روبرو می شوید !!

در حین برنامه نویسی در Production هم کد کمتر و خواناتر و کم خطر تر از نظر امکان بروز خطا یک فضیلت است، لذا به مواردی ساده مثل بازگرداندن Null دقت کنید !

نکته : شاید اصلا وضعیت کدنویسی واقعی اینقدر سخت گیرانه نباشد ( حداقل در سیستمهای کاری نه چندان قوی و بزرگ و مطلوب) ، ولی وضعیت مصاحبه ها داستان دیگری است که باید اول از آنها موفق خارج شوید تا بتوانید راحت و به صورت یابویی کد نویسی کنید !!

کمی وقت بیشتری صرف کنید و چیز یاد بگیرید و سپس وارد مصاحبه ها شوید، بهتر است تا پشت هم رد شوید، چنان که قبلا گفتم، بزرگی می فرماید : دیر کردن، بهتر از هرگز نکردن است !

CodeForFood

23 Sep, 12:53


ای کسانی که ایمان آورده اید، یا اگر نیاورده اید :

کد تمیز، همیشه به معنی صدها لایه و استفاده از مایکروسرویس و ... نیست، اگر همین نکات ریز را رعایت کنید، کد قابل خواندن خواهد بود و البته اگر به عنوان کارجو قصد دارید پروژه انجام دهید یا در جلسات Live Coding شرکت کنید، شاید موردی ساده مثل همین سبب موفقیت یا به گاراج رفتن شما گردد - باشد که پند گیرید !

در این ویدئوی کوتاه به بررسی چگونگی فرار از Double Negative خواهیم پرداخت - زبان برنامه نویسی مهم نیست ، با هر آشغالی کد می نویسید، این را ببینید

البته در کل که به من چه ؟

CodeForFood

18 Sep, 02:19


صدای دلپذیری نیست !. اصلا چرا باید جلسه برویم ؟. چه کاریه ؟.

CodeForFood

16 Sep, 14:31


در مثلا فرایند لاگین ، در صورت روبرو‌ شدن با میلیونها رکورد ، چه کنیم ؟


https://youtu.be/gUM5ZZSj23E?si=3xzyk5qamOnOpYBs

CodeForFood

11 Sep, 15:12


این ویدئو آموزش DDD نیست، فقط در 6 دقیقه کمی سعی کردم به بررسی دلیل استفاده از DDD بپردازم

فارق از زبان برنامه نویسی ، اگر شکل و معماری پیاده سازی یک Business را به درستی انجام ندهیم، پس از مدتی با کوهی از کد روبرو خواهیم بود که مدیریت، توسعه و حفظ پایداری آن تقریبا غیر ممکن یا بسیار سخت و هزینه بر خواهد بود

این همان نقطه است که مجبور می شویم یک سیستم بزرگ را دوباره از اول بنویسیم و باز پس از مدتی همان جدید را دوباره از اول بنویسیم و ......

مخصوصا اگر حوزه Backend هستید ، بدون DDD نمی دانم چطور می خواهید زندگی کنید، البته شاید هم به صورت شانسی بتوانید کار و زندگی کنید و مشکلی پیش نیاید !

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

https://www.youtube.com/@bugandfix

#dotnet #DDD

CodeForFood

11 Sep, 04:59


بررسی IQueryables و تاثیرات استفاده صحیح از آن در EF Core!

#EF #database #dotnet #csharp

CodeForFood

08 Sep, 14:56


#dotnet #benchmark #aspdotnet #programming #cloud