DotNet | دات نت
1.13K subscribers
665 photos
230 videos
484 files
707 links
تو این روزا بهتره که همیشه علم خودمون رو بالا ببریم و بتونیم با سریع ترین راه ممکن خودمونو بروز نگه داریم.
- سعی کنیم از کمترین امکانات بیشترین بهره رو ببریم
منتظرت هستیم😉
دنیا رو جای بهتری برای یادگیری کنیم 🌹
#course #book


🆔 @dotnetcode
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
یک دوره خیلی خوب از مایکروسافت راجع به Model Context Protocol (MCP) به اسم MCP for Beginners. اگه هنوز نمیدونید MCP چی هست یا اینکه چطور کار میکنه حتما این دوره را ببینید. به جز یک ویدیو ۱ ساعته باقی ویدیوها زیر ۵-۶ دقیقه هستند. MCP یکی از مهمترین مباحث برای درست کردن AI agents هست.

Youtube: https://youtube.com/watch?v=VfZlglOWWZw&list=PLlrxD0HtieHjYfVUpGl_-ai7D6FRBjV-d&index=1

🎺برای یادگیری بیشتر و دریافت مطالب مفید در زمینه .NET و برنامه‌نویسی، به کانال ما بپیوندید!

📚💻 @dotnetcode 🖥👨‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍72
Forwarded from Learning With M
فقط ۱۴ ثانیه!

چند وقت پیش پستی در لینکدین دیدم که یکی از عزیزان از این‌که رزومه‌اش تنها در ۱۴ ثانیه رد شده بود ناراحت بود.

نظرم رو در کامنت نوشتم: به‌عنوان کسی که بارها رزومه بررسی کرده، این ۱۴ ثانیه برای یک رزومه عدد عجیبی نیست!

بعد از اون پست، افراد زیادی پیام دادن و خواستن که رزومه‌هاشون رو بررسی کنم. همین جرقه‌ای شد برای شروع یک ایده تازه:

🎯 «رویداد ۱۴ ثانیه‌ای!»

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

اگه دوست داری بدونی توی اون ۱۴ ثانیه چه اتفاقی برای رزومه‌ات می‌افته، این رویداد دقیقاً برای توئه.

📌 اگر علاقه‌مندی:

ثبت نام کن ← عضو گروه اطلاع رسانی ای که در پروفایلت بعد از ثبت نام قرار میگیره بشو ← رزومتو بفرست و روز جلسه آنلاین باش تا بررسی رزومتو ببینی.

منتظرت هستم تا با هم بفهمیم در ۱۴ ثانیه چقدر میشه تأثیر گذاشت!

لینک ثبت نام رایگان : https://yun.ir/14sec1
دوره شهریور ماه تکلید ۳۶۰ : https://yun.ir/tl3603
2
Media is too big
VIEW IN TELEGRAM
📱ویدیوی معرفی هوش مصنوعی GPT

🎺برای یادگیری بیشتر و دریافت مطالب مفید در زمینه .NET و برنامه‌نویسی، به کانال ما بپیوندید!

📚💻 @dotnetcode 🖥👨‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
دسترسی به آخرین مدل GPT-5 هم روی GitHub Copilot فعال شد.

https://github.blog/changelog/2025-08-07-openai-gpt-5-is-now-in-public-preview-for-github-copilot/

🎺برای یادگیری بیشتر و دریافت مطالب مفید در زمینه .NET و برنامه‌نویسی، به کانال ما بپیوندید!

📚💻 @dotnetcode 🖥👨‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
2🤯2
۱۲ قاعدهٔ طلایی برای ترتیب Middleware در ASP.NET Core

اگر می‌خواهید اپلیکیشن ASP.NET Core شما پایدار، امن و قابل توسعه باشد، رعایت ترتیب صحیح Middlewareها (میان‌افزارها) حیاتی است. در ادامه ۱۲ گام کلیدی را برایتان آورده‌ام:

1️⃣ UseForwardedHeaders()
اگر پشت پروکسی هستید، حتماً اول این middleware را اضافه کنید تا آدرس کلاینت درست شناسایی شود.

2️⃣ UseHttpsRedirection()
قبل از همه‌چیز، کاربر را به HTTPS هدایت کنید تا ارتباط امن باشد.

3️⃣ UseRouting()
قبل از هر middlewareی که به اطلاعات مسیر نیاز دارد، این یکی را فراخوانی کنید.

4️⃣ UseCors()
بلافاصله بعد از Routing، اما قبل از Authentication، سیاست‌های CORS را اعمال کنید.

5️⃣ UseAuthentication()
تأیید هویت کاربران پیش از اعمال مجوزها باید رخ دهد.

6️⃣ UseAuthorization()
پس از Routing و Authentication بیاید تا قوانین دسترسی به درستی اجرا شود.

7️⃣ UseExceptionHandler()
نزدیک به بالای پشته برای گرفتن و مدیریت همه خطاها قرارش دهید.

8️⃣ UseRateLimiter()
اوایل pipeline تا از حملات DOS یا بار زیاد روی API جلوگیری کند.

9️⃣ UseResponseCompression()
بعد از Routing و پیش از endpoints تا پاسخ‌ها فشرده و کارایی بالاتر برود.

🔟 UseStaticFiles()
اگر فقط محتوای استاتیک می‌دهید، قبل از Routing قرارش دهید.

1️⃣1️⃣ Custom Middleware
(مثل Logging، Tracing و …) هر چه زودتر تا سراسر درخواست را پوشش دهد.

1️⃣2⃣ UseEndpoints()
حتماً آخرین Middleware باشد تا درخواست‌ها به endpoint مناسب برسند و pipeline خاتمه یابد.


---

با رعایت این ترتیب:
• از بروز خطاهای عجیب جلوگیری می‌کنید
• پرفورمنس و امنیت اپلیکیشن‌تان بالاتر می‌رود
• نگهداری و توسعهٔ کد ساده‌تر خواهد شد

🎺برای یادگیری بیشتر و دریافت مطالب مفید در زمینه .NET و برنامه‌نویسی، به کانال ما بپیوندید!

📚💻 @dotnetcode 🖥👨‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8👏86
Forwarded from thisisnabi.dev [Farsi]
بچه ها سلام،
این هم ویدیوهای رود مپ بود که سال گذشته رکوردش کرده بودیم برای کامیونیتی دات نت ایران، این با کورس aspnet core خودم متفاوت هست ولی بد نیست قبلش اینا رو ببینید.

01 | General Development Skills
02 | C#
03 | SQL Fundamentals
04 | ASP.NET Core Basics
05 | SOLID
06 | ORM
07 | Dependency Injection
08 | Databases
09 | Caching
10 | Log Frameworks
11 | API Clients & Communications
12 | Real-Time Communication
13 | Object Mapping
14 | Background Task Scheduler
15 | Testing
16 | Microservices 1
17 | Microservices 2
18 | CI/CD
19 | Design Patterns
20 | Observibility
21 | Client Side .NET
22 | Good to know libraries

@thisisnabi_dev

خفن باشید و پایدار ❤️
10
Forwarded from thisisnabi.dev [Farsi]
احتمالا این عکس رو خیلی هامون دیدیم، کنارش یه کتاب هست با عنوان Clean Code with C# که اونم کتاب خوبی هست برای شما که توی استک دات‌نت کار می کنید.
🔍 جستجوی فازی (Fuzzy Search) در Elasticsearch چیست و چطور کار می‌کند؟

تاحالا شده در یک سایت یا اپلیکیشن، کلمه‌ای را با غلط املایی جستجو کنید ولی باز هم نتایج درستی بگیرید؟ این جادو نیست، این قدرت جستجوی فازی است!

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

-----

⚙️ الگوریتم پشت صحنه: فاصله لِوِن‌اشتاین (Levenshtein)

مفهوم اصلی خیلی ساده است: فاصله لون‌اشتاین یعنی تعداد تغییرات (حذف، اضافه یا جایگزینی یک حرف) که لازم است تا یک کلمه به کلمه‌ی دیگر تبدیل شود.

بیایید با یک مثال ببینیم:
فرض کنید کاربر تایپ کرده elatic اما منظورش elastic بوده.

- مقایسه: elatic و elastic
- تغییر لازم: فقط کافیست حرف s را اضافه کنیم. (1 تغییر)
- نتیجه: فاصله لون‌اشتاین بین این دو کلمه 1 است.

-----

👨‍💻 مثال عملی در Elasticsearch

فرض کنید این اسناد را در ایندکس خود داریم:

- سند اول: An introduction to elasticsearch
- سند دوم: Learning about statistics
- سند سوم: The basics of elastics

حالا کاربر کلمه‌ی اشتباه elastik را جستجو می‌کند. یک کوئری فازی به شکل زیر است:

GET /my_index/_search
{
"query": {
"fuzzy": {
"title": {
"value": "elastik",
"fuzziness": "2"
}
}
}
}


- در بخش value کلمه‌ای که کاربر جستجو کرده قرار می‌گیرد.
- در بخش fuzziness که مهم‌ترین قسمت است، ما به Elasticsearch می‌گوییم کلماتی را پیدا کن که حداکثر 2 تغییر با کلمه ما دارند.

🤔 نتیجه چه می‌شود؟

- مقایسه با "elasticsearch":
کلمه‌ی elastik با یک تغییر به elastic تبدیل می‌شود. چون فاصله 1 کمتر از 2 است، پس این سند پیدا می‌شود.

- مقایسه با "statistics":
فاصله این دو کلمه بسیار بیشتر از 2 است، پس این سند پیدا نمی‌شود.

- مقایسه با "elastics":
کلمه‌ی elastik با دو تغییر به elastics تبدیل می‌شود. چون فاصله 2 با fuzziness ما برابر است، پس این سند هم پیدا می‌شود.

بنابراین، اسناد شماره یک و سه در نتایج نمایش داده می‌شوند!

-----

💡 نکته طلایی: از `fuzziness: "AUTO"` استفاده کنید!

به جای عدد ثابت (مثل 1 یا 2)، بهتر است از مقدار "AUTO" استفاده کنید. این حالت هوشمند، fuzziness را بر اساس طول کلمه تنظیم می‌کند:

- کلمات کوتاه (تا 2 حرف): بدون فازی (فاصله 0)
- کلمات متوسط (3 تا 5 حرف): حداکثر 1 غلط مجاز (فاصله 1)
- کلمات بلند (بیش از 5 حرف): حداکثر 2 غلط مجاز (فاصله 2)

این کار جلوی نتایج بی‌ربط برای کلمات کوتاه را می‌گیرد و بهترین عملکرد را دارد.

-----

جمع‌بندی نهایی:

- هدف اصلی: پیدا کردن نتایج با وجود غلط املایی.
- الگوریتم پایه: فاصله لون‌اشتاین.
- پارامتر کلیدی: fuzziness (حداکثر تغییرات مجاز).
- بهترین روش: استفاده از "fuzziness": "AUTO".

🎺برای یادگیری بیشتر و دریافت مطالب مفید در زمینه .NET و برنامه‌نویسی، به کانال ما بپیوندید!

📚💻 @dotnetcode 🖥👨‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍114🔥1
جستجوی هوشمند یعنی چی؟ با Stemming آشنا شو!

تاحالا شده دنبال کلمه‌ی "خرید" بگردی ولی نتایجی که توشون "خریدم" یا "خریدن" هست رو پیدا نکنی؟ اینجاست که Stemming یا ریشه‌یابی وارد میشه!

---

ریشه‌یابی (Stemming) چیه؟

خیلی ساده‌ست! فرض کن یک هرس‌کننده‌ی هوشمند داری که شاخ و برگ اضافی کلمه‌ها رو میزنه تا به ریشه‌شون برسه.

برای مثال، این کلمات رو در نظر بگیر:
* کتاب‌ها
* کتابی
* کتابخانه

ریشه‌یاب همه‌ی این‌ها رو به یک کلمه‌ی اصلی برمی‌گردونه: "کتاب"

---

چطوری کار می‌کنه؟

وقتی در سیستمی مثل الاستیک‌سرچ (Elasticsearch) از ریشه‌یابی استفاده می‌کنیم، دو تا اتفاق مهم میفته:

۱. موقع ذخیره: وقتی متنی رو ذخیره می‌کنیم، سیستم کلمه‌ها رو به ریشه‌شون تبدیل می‌کنه.
- جمله‌ی "من کتاب‌ها را خواندم" اینطوری ذخیره میشه: "من کتاب را خواند"

۲. موقع جستجو: وقتی تو کلمه‌ی "کتاب" رو جستجو می‌کنی، سیستم دنبال ریشه‌ی "کتاب" می‌گرده و تمام نتایج مرتبط رو پیدا می‌کنه! 🎉

---

چند مثال دیگه:

* رفتم، می‌روی، رفتند ⬅️ رفت
* کارگر، کارها، کارخانه ⬅️ کار
* نوشته، می‌نویسم، نویسنده ⬅️ نویس

---

نتیجه نهایی:

با ریشه‌یابی، دیگه فرقی نمی‌کنه کاربر دنبال "خرید" بگرده یا "خریدار" یا "خریدند"؛ در هر صورت به چیزی که می‌خواد می‌رسه. این یعنی جستجوی دقیق‌تر، نتایج بیشتر و تجربه‌ی کاربری بهتر!

لینک منبع :

https://www.elastic.co/docs/manage-data/data-store/text-analysis/stemming

🎺برای یادگیری بیشتر و دریافت مطالب مفید در زمینه .NET و برنامه‌نویسی، به کانال ما بپیوندید!

📚💻 @dotnetcode 🖥👨‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥32👏2👍1
چرا جستجوی من همه‌چیز رو پیدا نمی‌کنه؟ راز Synonyms!

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

اینجاست که Synonyms یا مترادف‌ها وارد بازی میشن و جستجو رو نجات میدن!

---

مترادف‌ها (Synonyms) چی هستن؟

خیلی ساده! ما به موتور جستجو (مثلاً الاستیک‌سرچ) یک لیست از کلمات هم‌معنی رو میدیم و میگیم: "رفیق! این کلمه‌ها همشون یه معنی میدن. حواست باشه!"

اینطوری یک گروه از کلمات رو با هم رفیق می‌کنیم!

چند مثال کاربردی:

🔗 گروه اول:
موبایل, گوشی, تلفن همراه

🔗 گروه دوم:
لپ تاپ, نوت بوک, لب تاب (حتی املای اشتباه!)

🔗 گروه سوم:
ماشین, خودرو, اتومبیل

🔗 گروه چهارم:
هوش مصنوعی, AI (برای کلمات اختصاری)

---

جادوش چطوری کار می‌کنه؟

وقتی کاربر کلمه‌ی "گوشی" رو جستجو می‌کنه، الاستیک‌سرچ به‌طور خودکار دنبال "موبایل" و "تلفن همراه" هم می‌گرده. انگار که کاربر همه‌ی این کلمات رو با هم جستجو کرده باشه!

---

نتیجه نهایی:

استفاده از مترادف‌ها باعث میشه جستجوی ما هیچ نتیجه‌ی مرتبطی رو از دست نده. مهم نیست کاربر از چه کلمه‌ای استفاده می‌کنه، همیشه به بهترین و کامل‌ترین جواب می‌رسه. این یعنی کاربر راضی‌تر و جستجوی هوشمندتر!

لینک منبع :
https://www.elastic.co/docs/solutions/search/full-text/search-with-synonyms

🎺برای یادگیری بیشتر و دریافت مطالب مفید در زمینه .NET و برنامه‌نویسی، به کانال ما بپیوندید!

📚💻 @dotnetcode 🖥👨‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13👏3🔥1
Forwarded from TondTech (مسعود بیگی)
#استخدام .net Developer
اگه .net Developer با حداقل 3-4 سال تجربه ی کاری هستید، و دوست دارین تجربه جدید به دست بیارین، بیاین بیشتر گپ بزنیم در موردش.
یه پوزیشن توی Rasmio.com باز کردیم.
مشاهده آگهی و ارسال رزومه در جاب ویژن
2👍2🔥1
دوره MCP مایکروسافت | زیرنویس فارسی


یوتیوب
https://youtu.be/Vr1vMyyIdzM?si=TEuNuXjEJhuE4fQG

آپارات (نیم بها)
https://www.aparat.com/v/azkvpjg

@DevTwitter | <Hamed Heydarian/>
👍5🔥32🥰1🎉1🤩1
Media is too big
VIEW IN TELEGRAM
ویدیوی جادی در مورد تازه کار بودن و نگرانی از دیر شروع کردن

🎺برای یادگیری بیشتر و دریافت مطالب مفید در زمینه .NET و برنامه‌نویسی، به کانال ما بپیوندید!

📚💻 @dotnetcode 🖥👨‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥72👍1👏1