چندریختی یکی از پایههای اصلی برنامه نویسی شیءگراس که مفهومش میشه همون چندشکلی یا قابلیت داشتن چندین شکل که البته واضحه. این مفهوم به آبجکت هامون این اجازه رو میده تا رفتار های متفاوتی برای یه متود یا یه عمل یکسان از خودشون نشون بدن. یعنی میتونیم یه متود رو چندین بار تعریف کنیم و کارای مختلفی باهاش کنیم با اینکه اسمشون یکیه
مثال زیر نحوه استفاده از چند ریختی در زمان بارگذاری متود ( Method Overloading ) رو نشونتون میده:
class Shape {
draw() {
console.log("Drawing a shape");
}
draw(width, height) {
console.log("Drawing a shape with width:", width, "and height:", height);
}
}
class Circle extends Shape {
draw() {
console.log("Drawing a circle");
}
draw(radius) {
console.log("Drawing a circle with radius:", radius);
}
}
const circle = new Circle();
circle.draw(); // Output: Drawing a circle
circle.draw(10); // Output: Drawing a circle with radius: 10
const shape = new Shape();
shape.draw(); // Output: Drawing a shapeوابستگی در OOP اشاره به ارتباط دوتا کلاس به هم داره که یعنی یه کلاس برای اینکه کارشو انجام بده نیاز به یه کلاس دیگه داره، این وابستگی ها هم میتونه به صورت مستقیم یا غیر مستقیم باشه
یه مثال هم از وابستگی باهم ببینیم:
class Animal {
constructor(name, soundMaker) {
this.name = name;
this.soundMaker = soundMaker;
}
makeSound() {
this.soundMaker.makeSound(this);
}
}
class SoundMaker {
makeSound(animal) {
console.log(`${animal.name} makes a ${animal.sound}`);
}
}
const dog = new Animal("Dog", new SoundMaker());
const cat = new Animal("Cat", new SoundMaker());
dog.makeSound(); // Output: Dog makes a bark
cat.makeSound(); // Output: Cat makes a meow#oop #oop_7
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥8⚡4🔥2💔1
چرخش صفحه با استفاده از پایتون ⌨️
⚡️ توی این پست، یک برنامه ای میخوایم بنویسیم که هر یک ثانیه صفحه رو بچرخونه، البته که این کار با کتابخونه انجام میشه پس حتما این خط رو توی cmd تون اجرا کنید:
حالا ایمپورتش میکنیم و کدمون رو مینویسیم:
⚠️ فقط حواستون باشه که قبل از اجرای این حتما کاراتون رو ذخیره بکنید چون ممکنه بعد از اجراش خیلی سخت بشه جلوش رو بگیرید(مخصوصا اگر توی وی اس کد در حال اجراش هستید)
#python #rotatescreen
☕️ @CodeExplore
pip install rotate-screen
حالا ایمپورتش میکنیم و کدمون رو مینویسیم:
import time
import rotatescreen as rs
display = rs.get_primary_displayed()
listOfAngels = [90,180,270,0]
while True:
for x in listOfAngels:
display.rotate_to(x)
time.sleep(1)
#python #rotatescreen
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡7🔥4❤🔥2
🧠 مدیرعامل OpenAI: هوش مصنوعی GPT-5 مانند یک مغز مجازی خواهد بود
▪️سم آلتمن (Sam Altman)، مدیرعامل شرکت OpenAI و یکی از سرمایهگذاران خطرپذیر سیلیکون ولی، در تازهترین مصاحبه خود به پیچیدگیهای GPT-4 پرداخته و برنامههای آینده این شرکت برای توسعه GPT-5 اشاره کرده است.
▪️آلتمن در صحبتهای خود چشمانداز در حال تکامل هوش مصنوعی و تأثیر عمیق آن بر تعاملات انسانی و زمینههای برنامهنویسی را مطرح کرد. به گفته وی، طی 12 ماه گذشته قابلیتهای هوش مصنوعی در حوزه برنامهنویسی به اوج خود خواهد رسید. وی همچنین معتقد است که GPT-5 ممکن است مانند یک مغز مجازی عمل کرده و به کاربر در رابطه با انجام وظایف مختلف کمک کند.
#Ai #ChatGPT
☕️ @CodeExplore
▪️سم آلتمن (Sam Altman)، مدیرعامل شرکت OpenAI و یکی از سرمایهگذاران خطرپذیر سیلیکون ولی، در تازهترین مصاحبه خود به پیچیدگیهای GPT-4 پرداخته و برنامههای آینده این شرکت برای توسعه GPT-5 اشاره کرده است.
▪️آلتمن در صحبتهای خود چشمانداز در حال تکامل هوش مصنوعی و تأثیر عمیق آن بر تعاملات انسانی و زمینههای برنامهنویسی را مطرح کرد. به گفته وی، طی 12 ماه گذشته قابلیتهای هوش مصنوعی در حوزه برنامهنویسی به اوج خود خواهد رسید. وی همچنین معتقد است که GPT-5 ممکن است مانند یک مغز مجازی عمل کرده و به کاربر در رابطه با انجام وظایف مختلف کمک کند.
#Ai #ChatGPT
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡12🔥5😁4❤🔥2
توی javascript میتونم یه آرایه رو به طوری مدیریت کنیم که تعداد اعضا و اندازش رو مشخص کنیم و با یسری مقادیر پیش فرض هم پرش کنیم
const array = Array(5).fill('');
const matrix = Array(5).fill(0).map(()=>Array(5).fill(0));#javascript
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡10🔥4❤🔥1
ریاکت ۱۹ که به تازگی رونمایی شده است:
1️⃣ یکی از جدیدترین قابلیتها در react compiler این است که react به صورت خودکار تصمیم میگیرد که چگونه و چه زمانی state را تغییر دهد و رابط کاربری را بروز کند.
با این کار، ما دیگر نیازی به انجام این کار به صورت دستی نداریم. همچنین به این معنی است که نیازی به استفاده از ()useMemo()، useCallbackو ()memo نیست.
2️⃣ تا به حال، اجزای React عمدتاً در سمت کلاینت اجرا می شدند. اما React در حال معرفی مفهوم پیشگامانه اجرای اجزا در سمت سرور است.
در react 19 مولفههای سرور مستقیما در react ادغام میشوند . برای استفاده از این منظور شما فقط باید "use server" را به عنوان خط اول جز اضافه کنید. که کامپوننت خود را به یک کامپوننت سمت سرور تبدیل میکند.
3️⃣ یکی دیگر از قابلیتهای جالب Action است که به جای استفاده از onsubmit در form ها میتونیم از این ویژگی استفاده کنیم . مقدار ویژگی action روشی برای ارسال دادهها در سمت مشتری یا سرور خواهد بود.هدف این است که کار با فرم ها و مدیریت دادهها آسان تر شود.
4️⃣ اگر بخواهید از metadata برای تعیین title , description هر صفحه استفاده کنید میتوانید از قابلیت جدید ریکت که در بهینه سازی سئو بسیار موثر استفاده کنید .
از آنجا که React ۱۹ از Server Side Rendering (SSR) پشتیبانی میکند، شما میتوانید این اطلاعات را به طور دینامیک در سمت سرور تولید کرده و به صفحات خود اضافه کنید.
5️⃣ در ریکت باید عملکرد برنامهها رو به ویژه با تصاویر و سایر فایلهای دارایی به دقت مدیریت کنیم اغلب view ابتدا در مرورگر رندر میشود سپس تصاویر و فایلها و ... که این میتواند منجر به کند شدن یا نمایش یک محتوای بدون استایل شود .
در React 19، تصاویر و سایر فایلها در پسزمینه بارگذاری میشوند که باعث بهبود زمان بارگذاری صفحه و کاهش دوره انتظار میشود.
6️⃣ یک hook جدید به اسم use()
این هوک نحوه استفاده از promises , async code را ساده تر میکند از این هوک برای اجرای fetchها به جای استفاده از useEffect یا useState استفاده میکنیم.
7️⃣ یک hook جدید به اسم useFormState()
این هوک به شما این امکان را میدهد که state هارا بر اساس نتیجه ارسال فرم خود به روز کنید.
🔥 🔥 🔥 🔥 🔥 🔥 🔥 🔥
منبع :
🖥 https://www.linkedin.com/in/paria-jokar
#react19
☕️ @CodeExplore
با این کار، ما دیگر نیازی به انجام این کار به صورت دستی نداریم. همچنین به این معنی است که نیازی به استفاده از ()useMemo()، useCallbackو ()memo نیست.
در react 19 مولفههای سرور مستقیما در react ادغام میشوند . برای استفاده از این منظور شما فقط باید "use server" را به عنوان خط اول جز اضافه کنید. که کامپوننت خود را به یک کامپوننت سمت سرور تبدیل میکند.
از آنجا که React ۱۹ از Server Side Rendering (SSR) پشتیبانی میکند، شما میتوانید این اطلاعات را به طور دینامیک در سمت سرور تولید کرده و به صفحات خود اضافه کنید.
در React 19، تصاویر و سایر فایلها در پسزمینه بارگذاری میشوند که باعث بهبود زمان بارگذاری صفحه و کاهش دوره انتظار میشود.
این هوک نحوه استفاده از promises , async code را ساده تر میکند از این هوک برای اجرای fetchها به جای استفاده از useEffect یا useState استفاده میکنیم.
این هوک به شما این امکان را میدهد که state هارا بر اساس نتیجه ارسال فرم خود به روز کنید.
const [state, formAction] = useFormState(fn, initialState, permalink?);
منبع :
#react19
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡12❤🔥4🔥3
سایت برای مشارکت در پروژه های اوپن سورس 💻
🟢 تا حالا دلتون خواسته توی پروژه های بزرگ اوپن سورس دست ببرید؟ و یا باگی پیدا بکنید و بخواید حلش بکنید؟ خب این سایت دقیقا کاربردش همینه!
🟢 توی این سایت میتونید پروژه های مورد علاقتون رو انتخاب کنید، و شروع بکنید به رفع باگ هاشون، پروژه هایی از جمله فلاتر، گودوت و ...
🔗 codetriage
#opensource
☕️ @CodeExplore
#opensource
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥6⚡3🔥2
-ترکیب یه مفهوم پایه تو OOP به حساب میاد که این امکانو به ما میده که آبجکت هامون رو از یه آبجکت دیگه بسازیم. و خصوصیات و ویژگی های هردورو باهم ترکیب کنیم
ترکیب در اصل یه نوعی از ارتباط بین آبجکت هاس که توی اون یه آبجکت که آبجکت صاحب هست، تمام خصوصیات و ویژگی های یک یا چند آبجکت دیگه رو توی خودش جا میده، یعنی آبجکت صاحب از بقیه آبجکت های جزء به عنوان اجزاء خودش استفاده میکنه
یه مثال ازش ببینیم:
class VendingMachine {
constructor(products, coins) {
this.products = products;
this.coins = coins;
}
selectProduct(productCode) {
const product = this.products.find(p => p.code === productCode);
if (!product) {
throw new Error("Invalid product code");
}
return product;
}
insertCoin(coinValue) {
this.coins.push(coinValue);
}
returnCoins() {
const totalCoins = this.coins.reduce((sum, coin) => sum + coin, 0);
this.coins = [];
return totalCoins;
}
dispenseProduct(productCode) {
const product = this.selectProduct(productCode);
const price = product.price;
const totalCoins = this.coins.reduce((sum, coin) => sum + coin, 0);
if (totalCoins < price) {
throw new Error("Insufficient funds");
}
const change = totalCoins - price;
this.coins = [];
console.log(`Here is your ${product.name}.`);
if (change > 0) {
console.log(`Your change is ${change} coins.`);
}
}
}
class Product {
constructor(code, name, price) {
this.code = code;
this.name = name;
this.price = price;
}
}
class Coin {
constructor(value) {
this.value = value;
}
}
// Create products and coins
const products = [
new Product("A1", "Snickers", 100),
new Product("B2", "Coke", 80),
new Product("C3", "Chips", 60),
];
const coins = [
new Coin(50),
new Coin(20),
new Coin(10),
];
// Create vending machine
const vendingMachine = new VendingMachine(products, coins);
// Simulate usage
vendingMachine.insertCoin(50);
vendingMachine.insertCoin(50);
vendingMachine.selectProduct("B2");
vendingMachine.dispenseProduct("B2");
console.log("Remaining coins:", vendingMachine.returnCoins());-یک واسط در OOP مجموعهای از متدهارو تعریف میکنه که یه کلاس یا شیء باید اون مجموعه رو پیاده سازی کنه. واسط ها این قابلیت رو به ما میدن که بدون نیاز به وراثت، بین آبجکت هامون رفتار های مشابه ایجاد کنیم، دقت کنین توی زبان های مختلف ممکنه مفهومش متفاوت باشه، مثلا ما توی Javascript اگه بخایم از واسط ها استفاده کنیم باید بریم Typescript و اینترفیس تعریف کنیم که توی مثال باهم میبینیم
مثال استفاده از واسط ها:
interface Shape {
draw();
getArea();
}
class Circle implements Shape {
constructor(radius) {
this.radius = radius;
}
draw() {
console.log("Drawing a circle with radius", this.radius);
}
getArea() {
return Math.PI * this.radius * this.radius;
}
}
class Square implements Shape {
constructor(sideLength) {
this.sideLength = sideLength;
}
draw() {
console.log("Drawing a square with side length", this.sideLength);
}
getArea() {
return this.sideLength * this.sideLength;
}
}
// Create shapes
const circle = new Circle(5);
const square = new Square(10);
// Draw and calculate area
circle.draw();
console.log("Circle area:", circle.getArea());
square.draw();
console.log("Square area:", square.getArea());#oop #oop_8
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11⚡5❤🔥2
جایگزین های مختلف برای نرم افزار ها ☑️
💬 تا حالا دقت نکرده بودم که بینگ از گوگل امن تره،البته چکش هم نکردم، نظر شما چیه؟
#security
☕️ @CodeExplore
#security
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡16🔥5❤🔥2
ایده های بزرگ کم نیستند، چیزی که کم است فقدان اراده لازم برای اجرای آنهاست!
"ست گادین"
#motivational
☕️ @CodeExplore
"ست گادین"
#motivational
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥25⚡5🔥3💔3
سایت can I use 🆒
💥 توی این سایت میتونید بررسی کنید که المنت یا فریمورکی یا فرمت فایل یا ... ای که میخواید استفاده کنید توی کدوم مرورگرا و چه ورژن هایی کار میکنن.
🔗 caniuse.com
#caniuse
☕️ @CodeExplore
#caniuse
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10❤🔥3⚡3
📥 لینک دانلود
#extension #gofullpage
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥7🔥4⚡2
دوتا سایت پایین نکات مهمی رو میتونن درباره این موضوع بهتون بگن!
FreeCodeCamp
CodingDojo
Please open Telegram to view this post
VIEW IN TELEGRAM
freeCodeCamp.org
How to Write Clean Code – Tips and Best Practices (Full Handbook)
Hi everyone! In this handbook we're going to talk about writing "clean" code. It's a topic that used to confuse me a bit when I was starting out as a programmer, and I find that it has many nuances and possible interpretations. So in this article we'...
🔥7❤🔥4⚡3
شاید الان بگید توابع آماده برای پیدا کردن کلمه وجود داره! ولی بعضی وقتا ما دنبال یه کلمه ثابت نیستیم! بزارید یه مثال ریز بزنم تا متوجه بشید
سلام من امیر هستم . شماره من 09112345678 است و همچنین شماره دوستمم 09112345050 است. من دوستمو خیلی دوست دارم ، اسمش ریجکسه!
توی متن بالا ، اگه بخوایم شماره تلفن ها رو در بیاریم باید چیکار کنیم؟ آفرین ، کاربرد ریجکس دقیقا همینجا نمایان میشه !
همونجوری که توی عنوان هم نوشتم، Regex به فارسی میشه عبارت منظم ، یعنی اگه بخواید توی رشته (متن) دنبال بخش های منظم بگردید که از الگوی خاصی پیروی میکنن ، میتونید از regex استفاده کنید
همچنین کاربرد ریجکس فقط توی پیدا کردن نیست ، یه زمانی ما میخوایم چیزایی که پیدا کردیم رو با یه چیز دیگه جایگزین کنیم ، مثلا تو همین مثال بالا اگه فردی همچین نظری رو توی سایتمون ثبت کرد ما نمیخوایم همینجوری نمایش داده بشه بلکه میخوایم شماره های تلفن با *** جایگزین بشن ، پس بازم ریجکس میتونه بهمون کمک کنه
به صورت کلی هدف عمو ریجکس اینه که به صورت پیشرفته بتونیم داخل متنمون بگردیم و عبارتی که الگو ثابتی داره رو پیدا کنیم
عبارت منظم یک گروه از کارکترها یا نمادهاست که برای پیدا کردن یک الگوی مشخص در یک متن به کار گرفته می شود.
#regex #regular_expression
#regex_1 #regex_start
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡16❤🔥7🔥5
من که میگم ریجکس ایزی پیزیه (easy peasy lemon squeezy)
چنتا از استفاده هاشم توی زبان های مختلف این زیر میزارم :
$str = "Our Channel is CodeExplore";
$pattern = "/CodeExplore/"; // Regex
echo preg_match_all($pattern, $str);
let str = "Our Channel is CodeExplore";
let pattern = "/CodeExplore/" // Regex
console.log(str.search(pattern))
// OR
let arr = [...str.matchAll(/CodeExplore/g)]
console.log(arr)
import re
str = "Our Channel is CodeExplore";
pattern = r"CodeExplore" # Regex
x = re.search(pattern, str)
print(x)
این پست رو همینجا به پایان میرسونم تا خسته نشید، در پست بعدی با خود ریجکس آشنا میشیم و دیپ تر میشیم
روز خوبی داشته باشید
#regex #regular_expression
#regex_1 #regex_start
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡14🔥7❤🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
.character {
transition-delay:
calc(sin((var(--index) / 12) * 45deg) * 0.475s);
}#css #function
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡13❤🔥7🔥6
▪️مایکروسافت بالاخره به جمع غولهای تکنولوژی که در تلگرام حضور دارن پیوست و هوش مصنوعی قدرتمند خودش رو به نام Copilot رو به این پلتفرم محبوب پیامرسان آورد.
▪️ اینطوری که معلومه تجربه کاربری خوبی داره و تنها مشکلش اینه که فعلا تو کشورهای کمی فعال هست.چون وقتی بهش پیام بدید برای وریفای درخواست میکنه که شماره تلگرامی خودتون رو براش بفرستید و اینجاست که متوجه میشه از ایران هستیم :(
#bot #telegram #copilot
Please open Telegram to view this post
VIEW IN TELEGRAM
💔19⚡3🔥2❤🔥1😁1
تغییر و تحولات اسکرول بار 🫥
☄️ تغییر و تحولات اسکرول بار رو میبینید توی سالهای مختلف،شخصا اسکرول بار سال ۱۹۸۸ رو واقعا ندیدم تا حالا، شما چطور؟😂
☯️ در ضمن یک پست قبلا گذاشتیم که میتونید برای سایتتون اسکرول بار های قشنگ بسازید، از اینجا پست رو ببینید
#scrollbar
☕️ @CodeExplore
#scrollbar
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡18❤🔥3🔥2