کافه برنامه نویسان | 𝗣𝗿𝗼𝗴𝗿𝗮𝗺𝗲𝗿s 𝗖𝗮𝗳𝗲 – Telegram
کافه برنامه نویسان | 𝗣𝗿𝗼𝗴𝗿𝗮𝗺𝗲𝗿s 𝗖𝗮𝗳𝗲
2.75K subscribers
1.08K photos
264 videos
30 files
1.13K links
👈 اینجا جایی است که یاد می‌گیریم و ایده‌هایمان را به واقعیت تبدیل می‌کنیم و در نهایت با هم رشد می‌کنیم

💬 Group : @IRdeveloperchat
تبادل / تبلیغات : @ProgramersCafeSup 🫴


♂️ مالک : @Ali_Rohany ♂️
Download Telegram
به جای اینکه از  alert  خشک بی روح جاوا اسکریپت استفاده کنی🤮
بیا از کتابخانه sweetAler2 استفاده کن🤩

♻️توضیح استفاده ازش رو هم تو خوده سایتش داده لازم نیست نگرانش باشید

#javanoscript #programming


𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
👨‍💻86
خروجی کد زیر چیست؟؟


const weakMap = new WeakMap();
const array = [1, 2, 3];
const obj = {};

weakMap.set(obj, array);

const result = weakMap.get(obj).reduce((acc, val) => acc + val);

console.log(result);


🔥این بار جواب رو تو کامنت ها بگید بعدا در مورد جوابش توضیح میدم

#javanoscript #challenge

#Ah_sear

Channel • @Programers_Cafe
Group • @IRdeveloperchat
👨‍💻6
🔥توی این پست می‌خوام switch statement رو در JavaScript کامل تشریح دهم

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

▎ساختار کلی:

switch (expression) {
case value1:
// کدی که باید اجرا بشه اگر expression برابر با value1 باشه
break;
case value2:
// کدی که باید اجرا بشه اگر expression برابر با value2 باشه
break;
// می‌تونی بیشتر از این هم داشته باشی
default:
// کدی که باید اجرا بشه اگر هیچکدوم از موارد بالا درست نبود
}

▎توضیحات:

1⃣expression:
این همون متغیریه که می‌خوایم بررسی کنیم.
2⃣case:
هر case یه مقدار ممکن رو بررسی می‌کنه. اگر expression با یکی از این مقادیر برابر بود، کدهای اون case اجرا می‌شن.
3⃣break:
بعد از هر case معمولاً از break استفاده می‌کنیم تا از ادامه اجرای بقیه caseها جلوگیری کنیم. اگر break نباشه، جاوااسکریپت به اجرای بقیه caseها ادامه می‌ده تا به یه break یا default برسه.
4⃣default:
این بخش اختیاریه و زمانی استفاده میشه که هیچکدوم از caseها درست نباشن.

▎مثال:

فرض کن می‌خوایم روز هفته رو بررسی کنیم:
let day = 3;

switch (day) {
case 1:
console.log("شنبه");
break;
case 2:
console.log("یکشنبه");
break;
case 3:
console.log("دوشنبه");
break;
case 4:
console.log("سه‌شنبه");
break;
default:
console.log("روز نامشخص");
}

در این مثال، چون day برابر با ۳ هست، خروجی میشه "دوشنبه".

🔰اSwitch معمولاً برای مقادیر ثابت مثل عدد یا رشته استفاده میشه و به خاطر خوانایی بیشترش نسبت به چندین if-else، خیلی محبوبه.

#javanoscript #switch #statement

Channel • @Programers_Cafe
Group •@IRdeveloperchat
5👨‍💻3
یکی از ویژگی‌های قدرتمند جاوااسکریپت، Closures است. Closure زمانی رخ می‌دهد که یک تابع به متغیرهای موجود در اسکوپ والد خود دسترسی دارد، حتی پس از اینکه تابع والد اجرا شده باشد.

function outerFunction() {
let outerVariable = 'I am outside!';

function innerFunction() {
console.log(outerVariable);
}

return innerFunction;
}

const myClosure = outerFunction();
myClosure(); // خروجی: I am outside!

در این مثال، innerFunction به متغیر outerVariable دسترسی دارد، حتی پس از اینکه outerFunction اجرا شده و به پایان رسیده است.


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




#programming #Js #Closure

𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
7🔥32
خروجی کد زیر چیست؟؟

let funcs = [];

for (var i = 0; i < 3; i++) {
funcs.push(() => i);
}

console.log(funcs[0]());
console.log(funcs[1]());
console.log(funcs[2]());

#javanoscript #challenge

Channel • @Programers_Cafe
Group • @IRdeveloperchat
👨‍💻7
💠 ویژگی های فریلنسری:

فریلنسری بصورت پروژه‌ای کار میکنه و هیچ قرارداد ثابتی برای حضورت در شرکت و یا سازمان ندارد

● تو سفر و تعطیلات هم میشه کار کرد

● ساعت کاریتون کاملا دست خود فریلنسره

● شامل بیمه و پاداش نمیشود

● با هر لباسی میشه رو پروژه تمرکز داشته باشی

● رهایی از رفت و آمد های تکراری و نموندن در پشت چراغ قرمز و ترافیک

#programming

Channel@Programers_Cafe

Group@IRdeveloperchat
👨‍💻4🔥32
خروجی کد زیر چیست ؟

const animal = {
sound: "Generic sound",
makeSound() {
return this.sound;
}
};

const dog = Object.freeze(Object.create(animal));
dog.sound = "Bark";

const result = dog.makeSound();

console.log(result);

#javanoscript #challenge

Channel • @Programers_Cafe
Group • @IRdeveloperchat
👨‍💻6
سرعت زبان های برنامه نویسی👨‍💻

❗️دوستان وقتی میگیم یه زبان سطح پایینه منظور این نیست که زبان ضعیفی هست


#programming #javanoscript  #Python

𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
👨‍💻94
This media is not supported in your browser
VIEW IN TELEGRAM
⚡️تکنیک برای ریسپانسیو سازی⚡️

#CSS #Html #Front_end

𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
👨‍💻6🔥4😍3
🔰 امروز سالگرد تاج‌گذاری داریوش بزرگ هخامنشی هست .

خداوند این کشور را از دشمن، از خشکسالی و دروغ محفوظ دارد.



𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
213🕊3💔1
کدوم حوزه رو انتخاب میکنید ؟🧑‍💻


#programming #javanoscript  #Python

𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
👨‍💻72
☑️ موضوعات پرطرفدار از دید سایت daily.dev 👀♻️

1. وب‌اسمبلی (WebAssembly) 🌐🚀

🔧 آیا تا به حال فکر کرده‌اید که زبان‌هایی مثل C++ یا Rust را در مرورگر اجرا کنید؟ وب‌اسمبلی این امکان را فراهم کرده! 💡 با این تکنولوژی، اپلیکیشن‌های پیچیده و سنگین را با کارایی بالا در وب اجرا کنید.

به دنیای جدید وب‌اپلیکیشن‌ها خوش آمدید! 🚀🌍
2. فریم‌ورک‌های مدرن جاوااسکریپت 💻

🔥 دنیای جاوااسکریپت همچنان در حال تحول است! از قابلیت‌های جدید Next.js 13 مثل کامپوننت‌های سروری گرفته تا فریم‌ورک‌هایی مثل Solid.js و Qwik که سرعت و کارایی فوق‌العاده‌ای ارائه می‌دهند.
3. میکرو-فرانت‌اندها 🧩🔗


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

این انعطاف‌پذیری و مقیاس‌پذیری بالا را از دست ندهید! 🚀🔧
4. تحول در CSS-in-JS 🎨💻

🎨 CSS-in-JS همچنان در حال تکامل است! با ابزارهایی مثل Vanilla Extract و Stitches، هم اکنون نیز می‌توانید CSS را با سادگی و کارایی بالا در پروژه‌های خود بکار بگیرید.

با این ابزارهای جدید، تجربه توسعه خود را به سطح بعدی ببرید! 🚀
5. سیستم‌های طراحی و کتابخانه‌های کامپوننت 📦🎨

🔧 سیستم‌های طراحی و کتابخانه‌های کامپوننت، توسعه وب را ساده‌تر و یکپارچه‌تر کرده‌اند! ابزارهایی مثل Storybook و کتابخانه‌های جدیدی مثل Chakra UI به شما این امکان را می‌دهند که کامپوننت‌های قابل استفاده مجدد و زیبا ایجاد کنید.

یکپارچگی و سرعت توسعه را با این ابزارها تجربه کنید! 🚀💻
6. کامپیوتینگ در لبه و JAMstack 🌍


با ظهور JAMstack و کامپیوتینگ در لبه، تجربه وب به مرحله‌ای جدید وارد شده است! پلتفرم‌هایی مثل Vercel و Netlify امکان اجرای منطق سروری نزدیک به کاربر را فراهم کرده‌اند، که منجر به بهبود سرعت و کاهش تأخیر می‌شود.

آینده وب در لبه است! 🌐🚀
7. هوش مصنوعی و اتوماسیون در توسعه 🤖💡

🤖 با ابزارهای هوش مصنوعی مثل GitHub Copilot، کدنویسی به سطح جدیدی از هوشمندی رسیده است! پیشنهادات کد و تکمیل خودکار، سرعت و دقت شما را در توسعه افزایش می‌دهد.

وقت آن رسیده که با این ابزارهای جدید، نوآوری کنید! 🚀💻
8. اپلیکیشن‌های وب پیش‌رونده (PWA) 📱

📱 اپلیکیشن‌های وب پیش‌رونده (PWA) همچنان رو به جلو هستند! با قابلیت‌های آفلاین و نوتیفیکیشن‌های پیشرفته، تجربه‌ای شبیه به اپلیکیشن‌های بومی را برای کاربران فراهم کنید.

وب‌اپلیکیشن‌های آینده را امروز بسازید
🔰 به‌روز باشید و آینده وب را با این ابزارهای جدید بسازید! 🚀

𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
🔥62👨‍💻2
بیاید کمی در مورد call stack و memory heap در جاوااسکریپت صحبت کنیم امشب.

🔆 در واقع Call Stack یک ساختار داده‌ای است که برای پیگیری فراخوانی‌های توابع در جاوااسکریپت استفاده می‌شود. هر بار که یک تابع فراخوانی می‌شود، یک فریم جدید به بالای استک اضافه می‌شود. وقتی تابع به پایان می‌رسد، فریم از استک حذف می‌شود. این فرآیند به صورت LIFO (Last In, First Out) عمل می‌کند.

🔆 از طرف دیگه Memory Heap یک ناحیه از حافظه است که برای تخصیص و آزادسازی اشیاء و داده‌ها در زمان اجرا استفاده می‌شود. برخلاف Call Stack که ساختار منظمی دارد، Memory Heap ساختار نامنظمی دارد و برای ذخیره‌سازی اشیاء بزرگ و داده‌های پویا استفاده می‌شود.

#programming #Js

𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
7👨‍💻2
خروجی کد زیر چیست؟

function* generatorFunction() {
yield 1;
yield* function* () {
yield 2;
yield 3;
}();
yield 4;
}

const gen = generatorFunction();
console.log(gen.next().value);
console.log(gen.next().value);
console.log(gen.next().value);
console.log(gen.next().value);
console.log(gen.next().value);

#javanoscript

#Ah_sear

Channel • @Programers_Cafe
Group • @IRdeveloperchat
👨‍💻5
دوستان به نظرتون هوش مصنوعی جای ما رو میگیره ؟🤖

#programming   #Ai

𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
💔17😁3👨‍💻2
🐬 سطوح دیباگ در پایتون :

1- print(x)
2-  import pdb
3- print(dir(x))
4- gdb
5- انداختن لپ تاپ از پنجره😂💔

#fact #python #programming #Fun

𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
😁9🔥3🕊1
یک نکته ای که کمتر جایی درموردش صحبت میکنن بحث Virtual DOM هستش. بیاین باهم کمی در موردش صحبت کنیم ولی اگه شماهم نکته جالبی ازش دارین تو کامنت ها بگین جلو بقیه بچه ها 👍❤️

در واقع Virtual DOM که بیشتر هم در React.js مطرح هستش یک کپی مجازی از DOM هست که به جای اعمال مستقیم تغییرات روی DOM واقعی، تغییرات رو ابتدا روی این نسخه مجازی انجام میده و بعد ری‌اکت فقط بخش‌هایی از DOM واقعی رو که تغییر کردن آپدیت می‌کنه، نه کل ساختار رو.

🌱 این کار باعث میشه :
1️⃣ کارایی افزایش پیدا کنه چون تغییرات غیرضروری در DOM واقعی انجام نمی‌شن.
2️⃣ رندرینگ بهینه‌تر انجام بشه؛ فقط بخش‌های لازم آپدیت می‌شن.
3️⃣ اپلیکیشن‌ها سریع‌تر و با مصرف منابع کمتر اجرا بشن.

#programming #Frontend

𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
👨‍💻52🔥2