Forwarded from Pishro App
خوب دوستان توی #لاراول، برای گرفتن(بارگذاری) داده ها از #دیتابیس دو روش وجود داره که هر کدوم مزیا و معایب خودش رو داره.
من بصورت خلاصه شما رو با اونها آشنا میکنم و در پست های بعد هر کدوم رو بیشتر توضیح میدم.
❌ انواع بارگذاری داده از دیتابیس در لاراول:
😐 بارگذاری تنبل (Lazy Loading)
😐 بارگذاری پیشدستانه (Eager Loading)
💎 بارگذاری تنبل (Lazy Loading): تو این روش، دادههای مرتبط تنها زمانی بارگذاری میشوند که به آنها نیاز داشته باشید.
برای نمونه فرض کنید مدل User به مدل Profile متصل هست، وقتی user->profile رو صدا بزنید، لاراول در همان لحظه یک کوئری جدید برای بارگذاری پروفایل کاربر اجرا میکنه. این روش در مواردی مناسب هست که دادههای مرتبط در همه جا نیاز نیست، این ممکنه منجر به اجرای کوئریهای اضافی شود و به مشکل N+1 منجر گردد!
💎 بارگذاری پیشدستانه (Eager Loading):
توی این روش لاراول از همون ابتدا دادههای مرتبط رو بارگذاری میکنه و این کارایی رو بهتر خواهد کرد
مثلاً با استفاده از متد with:
این روش از یک کوئری برای بارگذاری همه کاربران و پروفایلهایشان استفاده میکنه و به این ترتیب از ایجاد کوئریهای اضافی جلوگیری میکند.
🖥 بطور خلاصه میشه گفت:
بارگذاری تنبل برای زمانی مناسب هست که دادهها همیشه مورد نیاز نیستند، و بارگذاری پیشدستانه برای بهبود کارایی و جلوگیری از اجرای کوئریهای اضافی مناسب هست.
#laravel
👾 @pishroapp
من بصورت خلاصه شما رو با اونها آشنا میکنم و در پست های بعد هر کدوم رو بیشتر توضیح میدم.
برای نمونه فرض کنید مدل User به مدل Profile متصل هست، وقتی user->profile رو صدا بزنید، لاراول در همان لحظه یک کوئری جدید برای بارگذاری پروفایل کاربر اجرا میکنه. این روش در مواردی مناسب هست که دادههای مرتبط در همه جا نیاز نیست، این ممکنه منجر به اجرای کوئریهای اضافی شود و به مشکل N+1 منجر گردد!
توی این روش لاراول از همون ابتدا دادههای مرتبط رو بارگذاری میکنه و این کارایی رو بهتر خواهد کرد
مثلاً با استفاده از متد with:
$users = User::with('profile')->get(); این روش از یک کوئری برای بارگذاری همه کاربران و پروفایلهایشان استفاده میکنه و به این ترتیب از ایجاد کوئریهای اضافی جلوگیری میکند.
بارگذاری تنبل برای زمانی مناسب هست که دادهها همیشه مورد نیاز نیستند، و بارگذاری پیشدستانه برای بهبود کارایی و جلوگیری از اجرای کوئریهای اضافی مناسب هست.
#laravel
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
🔶 شرکت Chegg قربانی ChatGPT شد که سهامش ۹۹ درصد سقوط کرده است.
شرکتی که به کرایه کتابهای درسی و کمک به انجام تکالیف معروف است، فعالیت می کند. سهام شرکت Chegg نسبت به اوج خود در سال 2021، 99 درصد کاهش یافته است و ارزش 14.5 میلیارد دلاری را از دست داده است و این شرکت نیم میلیون مشترک پولی خود را از دست داده است. پس از اینکه درآمد فصل به فصل کاهش می یابد، تردیدهایی وجود دارد که بتواند به پرداخت بدهی های خود ادامه دهد. حتی با راهاندازی ChatGPT مدل تجاری Chegg را نابود کرد.
#خبر
@TheRaymondDev
شرکتی که به کرایه کتابهای درسی و کمک به انجام تکالیف معروف است، فعالیت می کند. سهام شرکت Chegg نسبت به اوج خود در سال 2021، 99 درصد کاهش یافته است و ارزش 14.5 میلیارد دلاری را از دست داده است و این شرکت نیم میلیون مشترک پولی خود را از دست داده است. پس از اینکه درآمد فصل به فصل کاهش می یابد، تردیدهایی وجود دارد که بتواند به پرداخت بدهی های خود ادامه دهد. حتی با راهاندازی ChatGPT مدل تجاری Chegg را نابود کرد.
#خبر
@TheRaymondDev
Gizmodo
Chegg Is On Its Last Legs After ChatGPT Sent Its Stock Down 99%
With subscriptions tumbling, there are doubts the online education company will be able to pay its debts.
😁40👍1
🔶 همزمان با افزایش سختگیری آمریکا، سهام شرکتهای تراشهساز چینی رشد کرد
براساس گزارش رویترز, همزمان با تشدید محدودیتهای صادراتی ایالات متحده علیه چین، ارزش شرکتهای نیمههادی چینی به بالاترین سطح سه سال اخیر نزدیک شد. این افزایش در پی اعلام توقف ارسال برخی تراشههای پیشرفتهی TSMC به مشتریان چینی و دریافت نامهای از وزارت بازرگانی آمریکا مبنیبر اعمال محدودیتهای صادراتی جدید رخ داد. انتظار میرود تصمیم دولت ایالات متحده، تلاشهای پکن برای خودکفایی در صنعت نیمههادی را سرعت ببخشد.
#خبر
@TheRaymondDev
براساس گزارش رویترز, همزمان با تشدید محدودیتهای صادراتی ایالات متحده علیه چین، ارزش شرکتهای نیمههادی چینی به بالاترین سطح سه سال اخیر نزدیک شد. این افزایش در پی اعلام توقف ارسال برخی تراشههای پیشرفتهی TSMC به مشتریان چینی و دریافت نامهای از وزارت بازرگانی آمریکا مبنیبر اعمال محدودیتهای صادراتی جدید رخ داد. انتظار میرود تصمیم دولت ایالات متحده، تلاشهای پکن برای خودکفایی در صنعت نیمههادی را سرعت ببخشد.
#خبر
@TheRaymondDev
Reuters
China chip index nears 3-year high as TSMC order fuels self-reliance bets
China's semiconductor index leapt close to a three-year high on Monday on bets a U.S. order halting Taiwan Semiconductor Manufacturing Co's shipments of advanced chips to Chinese customers could accelerate Beijing's self-reliance efforts.
👍3
Forwarded from Golden Code (@lix)
در لاراول متود toggle برای تغییر وضعیت یک ویژگی boolean به کار میره و بهطور خودکار وضعیت رو تغییر میده.
ینی چی؟
مثلاً اگه یک ویژگی مثل "لایک" وجود داشته باشه، این متود وضعیت اونو از "like" به "dislike" یا برعکس تغییر میده،یعنی بدون اینکه نیاز به نوشتن کد اضافی داشته باشیم.
در تصویر زیر تاثیرش بر کوتاه شدنه کد رو به خوبی متوجه میبنید👌🏾
#laravel
@GoldenCodeir
(بهمنبع و مثالش دقت کنید 👇🏾)
https://x.com/OussamaMater/status/1854985544075252021?t=04wuOseETi6fhChi1rBf1w&s=35
ینی چی؟
مثلاً اگه یک ویژگی مثل "لایک" وجود داشته باشه، این متود وضعیت اونو از "like" به "dislike" یا برعکس تغییر میده،یعنی بدون اینکه نیاز به نوشتن کد اضافی داشته باشیم.
در تصویر زیر تاثیرش بر کوتاه شدنه کد رو به خوبی متوجه میبنید👌🏾
#laravel
@GoldenCodeir
(بهمنبع و مثالش دقت کنید 👇🏾)
https://x.com/OussamaMater/status/1854985544075252021?t=04wuOseETi6fhChi1rBf1w&s=35
X (formerly Twitter)
OussamaMater (@OussamaMater) on X
Laravel Tip 💡: The "toggle" method
At some point, we all needed to toggle a value, for example, a "like" feature that switches between states. While you can do it manually, Laravel ships with a "toggle" method to do exactly that 🚀
#laravel
At some point, we all needed to toggle a value, for example, a "like" feature that switches between states. While you can do it manually, Laravel ships with a "toggle" method to do exactly that 🚀
#laravel
🔥3❤1
This media is not supported in your browser
VIEW IN TELEGRAM
🔶 یوتیوب ویژگی اسکرول برای ردشدن ویدئو در نسخه اندروید آزمایش می کند.
به گفته کاربر Tushar Mehta, تیم محصول یوتیوب این ژست ها را یکی پس از دیگری در اپلیکیشن اندروید قرار می دهد. اضافهشدن ویژگی اسکرول احتمالاً برای بسیاری از کاربران ناامیدکننده خواهد بود. این کار باعث برهمریختن عادتهای حرکتی در یوتیوب برای ویدیوهای طولانی میشود و غرقشدن در ویدیوها را دشوارتر میکند. البته همچنان دکمهای برای ورود و خروج از حالت تمامصفحه وجود دارد، اما سوايپکردن، راهکاری ساده و بدون دردسر بود.
#خبر
@TheRaymondDev
به گفته کاربر Tushar Mehta, تیم محصول یوتیوب این ژست ها را یکی پس از دیگری در اپلیکیشن اندروید قرار می دهد. اضافهشدن ویژگی اسکرول احتمالاً برای بسیاری از کاربران ناامیدکننده خواهد بود. این کار باعث برهمریختن عادتهای حرکتی در یوتیوب برای ویدیوهای طولانی میشود و غرقشدن در ویدیوها را دشوارتر میکند. البته همچنان دکمهای برای ورود و خروج از حالت تمامصفحه وجود دارد، اما سوايپکردن، راهکاری ساده و بدون دردسر بود.
#خبر
@TheRaymondDev
👎5
🎄 یک برنامه نویس تنبل
🔸Windows inside a Docker container قبلا داکر توی ویندوز بود الان ویندوز توی داکر! https://github.com/dockur/windows #معرفی @TheRaymondDev
🔸OSX (macOS) inside a Docker container
و اینبار macOS در داکر!!
https://github.com/dockur/macos
#معرفی
@TheRaymondDev
و اینبار macOS در داکر!!
https://github.com/dockur/macos
#معرفی
@TheRaymondDev
😁6🤨2
Forwarded from کدنویس یکروزه (𝕻𝖊𝖉𝖗𝖆𝖒 𝕽𝖆𝖍𝖎𝖒𝖎)
سیستم عامل Wubuntu
حتماً از تعجب شاخ در میارین اگه بشنوین که تجربهی کار با ویندوز ۱۱ رو دقیقاً با همون منوها و مسیرها و آیکون ها و نرم افزارها که در این تصویر می بینید، در واقع فقط یک لینوکس پیشرفته است!
امروز اینو تست کردم و با رم ۲ گیگ و کمترین پردازنده روی ویرچوال ماشین تونست سربلند بیرون بیاد و تمام نرم افزارهای اداره رو به خوبی اجرا کنه!
همینطور نسخهی رسمی آفیس برای لینوکس رو داره به همراه مرورگر اِج و کروم و همچنین هوش مصنوعی کوپایلوت!
طبعاً چون لینوکس هم هست، دیگه ویروس نخواهد گرفت، هک هم به سختی میشه و تمام سخت افزارها بدون نیاز به نصب درایور باهاش کار میکنن.
یه مارکت مَشتی عین بازار در آندروید هم داره که شما رو از نصب رایج برنامه های لینوکسی به صورت کامندلاین بی نیاز میکنه و کاملاً گرافیکی فقط انتخاب میشن و با زدن دکمهی نصب خودش ادامه میده.
جالب ترین بخش اجرای exe
تحت یک پروژهی معروف به نام واین (شراب) تمام exeهای ویندوزی رو هم که نیاز به کتابخونه داتنت و نصب شده روی ویندوز نداشته باشن، اجرا میکنه و واقعاً عجیبه! مثلاً فتوشاپ CS5 رو قشنگ نصب و اجرا کرد!
https://wubuntu.org
حتماً از تعجب شاخ در میارین اگه بشنوین که تجربهی کار با ویندوز ۱۱ رو دقیقاً با همون منوها و مسیرها و آیکون ها و نرم افزارها که در این تصویر می بینید، در واقع فقط یک لینوکس پیشرفته است!
امروز اینو تست کردم و با رم ۲ گیگ و کمترین پردازنده روی ویرچوال ماشین تونست سربلند بیرون بیاد و تمام نرم افزارهای اداره رو به خوبی اجرا کنه!
همینطور نسخهی رسمی آفیس برای لینوکس رو داره به همراه مرورگر اِج و کروم و همچنین هوش مصنوعی کوپایلوت!
طبعاً چون لینوکس هم هست، دیگه ویروس نخواهد گرفت، هک هم به سختی میشه و تمام سخت افزارها بدون نیاز به نصب درایور باهاش کار میکنن.
یه مارکت مَشتی عین بازار در آندروید هم داره که شما رو از نصب رایج برنامه های لینوکسی به صورت کامندلاین بی نیاز میکنه و کاملاً گرافیکی فقط انتخاب میشن و با زدن دکمهی نصب خودش ادامه میده.
جالب ترین بخش اجرای exe
تحت یک پروژهی معروف به نام واین (شراب) تمام exeهای ویندوزی رو هم که نیاز به کتابخونه داتنت و نصب شده روی ویندوز نداشته باشن، اجرا میکنه و واقعاً عجیبه! مثلاً فتوشاپ CS5 رو قشنگ نصب و اجرا کرد!
https://wubuntu.org
👍5
🎄 یک برنامه نویس تنبل pinned «صابر راستی کردار - خالق فونت وزیر یکسال گذشت روحش شاد و یادش گرامی 🖤🥀 @TheRaymondDev»
🔶 ما اتحادیه یا صنف ای برای تعیین تعرفه طراحی سایت نداریم که خبرگزاری ایسنا برای تعرفه طراحی سایت در سال ۱۴۰۳ گزارشی نوشته است.
- تعرفه طراحی سایت ۱۴۰۳ /جدول مقایسه هزینه فریمورکها
https://isna.ir/xdRHvd
#خبر
@TheRaymondDev
- تعرفه طراحی سایت ۱۴۰۳ /جدول مقایسه هزینه فریمورکها
https://isna.ir/xdRHvd
#خبر
@TheRaymondDev
🤣11👍3🥰1
Forwarded from Pishro App
دوستان در #لاراول میتونید به راحتی قوانین مشخصی برای رمز عبور کاربران تعیین کنید تا امنیت بیشتری در برنامه خود داشته باشید.
کد زیر رو ببینید، توی متد boot در AppServiceProvider، میتونیم مجموعهای از قواعد پیشفرض برای رمز عبور رو مشخص کنیم
class AppServiceProvider
{
public function boot(): void
{
Password::defaults(function () {
return Password::min(12)
->letters()
->numbers()
->symbols()
->mixedCase()
->uncompromised();
});
}
}
همونطور که میبینید با متد Password::defaults یکسری قوانین اعمال شده که با استفاده از اون همهی رمز عبورهای سیستم از قوانین کلی و تعریف شده توسط این متد میتونن پیروی کنن موقع اعتبار سنجی.
و برای استفاده از این قوانین هم میتونید بصورت زیر هنگام اعتبار سنجی استفاده کنید ازش
request()->validate([
['password' => ['required', Password::defaults()]]
])
توی مثال بالا، رمز عبور باید:
حداقل ۱۲ کاراکتر طول داشته باشد.
شامل حروف و اعداد باشد.
شامل نمادهای خاص و حروف بزرگ و کوچک باشد.
بررسی شود که در دیتابیسهای عمومی درز کرده نباشد.
#laravel
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
🔸لیستی از best practice برای nodejs
https://github.com/goldbergyoni/nodebestpractices
#معرفی
@TheRaymondDev
https://github.com/goldbergyoni/nodebestpractices
#معرفی
@TheRaymondDev
GitHub
GitHub - goldbergyoni/nodebestpractices: :white_check_mark: The Node.js best practices list (July 2024)
:white_check_mark: The Node.js best practices list (July 2024) - goldbergyoni/nodebestpractices
👍1
Forwarded from Linuxor ?
با یه پایگاه داده توزیع شده تصور کنین یک فروشگاه اینترنتی بزرگ داریم. اگه بخوایم اطمینان حاصل کنیم که هر محصول تنها یک بار در پایگاه داده ثبت میشه و اطلاعاتش همیشه دقیق و به روزه، باید از مکانیزمهای پیچیدهای برای حفظ یکپارچگی دادهها استفاده کنیم. این مکانیزمها اگرچه به ما اطمینان میدن که دادههای ما صحیح ان، اما میتونن سرعت جستجو و بازیابی اطلاعات رو کاهش بدن.
از سمت دیگه، اگه به دنبال افزایش سرعت پاسخگویی سایت باشیم، ممکنه مجبور شیم از برخی از این مکانیزمها صرف نظر کنیم. برای مثال، ممکنه اجازه بدین نسخههای قدیمی از یک محصول به صورت موقت در پایگاه داده باقی بمانند تا از ایجاد اختلال در روند خرید جلوگیری کنیم. این کار میتونه منجر به ایجاد برخی ناسازگاریهای موقت در دادهها شود، اما به طور کلی سرعت سیستم را افزایش میده.
در واقع میشه گفت Consistency و Availability دو روی یه سکه ان.
🐧 @Linuxor
از سمت دیگه، اگه به دنبال افزایش سرعت پاسخگویی سایت باشیم، ممکنه مجبور شیم از برخی از این مکانیزمها صرف نظر کنیم. برای مثال، ممکنه اجازه بدین نسخههای قدیمی از یک محصول به صورت موقت در پایگاه داده باقی بمانند تا از ایجاد اختلال در روند خرید جلوگیری کنیم. این کار میتونه منجر به ایجاد برخی ناسازگاریهای موقت در دادهها شود، اما به طور کلی سرعت سیستم را افزایش میده.
در واقع میشه گفت Consistency و Availability دو روی یه سکه ان.
🐧 @Linuxor
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
🔶 براساس گزارش مسکو تایم کارت های بانکی ایران اکنون در سیستم بانکی روسیه قابل استفاده هستند.
روز پلاس نیوز ویدئویی منتشر کرد که نشان می دهد یک دستگاه خودپرداز در روسیه هنگام استفاده با کارت بانکی ایرانی پول نقد توزیع می کند. این معامله با اتصال شبکه بین بانکی شتاب ایران با سیستم پرداخت میر روسیه امکان پذیر شد.
#خبر
@TheRaymondDev
روز پلاس نیوز ویدئویی منتشر کرد که نشان می دهد یک دستگاه خودپرداز در روسیه هنگام استفاده با کارت بانکی ایرانی پول نقد توزیع می کند. این معامله با اتصال شبکه بین بانکی شتاب ایران با سیستم پرداخت میر روسیه امکان پذیر شد.
#خبر
@TheRaymondDev
👍13🤡2🤩1
🔸IEEE 754
توضیح اینکه چرا
https://www.youtube.com/watch?v=zedgNuLM0Vo
@TheRaymondDev
توضیح اینکه چرا
9999999999999999.0 - 9999999999999998.0 = 2
https://www.youtube.com/watch?v=zedgNuLM0Vo
@TheRaymondDev
Forwarded from Linuxor ?
یه Ui قشنگ برای مدیریت Nginx
خیلی راحت میتونین وبسایت خودتون رو باهاش مدیریت کنید
برای تستش با یوزرنیم admin و رمز admin وارد شین :
demo.nginxui.com
گیتهابش :
https://github.com/0xJacky/nginx-ui
🐧 @Linuxor
خیلی راحت میتونین وبسایت خودتون رو باهاش مدیریت کنید
برای تستش با یوزرنیم admin و رمز admin وارد شین :
demo.nginxui.com
گیتهابش :
https://github.com/0xJacky/nginx-ui
🐧 @Linuxor
👍7🙏2