🧑💻7 نکته مهم برای پرهیز از کدنویسی تکراری
👈پرهیز از کدنویسی تکراری باعث کاهش خطاها، افزایش نگهداری، صرفهجویی در زمان، افزایش خوانایی و عملکرد کد میشود.
#programming
Channel ° @Cafe_Of_Code
Group ° @IRdeveloperchat
• استفاده از توابع و متدها
توابع و متدها بخشهای تکراری کد را در قالبی مستقل قرار میدهند.
•• پیادهسازی اصول برنامهنویسی شیگرا
با استفاده از کلاسها و اشیا، کدهای تکراری به صورت منطقی دستهبندی میشوند.
•••استفاده از الگوهای طراحی (Design Patterns)
الگوهای طراحی به سازماندهی و استفاده مجدد از کد کمک میکنند.
••••ایجاد ماژولهای مستقل
ماژولها قابلیت استفاده مجدد و کاهش تکرار را فراهم میکنند.
•••••نوشتن تستهای واحد (Unit Tests)
تستهای واحد کدهای تکراری را شناسایی و رفع میکنند.
••••••پیادهسازی الگوهای DRY (Don't Repeat Yourself)
اصل DRY به معنی عدم تکرار کدها و استفاده مجدد از بخشهای مشترک است.
•••••••نوشتن مستندات کامل و دقیق
مستندات به تیم کمک میکنند تا کدهای موجود را بشناسند و از تکرار آنها اجتناب کنند.
👈پرهیز از کدنویسی تکراری باعث کاهش خطاها، افزایش نگهداری، صرفهجویی در زمان، افزایش خوانایی و عملکرد کد میشود.
#programming
Channel ° @Cafe_Of_Code
Group ° @IRdeveloperchat
🔥8
خروجی این کد چیست؟
#javanoscript #challenge
#Ah_sear
Channel ° @Cafe_Of_Code
Group @IRdeveloperchat
let a = 1;
{
let a = 2;
}
a+=1;
console.log(a);
#javanoscript #challenge
#Ah_sear
Channel ° @Cafe_Of_Code
Group @IRdeveloperchat
👨💻9
😍7👨💻4
🔴 امروز 10 آگوست روز جهانی تنبلیه
- روزت مبارک رفیق❤️
- روزت مبارک رفیق❤️
❤14
خروجی این کد چیست
#javanoscript #challenge
#Ah_sear
Channel ° @Cafe_Of_Code
Group ° @IRdeveloperchat
const target = {
secret: "hidden",
reveal: "nothing"
};
const handler = {
get: function(obj, prop, receiver) {
if (prop === "secret") {
return "revealed";
}
return Reflect.get(...arguments);
}
};
const proxy = new Proxy(target, handler);
with (proxy) {
console.log(secret);
console.log(reveal);
}#javanoscript #challenge
#Ah_sear
Channel ° @Cafe_Of_Code
Group ° @IRdeveloperchat
❤6
جواب کد بالا
Anonymous Quiz
29%
hidden nothing
34%
revealed nothing
26%
hidden revealed
11%
revealed revealed
❤6
باز هم لاراول و نسخه جدیدتر. تغییرات کوچیک ولی مفید و کاربردی...
باهم نگاهی بندازیم به چندتا از مهمترین تغییرات جدید لاراول تو نسخه ۱۱.۲۰
اضافه شدن Assertion جدید برای جابها
- این نسخه سه تا Assertion جدید داره که به شما اجازه میده تا مطمئن بشید جاب (Jobs) و صف (Queue) شما بدون مشکل کار میکنند.
اضافه شدن Exception برای فایلهای Mix
- اگر از Laravel Mix استفاده میکنید، دیگه نگران بروز خطا موقع استفاده از اون نباشید. حالا یک Exception جدید به نام MixFileNotFoundException پرتاب میشه که میتونید خطاها رو به راحتی هندل کنید.
دریافت آیدی آخرین رکورد اضافه شده به دیتابیس
- از این به بعد وقتی یه کوئری رو اجرا کنید و یه رکورد به دیتابیس اضافه بشه، آیدی اون رکورد با متود insertGetId() در دسترس و قابل دریافته.
مسیر دلخواه حین ساخت کامپوننتها
- از این به بعد خیلی راحت میتونید موقع ساخت کامپوننتها با آرتیسن کامند، مسیری که میخوایید اون کامپوننت اونجا ساخته بشه رو هم وارد کنید.
اضافه شدن هلپر جدید deduplicate
- یه هلپر جدید به نام deduplicate به کلاس Str اضافه شده که به شما اجازه میده کاراکترهای تکراری پشت سر هم در یک رشته رو حذف کنید.
#laravel
#programming
Channel ° @Cafe_Of_Code
Group ° @IRdeveloperchat
باهم نگاهی بندازیم به چندتا از مهمترین تغییرات جدید لاراول تو نسخه ۱۱.۲۰
اضافه شدن Assertion جدید برای جابها
- این نسخه سه تا Assertion جدید داره که به شما اجازه میده تا مطمئن بشید جاب (Jobs) و صف (Queue) شما بدون مشکل کار میکنند.
$job = (new ProcessVideo)->withFakeQueueInteractions();
$job->handle(); // اجرای جاب
$job->assertNotDeleted(); // اطمینان از اینکه جاب پاک نشده
$job->assertNotFailed(); // اطمینان از اینکه جاب شکست نخورده
$job->assertNotReleased(); // اطمینان از اینکه جاب آزاد نشده
اضافه شدن Exception برای فایلهای Mix
- اگر از Laravel Mix استفاده میکنید، دیگه نگران بروز خطا موقع استفاده از اون نباشید. حالا یک Exception جدید به نام MixFileNotFoundException پرتاب میشه که میتونید خطاها رو به راحتی هندل کنید.
try {
mix('css/app.css');
} catch (Illuminate\Foundation\MixFileNotFoundException $e) {
// Handle Exception
}دریافت آیدی آخرین رکورد اضافه شده به دیتابیس
- از این به بعد وقتی یه کوئری رو اجرا کنید و یه رکورد به دیتابیس اضافه بشه، آیدی اون رکورد با متود insertGetId() در دسترس و قابل دریافته.
$id = DB::table('users')->insertGetId([
'name' => 'John Doe',
'email' => 'john@example.com',
]); // Returns IDمسیر دلخواه حین ساخت کامپوننتها
- از این به بعد خیلی راحت میتونید موقع ساخت کامپوننتها با آرتیسن کامند، مسیری که میخوایید اون کامپوننت اونجا ساخته بشه رو هم وارد کنید.
php artisan make:component Foo --path custom/path
اضافه شدن هلپر جدید deduplicate
- یه هلپر جدید به نام deduplicate به کلاس Str اضافه شده که به شما اجازه میده کاراکترهای تکراری پشت سر هم در یک رشته رو حذف کنید.
Str::deduplicate('www...test...com', '.'); // 'www.test.com'
Str::deduplicate('123---456---789', '-'); // '123-456-789'
Str::deduplicate('Hello World'); // 'Hello World'#laravel
#programming
Channel ° @Cafe_Of_Code
Group ° @IRdeveloperchat
🔥8
🔥8
💠 کاربری BIOS چیست؟
- برنامه ای داخل تراشه ROM BIOS در برد اصلی است که شناسایی قطعات و اطمینان از سالم بودن آنها و راهاندازی سیستم را مدیریت میکند.
🔹️تنظیمات انجام شده در برنامه BIOS در تراشهای به نام CMOS که از نوع خواندنی/نوشتنی است، ذخیره میشود.
🔸️در زبانه Boot بایوس میتوان اولويت تجهیزات برای بوتشدن سیستم را تعیین کرد.
🔺️نکته: در رایانه های جدید به جای BIOS از UEFI استفاده میشود.
#information
Channel • @Cafe_Of_Code
Group • @IRdeveloperchat
- برنامه ای داخل تراشه ROM BIOS در برد اصلی است که شناسایی قطعات و اطمینان از سالم بودن آنها و راهاندازی سیستم را مدیریت میکند.
🔹️تنظیمات انجام شده در برنامه BIOS در تراشهای به نام CMOS که از نوع خواندنی/نوشتنی است، ذخیره میشود.
🔸️در زبانه Boot بایوس میتوان اولويت تجهیزات برای بوتشدن سیستم را تعیین کرد.
🔺️نکته: در رایانه های جدید به جای BIOS از UEFI استفاده میشود.
#information
Channel • @Cafe_Of_Code
Group • @IRdeveloperchat
🔥9
💠 انواع سیگنال دادهای
● دیجیتال: دستگاههای دیجیتالی
● آنالوگ: مانند صدای انسان
🔰اصطلاحات
🔹️فرکانس:
- تعداد تکرار یک سيگنال در واحد زمان
🔹️باندفرکانسی:
- محدوده مشخصی از فرکانسها
🔹️باند فرکانسی ISM:
- باند فرکانسی خاص که دولت ها به صورت آزاد در اختیار همه کاربران قرار میدهند.
🔹️پهنای باند:
● تعریف مخابراتی:
- اختلاف بین بالاترین و پایینترین فرکانس یک رسانه که برای انتقال اطلاعات استفاده میشود.
● تعریف علم رایانهای:
- نرخ ارسال اطلاعات در رسانه یا حداکثر تعداد بیت که میتوان به طور همزمان از رسانه منتقل شود.
#information #signal #Frequency
Channel • @Cafe_Of_Code
Group • @IRdeveloperchat
● دیجیتال: دستگاههای دیجیتالی
● آنالوگ: مانند صدای انسان
🔰اصطلاحات
🔹️فرکانس:
- تعداد تکرار یک سيگنال در واحد زمان
🔹️باندفرکانسی:
- محدوده مشخصی از فرکانسها
🔹️باند فرکانسی ISM:
- باند فرکانسی خاص که دولت ها به صورت آزاد در اختیار همه کاربران قرار میدهند.
🔹️پهنای باند:
● تعریف مخابراتی:
- اختلاف بین بالاترین و پایینترین فرکانس یک رسانه که برای انتقال اطلاعات استفاده میشود.
● تعریف علم رایانهای:
- نرخ ارسال اطلاعات در رسانه یا حداکثر تعداد بیت که میتوان به طور همزمان از رسانه منتقل شود.
#information #signal #Frequency
Channel • @Cafe_Of_Code
Group • @IRdeveloperchat
❤5😍3
💠 نویز چیست؟
- عامل مخربی که شکل یا مقدار سیگنال ارسالی را تغییر میدهد.
🔰 عوامل ایجاد نویز:
● همشنوایی:
- اثر میدان مغناطیسی یک کابل در کابل مجاور مثل کابلهای برق فشار قوی یا رعد و برق.
● حرارتی:
- حرارت و گرما باعث حرکت الکترونها به صورت تصادفی و تغییر در اندازه و شکل سيگنال میشود.
● القایی:
- موتور های مکانیکی و وسایل الکترونیکی مانند یک آنتن فرستنده عمل کرده و نویز تولید میکنند.
🔺️نکته: نسبت سيگنال به نویز یکی از معیارهای ارزیابی سیستمهای ارتباطی است که هرچه بیشتر باشد یعنی دخالت نویز کمتر است.
🔺️نکته: سرعت انتقال اطلاعات با پهنای باند ارتباط مستقیم و با نویز ارتباط معکوس دارد.
#information #error
Channel • @Cafe_Of_Code
Group • @IRdeveloperchat
- عامل مخربی که شکل یا مقدار سیگنال ارسالی را تغییر میدهد.
🔰 عوامل ایجاد نویز:
● همشنوایی:
- اثر میدان مغناطیسی یک کابل در کابل مجاور مثل کابلهای برق فشار قوی یا رعد و برق.
● حرارتی:
- حرارت و گرما باعث حرکت الکترونها به صورت تصادفی و تغییر در اندازه و شکل سيگنال میشود.
● القایی:
- موتور های مکانیکی و وسایل الکترونیکی مانند یک آنتن فرستنده عمل کرده و نویز تولید میکنند.
🔺️نکته: نسبت سيگنال به نویز یکی از معیارهای ارزیابی سیستمهای ارتباطی است که هرچه بیشتر باشد یعنی دخالت نویز کمتر است.
🔺️نکته: سرعت انتقال اطلاعات با پهنای باند ارتباط مستقیم و با نویز ارتباط معکوس دارد.
#information #error
Channel • @Cafe_Of_Code
Group • @IRdeveloperchat
❤8
عبارت GPU به چه معناست؟
Anonymous Quiz
3%
همان CPU است.
2%
همان RAM است.
5%
نوعی شکاف توسعه است.
90%
واحد پردازشگر گرافیکی است.
❤5
💠 رمزنگاری چیست؟
- رمزنگاری به معنای تبدیل اطلاعات به یک فرم قابل فهم توسط مخاطب مورد نظر است. این فرآیند به وسیله یک رمز (یا الگوریتم) انجام میشود تا از دسترسی افراد غیرمجاز جلوگیری شود.
🔰انواع رمزنگاری:
🔹️یک طرفه
- فقط عبارت رمزنگاری شده و قابل رمزگشایی نیست (غیر قابل بازگشت)
مثال: رمز حساب کاربری شبکه، رمز حساب اینترنتی بانکی، پیامک یک بار مصرف
🔹️دو طرفه
● متقارن: وجود کلید یکسان برای رمزنگاری و رمز گشایی
● نامتقارن: وجود کلید شخصی و عمومی برای رمزنگاری و رمزگشایی (ایمنترین روش)
🔺️نکته: در روش رمزنگاری دوطرفه نامتقارن کلید عمومی برای رمزنگاری و کلید شخصی برای رمزگشایی استفاده میشود.
#information #encryption
Channel • @Cafe_Of_Code
Group • @IRdeveloperchat
- رمزنگاری به معنای تبدیل اطلاعات به یک فرم قابل فهم توسط مخاطب مورد نظر است. این فرآیند به وسیله یک رمز (یا الگوریتم) انجام میشود تا از دسترسی افراد غیرمجاز جلوگیری شود.
🔰انواع رمزنگاری:
🔹️یک طرفه
- فقط عبارت رمزنگاری شده و قابل رمزگشایی نیست (غیر قابل بازگشت)
مثال: رمز حساب کاربری شبکه، رمز حساب اینترنتی بانکی، پیامک یک بار مصرف
🔹️دو طرفه
● متقارن: وجود کلید یکسان برای رمزنگاری و رمز گشایی
● نامتقارن: وجود کلید شخصی و عمومی برای رمزنگاری و رمزگشایی (ایمنترین روش)
🔺️نکته: در روش رمزنگاری دوطرفه نامتقارن کلید عمومی برای رمزنگاری و کلید شخصی برای رمزگشایی استفاده میشود.
#information #encryption
Channel • @Cafe_Of_Code
Group • @IRdeveloperchat
❤6
👨💻7
✨ امروز August 13
روز جهانی چپ دستهاست ؛
روزتون مبارک❤️
روز جهانی چپ دستهاست ؛
روزتون مبارک❤️
❤13
♾ سلام رفقا ♾
⁉️ بنظرتون کدوم برای پروفایل چنل مناسب تر هستش ؟¿؟
1 ««« ❤️ 2 ««« 🔥
Channel • @Cafe_Of_Code
Group • @IRdeveloperchat
⁉️ بنظرتون کدوم برای پروفایل چنل مناسب تر هستش ؟¿؟
1 ««« ❤️ 2 ««« 🔥
Channel • @Cafe_Of_Code
Group • @IRdeveloperchat
🔥12❤5💔4
❤14😍3🔥2
✅ 5 تا کتابخونه جادویی واسه عاشقان جاوا اسکریپت😁👌
1️⃣ AnimeJs
💢 میتونی خیلی ساده باهاش به سایتت انیمیشن بدی، مطمئنم ازش خوشت میاد
2️⃣ AcrossTabs
💢 یه کتابخونه جالبه که میتونی ازش برای ارتباط برقرار کردن بین تب ها استفاده کنی
3️⃣ Fullpage.Js
💢 دیدی وقتی تو یه سایت اسکرول میکنی قسمت های مختلف میاد؟ با این کتابخونه میتونی همچین کاری کنی
4️⃣ Offline.js
💢 این کتابخونه کلا کار خاصی انجام نمیده ولی چک میکنه ببینه شما انلاینید یا نه
5️⃣ Swiper js
💢 اینو کلا از قصد گذاشتم اخر که ببینید چه کتابخونه ایه! 😉 بیش از 300 نوع اسلایدر داره و توصیه میکنم بهش یه نگاه بندازین.
#Programming #Frontend
Channel • @Cafe_Of_Code
Group • @IRdeveloperchat
1️⃣ AnimeJs
💢 میتونی خیلی ساده باهاش به سایتت انیمیشن بدی، مطمئنم ازش خوشت میاد
2️⃣ AcrossTabs
💢 یه کتابخونه جالبه که میتونی ازش برای ارتباط برقرار کردن بین تب ها استفاده کنی
3️⃣ Fullpage.Js
💢 دیدی وقتی تو یه سایت اسکرول میکنی قسمت های مختلف میاد؟ با این کتابخونه میتونی همچین کاری کنی
4️⃣ Offline.js
💢 این کتابخونه کلا کار خاصی انجام نمیده ولی چک میکنه ببینه شما انلاینید یا نه
5️⃣ Swiper js
💢 اینو کلا از قصد گذاشتم اخر که ببینید چه کتابخونه ایه! 😉 بیش از 300 نوع اسلایدر داره و توصیه میکنم بهش یه نگاه بندازین.
#Programming #Frontend
Channel • @Cafe_Of_Code
Group • @IRdeveloperchat
❤6⚡2🔥2