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


🆔 @dotnetcode
Download Telegram
Forwarded from OfferingOne
📣 موقعیت شغلی Full-Stack Developer

🔺شرح موقعیت شغلی

شرکت آفرینگان به عنوان ارائه دهنده خدمات منابع انسانی، در جستجوی یک فرد بسیار توانمند در حوزه برنامه نویسی جهت کار (دورکاری) در یک شرکت امریکایی پیشرو در زمینه هوش مصنوعی برای توسعه یک جعبه ابزار در زمینه پردازش تصویر است. مهارت  بک اند در زمینه Python یا Net. یا # C و فرانت اند JavaScript و TypeScript ضروری است.
لازم به ذکر است که در این موقعیت شغلی توانایی کد نویسی و دانش الگوریتم مورد نیاز است.

🤝نوع همکاری: تمام وقت، ریموت
📄سابقه شغلی مرتبط: حداقل ۶ سال
💰حقوق: دلاری بسیار خوب، رنج بالا و متناسب با توانمندی‌های فرد

سابقه کار روی پروداکت های پیچیده مزیت محسوب میشود.

🔗 در صورت نیاز به دریافت اطلاعات بیشتر و ارسال رزومه با ادمین در ارتباط باشید.
@OfferingOne

در صورتی که فردی متناسب با این شغل می شناسید لطفا معرفی کنید.

📣 کانال آفرینگان برای اطلاع از فرصت‌های شغلی
t.iss.one/offeringOneJobs

📌همچنین می توانید لینکدین ما را هم دنبال کنید

https://www.linkedin.com/company/offeringone/

#برنامه_نویس #فول_استک #آفرینگان #فرصت_شغلی #استخدام

#Full_stack #Front_end #Back_end #developer
👍1
Forwarded from Learning With M (Masoud DaneshPour)
امروز می‌خوام در مورد Exchange ها در RabbitMQ براتون بگم. Exchange ها مثل پستچی‌های پیام‌رسان عمل می‌کنن و تصمیم می‌گیرن پیام‌ها رو چطوری به صف‌ها (Queue) برسونن. بیاید ببینیم هر کدوم چیکار می‌کنن:

Direct Exchange 🎯
کارش چیه؟
پیام‌ها رو فقط به صف‌هایی می‌فرسته که کلید مسیریابی (Routing Key) دقیقاً همون چیزی باشه که تعیین کردیم.

کی استفاده کنیم؟
وقتی می‌خوایم پیام‌ها رو دقیقاً به یک صف خاص برسونیم. مثلاً پیام‌های "سفارش جدید" فقط به صف "پردازش سفارش" برن.

مثال:
Routing Key: order.created ➡️ Queue: order_queue

Fanout Exchange 📢
کارش چیه؟
پیام‌ها رو به همه صف‌های متصل شده می‌فرسته، بدون توجه به کلید مسیریابی.

کی استفاده کنیم؟
وقتی می‌خوایم یک پیام رو به چندین صف ارسال کنیم. مثلاً ارسال اطلاع‌رسانی به همه گروه های کاربران.

مثال:
پیام: "تخفیف ویژه!" ➡️ Queue: user_group1_queue, user_group2_queue, user_group3_queue

Topic Exchange 🌐
کارش چیه؟
پیام‌ها رو بر اساس الگوهای کلید مسیریابی ارسال می‌کنه. مثلاً می‌تونیم از wildcard (* و #) استفاده کنیم.

کی استفاده کنیم؟
وقتی می‌خوایم پیام‌ها رو بر اساس موضوع‌های مختلف دسته‌بندی کنیم. مثلاً خطاهای سیستم (error.*) یا لاگ‌های عمومی (log.#).

مثال:
Routing Key: error.database ➡️ Queue: error_queue
👍21
Forwarded from Yaser Moradi
سلام به همگی!
لینک پادکست اخیرم تو رادیو بیدار

چرا C# .NET یکی از بهترین گزینه‌ها، هم برای Cross platform development و هم full-stack development هست؟
https://www.youtube.com/watch?v=8pS0yCrVsT4&t=433s

امکانات پروژه اپن سورس bit Boilerplate که کمک میکنه به داشتن یه تجربه عالی برای زدن هر نوعی از اپ با C#, HTML, CSS
https://www.youtube.com/watch?v=8pS0yCrVsT4&t=1408s

نحوه شروع به کار عملی با bit Boilerplate
https://www.youtube.com/watch?v=8pS0yCrVsT4&t=2402s



چند دمو از خروجی bit Boilerplate


سایت SEO-Friendly مبتنی بر Blazor WebAssembly با حجم کمتر از ۲.۵ مگ
https://bitplatform.dev

یه ادمین پنل خفن برای Android, iOS, Windows, macOS, Web
https://adminpanel.bitplatform.dev

کلی کمپوننت باحال و سریع و سبک برای ‌Blazor
https://blazorui.bitplatform.dev

نسخه خیلی اولیه از یه E-Commerece مبتنی بر Blazor WebAssembly، سریع و سبک
https://sales.bitplatform.dev
6
Forwarded from refhub
مهندسان عزیز روزتون مبارک
به مناسبت روز مهندس، یه کد تخفیف 30 درصدی براتون گذاشتیم
اولش با SOFTDAY شروع میشه، اما برای ادامه ش باید معمای زیر رو حل کنید :
یه برنامه‌نویس داره یه تابع رمزنگاری می‌نویسه. این تابع یه رشته می‌گیره و سه مرحله داره:

1- جمع مقدار ASCII همه‌ی کاراکترهای رشته رو حساب می‌کنه.
2- عدد به‌دست‌اومده رو در خودش ضرب می‌کنه (به توان ۲ می‌رسونه).
3- از نتیجه، یه عدد فیبوناچی پیدا می‌کنه که ازش بزرگ‌تر یا مساویشه، بعد اختلافشون رو حساب می‌کنه.

اگه ورودی تابع کلمه‌ی 'Debug' باشه، خروجی عددش چیه؟ این عدد، سه رقم آخر کد تخفیفت می‌شه!

با ❤️ رفهاب
https://RefHub.ir
👍1
امروز می‌خوام یه گنجینه‌ی واقعی رو بهتون معرفی کنم. اگر دنبال یادگیری مهارت‌های جدید تو دنیای تکنولوژی هستید، این ریپوها مال شماست!
مایکروسافت یه عالمه دوره‌ی رایگان و جذاب برای مبتدی‌ها تدارک دیده، اونم تو زمینه‌های مختلف! بیاین یه نگاهی بهشون بندازیم:

هوش مصنوعی:
هوش مصنوعی برای مبتدیان (AI-For-Beginners): صفر تا صد هوش مصنوعی رو یاد بگیر!
https://github.com/microsoft/AI-For-Beginners

هوش مصنوعی مولد برای مبتدیان (generative-ai-for-beginners): دنیای جذاب هوش مصنوعی مولد رو کشف کن.
https://github.com/microsoft/generative-ai-for-beginners

هوش مصنوعی مولد برای مبتدیان با دات نت (generative-ai-for-beginners-dotnet): هوش مصنوعی مولد با دات نت رو تجربه کن.
https://github.com/microsoft/Generative-AI-for-beginners-dotnet

ایجنتهای هوش مصنوعی برای مبتدیان (ai-agents-for-beginners): ساختن ایجنت های هوش مصنوعی رو یاد بگیر.
https://github.com/microsoft/ai-agents-for-beginners

کتاب آشپزی سمانتیک کرنل (SemanticKernelCookBook): با سمانتیک کرنل کار کن.
https://github.com/microsoft/SemanticKernelCookBook

توسعه وب:
توسعه وب برای مبتدیان (Web-Dev-For-Beginners): از صفر تا یه توسعه‌دهنده‌ی وب حرفه‌ای!
https://github.com/microsoft/Web-Dev-For-Beginners

آشنایی با جاوا اسکریپت و نود برای مبتدیان (beginners-intro-javascript-node): جاوا اسکریپت و نود جی اس رو یاد بگیر.
https://github.com/microsoft/beginners-intro-javascript-node

یادگیری ماشین:
یادگیری ماشین برای مبتدیان (ML-For-Beginners): یادگیری ماشین رو ساده و جذاب یاد بگیر.
https://github.com/microsoft/ML-For-Beginners

علم داده:
علم داده برای مبتدیان (Data-Science-For-Beginners): علم داده رو با مثال‌های عملی یاد بگیر.
https://github.com/microsoft/Data-Science-For-Beginners

اینترنت اشیا:
اینترنت اشیا برای مبتدیان (IoT-For-Beginners): وارد دنیای هیجان‌انگیز اینترنت اشیا شو!
https://github.com/microsoft/IoT-For-Beginners

بقیه موارد:
بش برای مبتدیان (bash-for-beginners): کار با خط فرمان لینوکس رو یاد بگیر.
https://github.com/microsoft/bash-for-beginners

پلتفرم پاور برای مبتدیان (Power-Platform-For-Beginners): با پلتفرم پاور برنامه نویسی بدون کد رو تجربه کن.
https://github.com/microsoft/Power-Platform-For-Beginners

سری آموزش راست برای مبتدیان (beginners-series-rust): برنامه نویسی با زبان راست رو یاد بگیر.
https://github.com/microsoft/beginners-series-rust


سری آموزش بلاکچین برای مبتدیان (beginners-series-blockchain): با بلاکچین اشنا بشو.

https://github.com/microsoft/beginners-series-blockchain

این ریپوها پر از مطالب آموزشی، پروژه‌های عملی و تمرین‌های جذابن.

#یادگیری #برنامه_نویسی #هوش_مصنوعی #مایکروسافت #رایگان
👍6
This media is not supported in your browser
VIEW IN TELEGRAM
“آنچه که در جستن آنی، آنی
وانچه که در طلب آنی، آنی”
- مولانا
🔥3😱2
Media is too big
VIEW IN TELEGRAM
ابزار /trae.ai یه IDE رایگان و جایگزین Cursor هست. به‌صورت کاملاً رایگان و بدون محدودیت به Cloud 3.7 دسترسی دارین!

https://www.trae.ai/
4
Big Archive for System Design – 2024 Edition (Completely Free) is now available!

The PDF contains 𝐀𝐋𝐋 of our technical posts with diagrams published in 2024.

What’s included in the PDF?

- REST API Vs. GraphQL
- Linux file system explained
- My recommended materials for cracking your next technical interview
- How Git Commands work
- Top 4 Most Popular Use Cases for UDP
- How Does a Typical Push Notification System Work?
- How can Cache Systems go wrong? 20
- REST API Cheatsheet
- Top 8 Programming Paradigms
- Data Pipelines
- API Vs SDK
- Key Use Cases for Load Balancers
- And many hundreds more
👍3
Coding Interview Patterns: Nail Your Next Coding Interview

Coding interviews are tough, and they're only getting tougher, typically demanding months of preparation. What we all want is a way to master algorithms and data structures without having to spend countless hours sifting through endless, unfocussed resources. Introducing "Coding Interview Patterns," your complete guide to mastering the key patterns needed to ace your next coding interview.

What’s inside?
An insider’s perspective on what interviewers are truly looking for and why.
101 real coding interview problems with detailed solutions.
Intuitive explanations that guide you through each problem as if you were solving it in a live interview.
1000+ diagrams to illustrate key concepts and patterns.

Table of Contents
Chapter 1: Two Pointers
Chapter 2: Hash Maps and Sets
Chapter 3: Linked Lists
Chapter 4: Fast and Slow Pointers
Chapter 5: Sliding Windows
Chapter 6: Binary Search
Chapter 7: Stacks
Chapter 8: Heaps
Chapter 9: Intervals
Chapter 10: Prefix Sums
Chapter 11: Trees
Chapter 12: Tries
Chapter 13: Graphs
Chapter 14: Backtracking
Chapter 15: Dynamic Programming
Chapter 16: Greedy
Chapter 17: Sort and Search
Chapter 18: Bit Manipulation
Chapter 19: Math and Geometry
4
Forwarded from thisisnabi.dev [Farsi]
Media is too big
VIEW IN TELEGRAM
1. Search

Let’s learn together and build something great ❤️

@thisisnabi_dev
4
https://www.instructa.ai/en/ai-prompts/next-15-coding-standards

از این قسمت میتونین به Cursor یک سری Rule بدین و میتونین خودتون بر اساس پروژه هم Customize کنین، بعد از این به بعد توی جنریت کردن کد این نکات رو در نظر میگیره، مثلا قوانين که تو ESLint تعریف میکنین میتونین اینجا هم بیارین و ازش استفاده کنین خوبیش اینه به صورت General هم میتونین بزارین توی ریپو تا بقیه هم ازش استفاده کنن.


توی این لینک هم کلی Structure و پیاده سازی سرویس های مختلف دیگه هست که به نظرم جالبه میتونه کمک کنه.

https://www.instructa.ai/en/ai-prompts?framework=next

و اینم برای یک سری Rule های کار با Sonnet 3.7 هست :

https://www.instructa.ai/en/ai-prompts/claude-sonnet-37-best-practices
👍3
Forwarded from Software Philosophy
آشنایی با Outbox Pattern و اهمیت آن در سیستم‌های توزیع‌شده

آیا تاکنون در توسعه‌ی یک سیستم توزیع‌شده با این دغدغه مواجه شده‌اید که هنگام ثبت تغییرات در پایگاه داده و هم‌زمان ارسال پیام (رویداد) به یک سرویس دیگر (مانند RabbitMQ یا Kafka)، ممکن است یکی از این مراحل با موفقیت انجام شود و دیگری با شکست روبه‌رو گردد؟ در چنین شرایطی، بخشی از داده‌ها به‌روز می‌شود اما سرویس‌های مصرف‌کننده از این تغییرات بی‌خبر می‌مانند و هماهنگی میان بخش‌های مختلف سیستم از بین می‌رود.

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

راه‌حل چیست؟
در اینجاست که الگوی Outbox وارد عمل می‌شود. این الگو پیش‌بینی می‌کند که ابتدا همه‌ی رویدادهایی که قرار است برای سیستم‌های دیگر ارسال شوند در جدولی اختصاصی (Outbox Table) در همان پایگاه داده‌ی اصلی ذخیره شوند. این کار هم‌زمان با تراکنش به‌روزرسانی سایر داده‌ها صورت می‌گیرد، به‌طوری‌که اگر عملیات اصلی موفق باشد، اطلاعات رویداد نیز قطعاً ثبت می‌شود.

سپس چه می‌شود؟
یک فرایند مجزا (Outbox Process) به‌طور مستمر این جدول را بررسی می‌کند و رویدادهای ثبت‌شده را به پیام‌رسان (Message Broker) ارسال می‌کند. در صورت موفقیت در ارسال، رکورد مربوطه از جدول Outbox حذف می‌شود و بدین ترتیب از ارسال مجدد ناخواسته جلوگیری می‌گردد. اگر هم پیام‌رسان در لحظه غیرفعال باشد یا خطایی رخ دهد، رکورد رویداد کماکان در پایگاه داده باقی می‌ماند تا در تلاش بعدی مجدداً ارسال شود.

مزایای Outbox Pattern
۱. جلوگیری از ناسازگاری داده‌ها: با انجام ثبت رویداد و تغییرات داده در یک تراکنش واحد، احتمال بروز تناقض در داده‌ها کاهش می‌یابد.
۲. اطمینان از عدم از دست رفتن رویدادها: حتی اگر زیرساخت ارتباطی یا پیام‌رسان موقتاً از دسترس خارج شود، پیام در Outbox محفوظ می‌ماند و پس از بازگشت سرویس، ارسال خواهد شد.
۳. مقیاس‌پذیری بالا: افزودن سرویس‌های جدید یا گسترش زیرساخت پیام‌رسانی تحت تأثیر این الگو به‌راحتی امکان‌پذیر است، چرا که شیوه‌ی ثبت و ارسال رویدادها مشخص و یکپارچه است.

در واقع Outbox Pattern راهکاری قدرتمند و مطمئن برای ساخت سیستم‌های توزیع‌شده و مبتنی بر رویداد است و کمک می‌کند دغدغه‌ی شکست ارسال پیام و ناسازگاری داده‌ها برطرف شود.

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

⁉️ برای بحث و تبادل نظر فنی در مورد این پست، نظرات خود را با ما در قسمت کامنت‌ها به اشتراک بگذارید.

#هوتن_همتی (لینکدین)

کانال تلگرام:
@SoftwarePhilosophy

___________