Dev Perfects
40 subscribers
9.23K photos
1.26K videos
468 files
13K links
بخوام خیلی خلاصه بگم
این کانال میاد مطالب کانالای خفن تو حوزه تکنولوژی و برنامه نویسی رو جمع میکنه

پست پین رو بخونید
https://t.iss.one/dev_perfects/455


ارتباط:
https://t.iss.one/HidenChat_Bot?start=936082426
Download Telegram
Forwarded from Linuxor ?
ولی جدی جدی فرق RAM و CPU خیلی زیاده نمی‌شه بیانش کرد مثل فرق کچل با هواپیماست.

@Linuxor
Forwarded from Linuxor ?
یه کد نوشتم پیچیدگیش O(0) عه
کار نمیکنه کلا :)


@Linuxor ~ Hejratijam
Forwarded from Linuxor ?
با این پروژه اوپن سورس می‌تونین PS4 رو روی ویندوز مک یا لینوکستون شبیه سازی کنید البته فعلا بازی های محدودی رو ساپورت می‌کنه

github.com/shadps4-emu/shadPS4


@Linuxor
Forwarded from 🎄 یک برنامه نویس تنبل (The Lazy 🌱 Raymond)
🔶 مرورگر Vivaldi هم اکنون وی پی ان داخلی به نام Proton VPN دارد که در حال حاضر نسخه دسکتاپ این ویژگی در دسترس است.

#خبر

@TheRaymondDev
1
Forwarded from LearnPOV | لرن پی او وی (Mohammad hossein)
بررسی لایبرری React Hook Form 🚀

مدیریت فرم‌ها همیشه چالش‌های خاص خودش رو داشته، مخصوصاً وقتی بخوایم اعتبارسنجی انجام بدیم یا مقدار فیلدها رو کنترل کنیم.

لایبرری React Hook Form یه کتابخونه خیلی کم‌حجم و سریع برای مدیریت فرم‌ها در React هست که نیاز به کنترل دستی مقدار فیلدها رو از بین می‌بره و کار با فرم‌ها رو خیلی ساده‌تر می‌کنه.


ویژگی‌های کلیدی

بهینه و سریع
این لایبرری از Uncontrolled Components استفاده می‌کنه، یعنی مستقیماً به DOM متصل می‌شه و رندرهای غیرضروری رو کاهش می‌ده. این باعث می‌شه سرعت اپلیکیشن بیشتر بشه، مخصوصاً وقتی تعداد فیلدهای فرم زیاد باشه.
اعتبارسنجی داخلی و انعطاف‌پذیر
از Validation داخلی پشتیبانی می‌کنه و می‌تونی با register فیلدها رو اعتبارسنجی کنی و همچنین از کتابخونه‌های Yup و Zod برای اعتبارسنجی پیشرفته پشتیبانی می‌کنه که واقعا خفن و حرفه ایه 👌
مدیریت خیلی ساده خطاها
به سادگی می‌تونید از formState.errors برای گرفتن خطاهای فیلدها استفاده کنی و پیام خطا رو هر جوری که میخوای نمایش بدی.
پشتیبانی خیلی خوب از فیلدهای سفارشی
اگر از Componentهای شخصی‌سازی‌شده مثل React Select استفاده کنی، Controller بهت کمک می‌کنه که راحت با اون‌ها به صورت ماژولار کار بکنی و هر نوع دیتایی که میخوای رو به صورت کاستوم هندل کنی.

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


📌 نتیجه‌گیری
در کل React Hook Form یه کتابخونه سبک، سریع و قدرتمند برای مدیریت فرم‌ها توی React هستش و اگه دنبال یه راهکار ساده و بهینه برای هندل کردن فرم‌ها هستی که هم سرعت بالایی داشته باشه و هم قابلیت اعتبارسنجی و کنترل فرم‌ها رو ساده کنه، این کتابخونه یکی از بهترین گزینه‌هاست!


#libarary #reactjs

𝗖𝗛𝗔𝗡𝗡𝗘𝗟  |  𝗚𝗥𝗢𝗨𝗣
Forwarded from Galaxy Ai (Ayhan)
دوستان لطفاً عزیز توجه کنید. تو هر حوزه هستید استادتون هر کسی بوده. یا فکر میکنید لیاقت معرفی شدن توی این چنل و اون یکی چنل هام دارند آیدی تلگرام و رزومه شون برا ما بفرستید

@Ayhan_Dev
تشکر
Forwarded from یه شعر (Poem Bot)
مولانا | دیوان شمس | رباعیات | رباعی شمارهٔ ۷۶۳

عشق از ازلست و تا ابد خواهد بود
جوینده عشق بیعدد خواهد بود
فردا که قیامت آشکارا گردد
هر دل که نه عاشق است رد خواهد بود

#مولانا | گنجور
📍@iipoem
Forwarded from Linuxor ?
اصلا ما از این کابل سه رنگ قرمز سفید زردای RCA شما HDMI

@Linuxor
Forwarded from Python Hints
از اون موقع خیلی تغییرات داشته (اکثرا برای اینکه توی سرعت توسعه کمک بیشتری بده) :

https://github.com/pykeras/neovim

بنظرم اگر از این تنظیمات neovim استفاده می‌کنید حتما این تغییرات آخر رو داشته باشید.
شخصا عادت دارم مشکلات کد رو بیشتر توی terminal ببینم؛ مثل اینکه خیلی از دوستان اینکار رو نمی‌کنند. برای همین updatetime روی تغییرات و پیام‌های مربوط به diagnostic رو از 5sec آوردم روی 150ms.
نکته دوم اینکه ارورهای بلند رو هم بجای اینکه مجبور بشید توی ترمینال ببینید؛ حالا با بردن cursor روی اون خط بصورت کامل توی diagnostic float می‌تونید ببینید که راحت تر شده (راجب این هنوز خودم شک دارم که بهتر هست یا نه ولی چون درخواست براش زیاد بود انجامش دادم)

یک سری تغییرات دیگه هم این مدت داشت (بیشتر fix بود)
برای مثال
<leader>gdp : goto definition peek
درست کار نمی‌کرد؛ بک پنجره floating از اون تابع یا کلاس باز می‌کنه و علاوه بر اینکه می‌تونید جزئیات کد رو ببینید؛ حتی می‌تونید توی همون پنجره ادیت‌های سریع رو توی همون فایل انجام بدید و ...

در نهایت اگر بهبود دیگری وجود داشت ممنون میشم بهم بگید؛ منم لذت میبرم سرعت توسعه کدهام بیشتر بشه.
Forwarded from 🎄 یک برنامه نویس تنبل (  MΞ)
Forwarded from mnr tech
🙂 مشکل floating-point numbers در دیتابیس

😰 چرا اعداد اعشاری در کامپیوتر مشکل‌زا هستند؟
اعداد اعشاری در سیستم‌های دیجیتال به صورت float یا double ذخیره می‌شن که بر اساس استاندارد IEEE 754 عمل می‌کنن. این استاندارد باعث می‌شه که همه اعداد اعشاری به صورت دقیق ذخیره نشن و در نتیجه، خطای گرد کردن (Round-off Error) به وجود بیاد. برای مثال:

عددی مثل 0.1 یا 0.01 به صورت باینری نمایش دقیقی نداره و به عددی خیلی نزدیک به اون مقدار واقعی تبدیل می‌شه.
نتیجه این می‌شه که اگر شما چند محاسبه روی این اعداد انجام بدین، ممکنه انتظار نتیجه دقیق مثلاً 1.00 داشته باشید، اما کامپیوتر عددی مثل 0.999999999999 یا 1.000000000001 رو ذخیره کنه.

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

🥹 راه‌حل: ذخیره اعداد به صورت صحیح
برای حل این مشکل، یک روش مرسوم در کامیونیتی اینه که به جای ذخیره مقادیر اعشاری، مقادیر صحیح رو ذخیره می‌کنن و بعد در زمان نمایش، اون عدد رو بر 100 تقسیم می‌کنن. مثلاً:

به جای ذخیره 10.25، عدد 1025 ذخیره می‌شه.

به جای ذخیره 0.99، عدد 99 ذخیره می‌شه.

این روش دو مزیت داره:

دقت بالا: چون اعداد صحیح دقیقاً همون‌طوری که هستن ذخیره می‌شن و مشکل گرد کردن یا دقت اعشار ندارن.

بهینه‌سازی پردازش: پردازش اعداد صحیح معمولاً سریع‌تر از اعداد اعشاری انجام می‌شه، به ویژه در محاسبات سنگین و دیتابیس‌های بزرگ.

🧐 نوع داده مناسب در دیتابیس برای ذخیره اعداد مالی:
اگرچه روش بالا (ذخیره اعداد صحیح) رایجه، پایگاه داده‌ها نوع داده‌ای به نام DECIMAL یا NUMERIC هم دارن که دقت بالاتری نسبت به FLOAT دارن و می‌تونن برای مقادیر مالی هم استفاده بشن. این نوع داده به جای ذخیره باینری، اعداد رو به صورت ده‌دهی ذخیره می‌کنه و بنابراین از مشکل گرد کردن باینری جلوگیری می‌کنه.

‼️ بین استفاده از نوع داده DECIMAL (یا NUMERIC) و ذخیره اعداد به صورت صحیح همراه با ضرب و تقسیم (مثلاً ضرب در 100)، هر کدوم مزایا و معایب خودشون رو دارن و انتخاب بین این دو به نیاز پروژه و شرایط سیستم بستگی داره.

کدام روش بهتر است؟
اگر اولویت شما دقت و سادگی در کدنویسی است:
بهتره از DECIMAL یا NUMERIC استفاده کنید. این روش خطاهای کمتر و خوانایی بالاتری داره و برای مقادیر مالی معمولاً گزینه استاندارد محسوب می‌شه.

اگر اولویت شما بهینه‌سازی عملکرد (سرعت و فضای کمتر) است:
اگر حجم داده‌ها بسیار زیاد باشه و بهینه‌سازی عملکرد براتون اهمیت بیشتری داره، می‌تونید از روش اعداد صحیح (ضرب و تقسیم) استفاده کنید.

✔️ منظورم از پروژه بزرگ پروژه ای با میلیون ها رکورد هست اگر نه همون مقدار DECIMAL جوابگو هست و لازم نیست حساس بشین.
✔️ اگر از حالت دوم یعنی ضریب استفاده می‌کنید باید حتما هم خودتون حواستون باشه که بعدا اشتباه پیش نیاد و هم به خوبی داکیومنت نویسی کنید که نفر بعدی به خوبی متوجه بشه.
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from 🎄 یک برنامه نویس تنبل (The Lazy 🌱 Raymond)
🔶 آپلود عکس در public لاراول

با این روش تمام فایل های عکس در پوشه public لاراول آپلود می شود.

public function store(Request $request)
{
$data = $request->validated([
'image' => 'required|image|mimes:jpeg,png,jpg,gif|max:2048',
] );

if ($request->hasFile('image')) {
$file = $request->file('image');
$fileName = $file->getClientOriginalName();
$file->storeAs('images/posts', $fileName, 'public_files');

$data['image'] = $fileName;
}

Post::create($data);

return to_route('posts.index');
}


تعریف مسیر public_files در config/filesystem لاراول :

'public_files' => [
'driver' => 'local',
'root' => public_path(),
'url' => env('APP_URL').'/',
'visibility' => 'public',
],


نمایش :

<img src="{{ asset('images/posts/' . $post->image) }}" alt="" srcset="">


#لاراول

@TheRaymondDev
یکی از بهترین اپلیکیشن ها و کاربردهای ایجنت ها برای deep (Re)search هست. یعنی برای موضوعی نیاز دارید که یک تحقیق و ریسرچ عمیق انجام بدید. اگه دوست دارید بدونید این ایجنت چطور کار میکنه و حتا خودتون بتونید یک ورژن ازش برای خودتون پیاده سازی کنید، حتما این بلاگ را بخونید. با شکل و قدم قدم مراحل توضیح میده. البته مقالات دیگه هم هست ولی این برای اول کار راحت تره.
Link: https://newsletter.swirlai.com/p/building-deep-research-agent-from

@DevTwitter | <Mehdi Allahyari/>
This media is not supported in your browser
VIEW IN TELEGRAM
مسابقه پرتاب سرور

قلبم درد میگیره اینا میبینم همین سرورا بیاد تو ایران میلیاردی میدن به ما

بعد اینا سرورای نسل جدیدشون پرت میکنن

بعد دلال ایرانی همینا کیلویی میخره میاره ایران خدا تومن می‌فروشه به ما

@poinair پوینا
Forwarded from Frontend with Erfun👨🏻‍💻 (Erfun Ghodoosi)
دیدن این ویدیو رو فقط برای کسایی که میخوان دانش عمیقی از اتفاقات پشت صحنه ریکت داشته باشن و توی مصاحبه های فنی موفق باشن پیشنهاد میکنم😎
Forwarded from Md Daily (Mahan)
بعد از اینکه از سفر برگشتیم ما بودیم و کلی دنگی که باید حساب میشد، هرکی یه جا را حساب کرده بود، یه سری جاها هزینه ها ریز میشدن و احتمال خطای محسابه ی دستیش زیاد بود، پس سریع copilot رو باز کردم و دنگی رو ساختم .

تقسیم دنگ رو براتون انجام میده، خروجی اکسل ریز هزینه ها رو هم بهتون میده و میگه کی چه قدر باید به کی پرداخت کنه.

با js خام نوشته شده ، کد پروژه پیچیده نیست ولی کار سختیو راحت کرد :)

👩‍💻 سورس کد پروژه:

https://github.com/mdpe-ir/dongy

👩‍💻 نسخه ی دیپلوی شده:

https://dongy.mddaily.ir/


ایده های باحالی میشه روش پیاده کرد و تبدیلش کرد به PWA ولی خب فعلا داره کار میکنه.


🆔 @MdDaily
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Frontend with Erfun👨🏻‍💻 (Erfun Ghodoosi)
Media is too big
VIEW IN TELEGRAM
با سبک جدید محتوا توی این چنل😁
توضیح کامل و جامع و ساده راجع به موضوع Rendering توی ریکت!

اینکه چه فاز هایی داره و چطور توی بکگراند اتفاقات مختلف مدیریت میشه⁉️

چه چیز هایی باعث ری رندر میشه؟
فرایند reconciliation چیه؟
دام مجازی یا virtual dom دقیقا چیه؟
ساید افکت هامون چه موقع اجرا میشن؟
و کلی نکته‌ی دیگه😁


ببینید و یاد بگیرید و لذتشو ببرید. اگرم سوالی داشتید حتما بپرسید🔥❤️

@erfundev
@frontendwitherfun