آموزش بکند Backend
Статистикаتعرفه تبلیغات : https://t.me/+w-o6dHW5O31jMWNk آیدی ادمین: @ma_limbs
- Последний пост
- 14 авг.
- Последнее чтение
- 13 авг.
- Постов за неделю
- 4
- Всего постов
- 138
- Тип
- открытый
- Язык
- персидский
- В каталоге с
- 13 авг.
- 1/24сутки в ленте
- 2
- 1/48двое суток
- 2
- 1/72трое суток
- 2
Оценка по просмотрам недавних постов: пост набирает почти всё за первые сутки.
Посты
без подписи
без подписи
🔍 تفاوت Shadow Properties و Explicit Properties در #EntityFramework چیست؟ Shadow Properties در دیتابیس وجود دارن، اما در کلاس Entity نه! 👻 EF Core اونها رو مدیریت میکنه. Explicit Properties هم دقیقا برعکس، مستقیما در کلاس Entity تعریف میشن. 💪 کدوم بهتره؟ بستگی به نیازت داره! Shadow Properties برای اطلاعات متا (مثل تاریخ ایجاد) عالین. Explicit Properties هم برای دسترسی مستقیم و کنترل بیشتر. 👌 #dotnet #efcore #آموزش https://t.me/dotnet7ir
چندریختی (Polymorphism) در C# به اشیاء اجازه میدهد تا رفتارهای متفاوتی را تحت یک رابط مشترک داشته باشند. این اصل کلیدی در برنامهنویسی شیءگرا (OOP) است که کد را انعطافپذیرتر و قابل نگهداریتر میکند. به عنوان مثال، فرض کنید کلاسی به نام Shape داریم و کلاسهای Circle و Rectangle از آن ارثبری میکنند. هر کدام از این کلاسها میتوانند متد Draw() را پیادهسازی کنند. با استفاده از چندریختی، میتوانیم لیستی از Shape ها داشته باشیم و با فراخوانی Draw() روی هر کدام، رفتار متناسب با نوع واقعی شیء (دایره یا مستطیل) اجرا شود. abstract class Shape { public abstract void Draw(); } class Circle : Shape { public override void Draw() { Console.WriteLine("Drawing a circle."); } } class Rectangle : Shape { public override void Draw() { Console.WriteLine("Drawing a rectangle."); } } // استفاده: List<Shape> shapes = new List<Shape> { new Circle(), new Rectangle() }; foreach (var shape in shapes) { shape.Draw(); // فراخوانی متد Draw برای هر شکل }
💡 نکته #SQLite 🟣 موضوع : بررسی و مقایسه انواع ذخیرهسازی دادهها در SQLite 📖 سرفصل : استفاده از json_each ✨ نکته 1: json_each یه تابع جادوییه که بهت اجازه میده دادههای JSON (مثل آرایهها و آبجکتها) رو به صورت موقت به ردیفهای جدول تبدیل کنی. 🤯💡 ✨ نکته 2: کاربرد اصلیش اینه که بتونی روی هر عنصر از یه آرایه JSON حلقه بزنی و باهاشون مثل ردیفهای معمولی جدول رفتار کنی. 🔄🔥 ✨ نکته 3: وقتی از json_each استفاده میکنی، یه جدول موقت بهت میده که ستونهای خاصی مثل key (برای آبجکتها)، value (مقدار هر عنصر) و fullkey داره. 📝 ✨ نکته 4: برای آبجکتهای JSON (اونایی که با شروع میشن)، ستون key اسم کلید رو بهت میده و ستون value مقدار متناظر رو. 🔑 ✨ نکته 5: برای آرایههای JSON (اونایی که با [] شروع میشن)، ستون key اندیس عنصر رو (از صفر شروع میشه) و value خود عنصر رو بهت میده. 🔢 ✨ نکته 6: تو میتونی از json_each تو قسمت FROM کوئری استفاده کنی، انگار که یه جدول معمولیه. این کار بهت اجازه میده از قدرت JOIN و WHERE استفاده کنی. 🔗 ✨ نکته 7: مثال: اگه یه آرایه از محصولات تو JSON داری، با json_each میتونی اونها رو باز کنی و محصولاتی رو که قیمتشون بالای ۱۰۰ تومنه، فیلتر کنی. 💰🔍 ✨ نکته 8: میتونی از json_each برای flatten کردن (مسطح کردن) دادههای تو در توی JSON استفاده کنی تا تحلیل و گزارشگیری خیلی راحتتر بشه. 📈✨ ✨ نکته 9: اگه تو JSONت یه آرایه داری و میخوای فقط ببینی چندتا عضو داره، میتونی از SELECT COUNT(*) FROM jsoneach(jsoncolumn, '$.array_path') استفاده کنی. 📊 ✨ نکته 10: نکته پیشرفته: ستون parent و root هم تو خروجی هستن که برای کار کردن با ساختارهای JSON خیلی تو در تو به دردت میخورن. 🌳😎 ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ لطفا ما رو به دیگران هم معرفی کنید... آدرس کانال اصلی : https://t.me/Tu_24 آدرس وبسایت: https://Tutorial24.ir
🔵 کوییز #مفاهیم_کلی_برنامه_نویسی 🟣 موضوع : الگوریتم: مفهوم، اهمیت و مثالهای کاربردی 🟢 سوال : کدام یک از موارد زیر یک مثال از الگوریتم است؟ گزینه ۱: طراحی رابط کاربری گزینه ۲: جستجوی یک کلمه در یک متن گزینه ۳: مدیریت پایگاه داده گزینه ۴: طراحی سختافزار 🔵 گزینه صحیح: 2 🟢 توضیح : جستجوی یک کلمه در یک متن یک مثال از الگوریتم است. ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ لطفا ما رو به دیگران هم معرفی کنید... آدرس کانال اصلی : https://t.me/Tu_24 آدرس وبسایت: https://Tutorial24.ir
🔵 کوییز #جاوا 🟣 موضوع : JAXB برای XML Binding 🟢 سوال : برای کار با JAXB، معمولاً به چه بستههای (Packages) اصلی نیاز است؟ گزینه 1: java.io و java.net گزینه 2: java.xml.bind گزینه 3: javax.sql و javax.naming گزینه 4: org.w3c.dom و org.xml.sax 🔵 گزینه صحیح: 2 🟢 توضیح : بسته اصلی برای استفاده از JAXB در جاوا، javax.xml.bind است که شامل کلاسها و اینترفیسهای اصلی مانند JAXBContext, Marshaller و Unmarshaller میباشد. ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ لطفا ما رو به دیگران هم معرفی کنید... آدرس کانال اصلی : https://t.me/Tu_24 آدرس وبسایت: https://Tutorial24.ir
🔵 کوییز #PHP 🟢 سوال : کدام تابع در PHP XML Parser برای تجزیه تدریجی بخشهای XML استفاده میشود؟ 1) xml_parse() 2) xml_parse_into_struct() 3) xml_parse_partial() 4) xml_process_xml() 🔵 گزینه صحیح: 3 🟢 توضیح : تابع xml_parse_partial() برای تجزیه تدریجی بخشهای XML در صورت نیاز به پردازش جریانهای بزرگ استفاده میشود. ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ لطفا ما رو به دیگران هم معرفی کنید... آدرس کانال اصلی : https://t.me/Tu_24 آدرس وبسایت: https://Tutorial24.ir
در C#، هنگام استفاده از ساختارهای کنترلی مانند if و for، توجه به ورودیها و جلوگیری از آسیبپذیریها حیاتی است. یکی از نکات امنیتی مهم، اعتبارسنجی ورودیها است. اطمینان حاصل کنید که دادههایی که وارد حلقهها یا شرطها میشوند، از منبع معتبر بوده و فرمت مورد انتظار را دارند. این کار از حملاتی مانند تزریق کد یا دسترسی غیرمجاز جلوگیری میکند. برای مثال، در یک حلقه که با ورودی کاربر کار میکند: // فرض کنید userInput از یک منبع خارجی دریافت شده است if (int.TryParse(userInput, out int number)) { // پردازش ایمن عدد for (int i = 0; i < number; i++) { // ... } } else { // مدیریت خطای ورودی نامعتبر Console.WriteLine("ورودی نامعتبر است."); } استفاده از متدهایی مانند int.TryParse به جای تبدیل مستقیم (Convert.ToInt32)، از بروز خطاهای ناخواسته و بالقوه امنیتی جلوگیری میکند. همچنین، در حلقهها، محدود کردن تعداد تکرارها میتواند از حملات منع سرویس (DoS) ناشی از حلقههای بینهایت جلوگیری کند. 🛡️💡 https://t.me/csharp7
استثناها در C# مکانیزمی برای مدیریت خطاهای زمان اجرا هستند. با استفاده از بلوکهای try-catch-finally میتوان از بروز اختلال در اجرای برنامه جلوگیری کرد. بلوک try کدی را که ممکن است باعث بروز خطا شود، در بر میگیرد. در صورت وقوع استثنا، اجرای کد در بلوک try متوقف شده و کنترل به بلوک catch منتقل میشود. بلوک catch استثنای خاصی را که رخ داده است، مدیریت میکند. میتوان چندین بلوک catch برای انواع مختلف استثناها تعریف کرد. بلوک finally همیشه، چه استثنا رخ دهد و چه رخ ندهد، اجرا میشود و برای آزادسازی منابع استفاده میشود. مثال ساده: try { // کدی که ممکن است خطا ایجاد کند int result = 10 / 0; } catch (DivideByZeroException ex) { // مدیریت خطای تقسیم بر صفر Console.WriteLine($"خطا: {ex.Message}"); } finally { // کدی که همیشه اجرا میشود Console.WriteLine("این بلوک همیشه اجرا میشود."); } این روش به ساخت برنامههای قویتر و پایدارتر کمک میکند. 💡 https://t.me/csharp7
💡 نکته #جاوا_اسکریپت 🟣 موضوع : جاوا اسکریپت در مرورگر - ناوبری و ریدایرکت کاربر به صفحات دیگر با استفاده از location.href و location.assign ✨ نکته : اگه میخوای بدون اینکه کاربر ببینه صفحه قبلی تو تاریخچه مرورگرش بمونه، از location.assign استفاده کن! 🤫 خیلی کاربردیه! ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ لطفا ما رو به دیگران هم معرفی کنید... آدرس کانال اصلی : https://t.me/Tu_24 آدرس وبسایت: https://Tutorial24.ir
📚 نکته #SQLite 🟣 موضوع : بررسی و مقایسه انواع ذخیرهسازی دادهها در SQLite 📖 سرفصل : کاربرد SQLite در IoT ✨ نکته 1: SQLite به دلیل حجم کم کد، ردپای حافظه کوچک (Small Memory Footprint) و عدم نیاز به سرور، به عنوان یک راهکار ایدهآل برای ذخیرهسازی دادهها در دستگاههای اینترنت اشیا (IoT) شناخته میشود. ✨ نکته 2: در محیطهای IoT با منابع محاسباتی محدود، معماری تعبیهشده (Embedded) SQLite امکان پردازش دادههای محلی را بدون تحمیل سربار عملیاتی یک RDBMS کامل فراهم میسازد. ✨ نکته 3: قابلیت حفظ یکپارچگی دادهها از طریق تراکنشهای ACID در SQLite، برای ذخیرهسازی امن و قابل اطمینان دادههای حسگرها و رخدادها در دستگاههای IoT حیاتی است. ✨ نکته 4: SQLite امکان ذخیرهسازی موقت دادهها (Buffering) را در دستگاههای IoT که اتصال شبکه ناپایدار دارند، فراهم میآورد تا دادهها قبل از ارسال به ابر (Cloud) یا سرور، به صورت محلی حفظ شوند. ✨ نکته 5: پایگاه داده SQLite در دستگاههای IoT برای ذخیرهسازی تنظیمات پیکربندی، تاریخچه رخدادها، و فرادادههای حسگرها در یک ساختار رابطهای سازمانیافته به کار میرود. ✨ نکته 6: قابلیت حمل فایل-محور SQLite، فرآیندهایی نظیر بهروزرسانی سیستمعامل (Firmware Updates) یا بازیابی دادهها را در دستگاههای IoT با سادگی کپی یا جایگزینی فایل تسهیل میکند. ✨ نکته 7: استفاده از SQLite در IoT به دلیل ماهیت تکفرآیندی و عدم نیاز به مدیریت همزمان چند کاربر، به خوبی با الگوی عملیاتی اکثر گرههای (Nodes) حسگر منفرد تطابق دارد. ✨ نکته 8: SQLite از عملکرد بالایی در عملیات خواندن (Read-Heavy Operations) برخوردار است که برای تحلیل سریع و محلی دادههای حسگر در زمان جمعآوری آنها مورد نیاز است. ✨ نکته 9: APIهای توسعه SQLite در محیطهای برنامهنویسی مختلف، پشتیبانی لازم برای ادغام آسان و کمهزینه موتور پایگاه داده را در سیستمعاملهای سبک IoT فراهم میکنند. ✨ نکته 10: قابلیت استفاده از عملکرد SQL استاندارد امکان فیلتر، تجمیع و تحلیل دادههای جمعآوری شده از حسگرها را به صورت محلی در خود دستگاه IoT، پیش از انتقال، فراهم میسازد. ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ لطفا ما رو به دیگران هم معرفی کنید... آدرس کانال اصلی : https://t.me/Tu_24 آدرس وبسایت: https://Tutorial24.ir
✨ .NET Tool های جدید چی هستن؟ یه جور پکیج کوچیک که کلی کار باحال انجام میدن! 🛠️ مثلا: * کدتون رو خوشگلتر میکنن (format) 💅 * باگها رو پیدا میکنن 🐛 * پروژه جدید میسازن 🚀 راستی، خیلی راحت نصب میشن: `dotnet tool install --global <اسم_ابزار>` کدنویسی رو آسونتر کن! 😉 https://t.me/dotnet7ir
💡 الگوهای کش Redis در .NET برای افزایش سرعت و کاهش بار دیتابیس، از Redis به عنوان کش استفاده کنید. الگوهای رایج شامل Cache-Aside (بررسی کش قبل از دیتابیس) و Write-Through (نوشتن همزمان در کش و دیتابیس) هستند. ✅ Cache-Aside برای خواندنهای مکرر و Write-Through برای اطمینان از بهروز بودن دادهها مناسبند. انتخاب الگو بستگی به نیاز پروژه دارد. 🚀 با این روشها، اپلیکیشن شما سریعتر و پایدارتر خواهد بود. https://t.me/dotnet7ir
💡 نکته #جاوا_اسکریپت 🟣 موضوع : کار با APIها و درخواستهای شبکه - نکات و ترفندهای پیشرفته در استفاده از Fetch API ✨ نکته : یه تابع wrapper برای fetch بنویس تا بتونی مثل کتابخونههای بزرگ، رهگیری (interceptor) داشته باشی. اینطوری کارایی مثل اضافه کردن توکن یا لاگ خطاها رو یه جا مدیریت میکنی. 🚀🛠️ ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ لطفا ما رو به دیگران هم معرفی کنید... آدرس کانال اصلی : https://t.me/Tu_24 آدرس وبسایت: https://Tutorial24.ir
💡 نکته #SQL 🟣 موضوع : Common Table Expressions (CTE) ✨ نکته : میتونی با CTE یه ستون ROW_NUMBER() درست کنی و ردیف ها رو شماره گذاری کنی! 🔢 ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ لطفا ما رو به دیگران هم معرفی کنید... آدرس کانال اصلی : https://t.me/Tu_24 آدرس وبسایت: https://Tutorial24.ir
🔵 کوییز #PHP آیا میتوان در عبارت ORDER BY از شماره موقعیت ستون به جای نام آن استفاده کرد؟ الف) بله، مجاز است ب) خیر، تنها استفاده از نام ستون مجاز است ج) فقط در کوئریهای پیچیده د) فقط در کوئریهای GROUP BY پاسخ صحیح: الف توضیح: در MySQL امکان استفاده از شماره موقعیت ستون (مثلاً ORDER BY 2) وجود دارد که به معنای مرتبسازی بر اساس ستون دوم در لیست SELECT میباشد. 💗 مطالب بعدی ما رو حتما دنبال کنید! ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ آدرس کانال اصلی: https://t.me/Tu_24 آدرس وبسایت: https://tutorial24.ir/
📌 در C#، متد `GroupBy` میتونه با چند کلید هم کار کنه! 🤯 کافیه یه شیء anonymous بسازی و فیلدهایی که میخوای بر اساسشون گروهبندی انجام بشه رو مشخص کنی. مثال: `products.GroupBy(p => new { p.Category, p.PriceRange })` اینطوری محصولات بر اساس همدستهبندی و هم بازه قیمتی، گروهبندی میشن. 🗂️ دیگه نیازی به گروهبندیهای تو در تو نیست! 😎 https://t.me/csharp7
در C#، آرایههای یکبعدی ساختارهایی برای نگهداری مجموعهای از عناصر همنوع هستند. این آرایهها با یک اندیس شروع از صفر قابل دسترسی هستند. برای تعریف یک آرایه یکبعدی، ابتدا نوع داده عناصر و سپس نام آرایه را مشخص میکنیم و با استفاده از new و تعیین اندازه، آن را ایجاد میکنیم. مثال: // تعریف و ایجاد آرایه ای از اعداد صحیح با 5 عنصر int[] numbers = new int[5]; // مقداردهی اولیه به عناصر آرایه numbers[0] = 10; numbers[1] = 20; numbers[2] = 30; numbers[3] = 40; numbers[4] = 50; // دسترسی به یکی از عناصر int firstElement = numbers[0]; // firstElement برابر با 10 خواهد بود همچنین میتوان آرایهها را هنگام تعریف مقداردهی اولیه کرد: string[] names = { "Alice", "Bob", "Charlie" }; در این حالت، نیازی به تعیین اندازه آرایه به صورت صریح نیست، زیرا کامپایلر تعداد عناصر را تشخیص میدهد. 💡📚 https://t.me/csharp7
💡 نکته #جاوا 🟣 موضوع : متغیرها و متدهای استاتیک (static) ✨ نکته : اگه نیاز به مقداردهی اولیه پیچیدهای برای متغیرهای استاتیکت داری، از بلوک static استفاده کن. این بلوک فقط یک بار موقع لود شدن کلاس اجرا میشه. مثل یه مراسم افتتاحیه! 🎉 ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ لطفا ما رو به دیگران هم معرفی کنید... آدرس کانال اصلی : https://t.me/Tu_24 آدرس وبسایت: https://Tutorial24.ir