Ditty | دیتی – Telegram
Ditty | دیتی
3.19K subscribers
194 photos
20 videos
4 files
387 links
دیتی | دنیای ساده‌شدهٔ برنامه‌نویسی وب
https://ditty.ir
Download Telegram
🔺الگوی طراحی Factory Method به زبان #ساده

- این یکی از پرطرفدارترین الگوهاست و با اون می‌تونیم کدهای تمیزتر، خواناتر و با قابلیت توسعه بالاتری داشته باشیم 👌

- این پست رو بخونید تا بهتر با این الگو آشنا بشید:
ditty.ir/302

#oop
🔺الگوی طراحی Abstract Factory به زبان #ساده

- اگه کدهایی دارین که پر از if/else و new هست، شاید این الگو برای شما باشه

- این الگو با مخفی کردن قسمت‌های ساختن اشیا از دید کاربر، کمک می‌کنه تا کدهای تمیزتر و قابل توسعه‌تری داشته باشیم 👌

- برای آشنایی با این الگو پست زیر رو بخونید:
ditty.ir/304

#oop
🔺الگوی طراحی Builder به زبان #ساده

- اگه آبجکت‌هایی داریم که مراحل ساخت پیچیده‌ای دارن، از این الگو استفاده می‌کنیم

- یکی از معروف‌ترین پیاده‌سازی‌های این الگو، Query Builder ها هست که توی بیشتر زبان‌ها و فریم‌ورک‌ها وجود داره و برای ساختن دستورات SQL استفاده میشه

- توی این پست با این الگو آشنا می‌شیم و یاد می‌گیریم که چطوری یک Query Builder ساده بسازیم:
ditty.ir/305

#oop
👍1
🔺توی #لاراول چطوری آدرس‌هایی با امنیت بالاتر داشته باشیم؟

- فرض کنیم برای لغو اشتراک ایمیل کاربر شماره ۹۰ آدرسی داریم به صورت زیر:
example.com/unsubscribe/90

- این لینک به صورت عمومی در دسترس هست و این کاربر می‌تونه با عوض کردن شناسه ۹۰ با ۸۹، اشتراک کاربر شما ۸۹ رو هم لغو کنه!

- با Signed URLs لاراول می‌تونیم بدون احتیاج به احراز هویت جلوی این کار رو بگیریم 👌

ـ Signed URLs لاراول به زبان ساده:
https://ditty.ir/306

#laravel 💯
🔺اعتبارسنجی تاریخ‌ها در #لاراول

- اگه توی برنامه تاریخ‌هایی داریم و می‌خوایم اونها رو اعتبارسنجی کنیم، فریم‌ورک لاراول امکانات #جالبی رو در اختیار ما گذاشته تا راحت‌تر از همیشه این کار رو انجام بدیم 👌

- توی این پست با چند تا از این قوانین اعتبارسنجی آشنا می‌شیم:
ditty.ir/127

#laravel
🔺لورم پیکسوم چیه؟

- اگه برای وبسایتتون نیاز به عکس‌های آزمایشی، با ابعاد و طرح‌های متنوع دارین، این وبسایت رو ببینین:
https://picsum.photos

#links
Ditty | دیتی
🔺الگوی طراحی Builder به زبان #ساده - اگه آبجکت‌هایی داریم که مراحل ساخت پیچیده‌ای دارن، از این الگو استفاده می‌کنیم - یکی از معروف‌ترین پیاده‌سازی‌های این الگو، Query Builder ها هست که توی بیشتر زبان‌ها و فریم‌ورک‌ها وجود داره و برای ساختن دستورات SQL استفاده…
🔺الگوی طراحی Prototype به زبان #ساده

- با این الگو می‌تونیم تمیزتر و بهینه‌تر، از آبجکت‌های موجود کپی داشته باشیم

- از الگوی پروتوتایپ زمانی استفاده می‌کنیم که:
— ساختن نمونه از کلاس هزینه زیادی داره
— آماده‌سازی و پیکربندی نمونه زمان‌بر هست
— کلاس واقعی برای ساختن نمونه ناشناخته هست

- از لینک زیر با این الگو که درک و پیاده‌سازی کاملاً راحتی داره آشنا بشین:
https://ditty.ir/p/X8dLX

#oop
🔺الگوی طراحی Singleton به زبان #ساده

- این الگو این اطمینان رو میده که فقط یک نمونه از یک کلاس خاص در سرتاسر برنامه وجود داشته باشه و راهی رو ارائه میده تا بتونیم به همون نمونه دسترسی داشته باشیم

- این الگو یکی از پراستفاده‌ترین و همچنین #بحث‌برانگیز ترین الگوهاست

- از این الگو زمانی استفاده می‌کنیم که:
— ساختن نمونه هزینه زیادی داره و می‌خوایم مطمئن بشیم که فقط یک نمونه از کلاس در سراسر برنامه وجود داره

- از لینک زیر با این الگو آشنا بشین:
ditty.ir/320

#oop
🔺توی #جاوااسکریپت اینطوری می‌تونیم بررسی کنیم که آیا یه متغیر توی حوزه سراسری تعریف شده یا نه 😉

- توی محیط Node بجای window از global استفاده کنین. البته توی هر محیطی میشه از globalThis هم استفاده کرد

#javanoscript
Ditty | دیتی
🔺آزمون جاوااسکریپت - شماره ۱۰ - خروجی رو حدس بزنین. 1 یا 2؟ 👏 - برای مشاهده جواب اختصاصی لینک زیر رو ببینید: ditty.ir/309 #quiz
🔺جاوااسکریپتی‌ها، می‌تونین خروجی رو با دلیل حدس بزنین؟ true یا false؟ چرا؟

- آزمون جاوااسکریپت - شماره ۱۱
- جواب اختصاصی از اینجا:
https://ditty.ir/p/Xege5

#quiz
🔺نمایش مرتب روت‌ها در #لاراول

- قبلاً دستور route:list توی خط فرمان، خروجی‌ای رو تولید می‌کرد که نقض حقوق بشر به حساب می‌اومد :))

- پکیج Pretty Routes رو نصب کنین تا خیلی بهتر و خواناتر لیستی از همه روت‌های برنامه رو داشته باشین

- Installation:
composer require wulfheart/pretty_routes

- Usage:
php artisan route:pretty

اطلاعات بیشتر
#laravel
Ditty | دیتی
🔺الگوی طراحی Singleton به زبان #ساده - این الگو این اطمینان رو میده که فقط یک نمونه از یک کلاس خاص در سرتاسر برنامه وجود داشته باشه و راهی رو ارائه میده تا بتونیم به همون نمونه دسترسی داشته باشیم - این الگو یکی از پراستفاده‌ترین و همچنین #بحث‌برانگیز ترین…
🔺الگوی طراحی Adapter به زبان #ساده

- با این الگو می‌تونیم توی برنامه از کلاس‌هایی که نوع و اینترفیس ناسازگار دارن استفاده کنیم، بدون اینکه کدی رو تغییر بدیم

- مثلاً می‌خوایم از کلاس‌های چند کتابخونه خارجی استفاده کنیم که همگی نحوه پیاده‌سازی و استفاده متفاوتی دارن. به جای اینکه کدهای برنامه و یا ساختار کلاس‌ها رو تغییر بدیم، کافیه از Adapter استفاده کنیم 👌

- از لینک زیر با این الگو آشنا بشین:
ditty.ir/322

#oop
🔺ـ Event Modifier چیه؟ 🤔

- اگه با Vue کار می‌کنین، با این ویژگی می‌تونین کدهای تمیزتر و کوتاه‌تری داشته باشین

- از لینک زیر با این قابلیت آشنا بشین:
ditty.ir/p/nRxeJ

#vue
🔺متد Bind در #جاوااکسریپت به زبان ساده

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

- همونطور که می‌دونیم this توی توابع مقدار معینی نداره و تا زمانی که مشخص نشه تابع کجا و به چه صورت داره فراخونی میشه، نمی‌تونیم مقدار اون رو تشخیص بدیم

- متد bind تابعی درست می‌کنه که مقدار this توی اون همیشه به یک آبجکت مشخص و تعیین‌شده‌ای اشاره می‌کنه

- برای آشنایی بیشتر با این متد:
ditty.ir/325

#javanoscript
🔺با یک نگاه Flexbox رو یاد بگیرین 👌

🔗 تصویر اصلی
#css
🔺ـ Composition API توی Vue 3 چیه؟ 🤔

- این مهمترین ویژگی ارائه شده توی ورژن ۳ ویو هست

- با این ویژگی می‌تونیم کدهای یک کامپوننت بزرگ رو به بخش‌های کوچک‌تر تقسیم کنیم تا حجم کدها توی یک فایل کم بشه و #توسعه‌پذیری برنامه بالا بره

- از لینک زیر با این ویژگی آشنا بشین:
https://ditty.ir/326

#vue 💯
🔺اگه حین توسعه برنامه می‌خواین یک URL رو با تأخیر لود کنین، از سرویس زیر استفاده کنین:
https://deelay.me

- برای مثال می‌تونین پاسخ درخواست‌های Ajax رو به تاخیر بندازین یا تصاویر رو با تأخیر لود کنین تا ببینین ظاهر صفحه چه شکلی میشه

- نحوه استفاده از اون به این صورته:
https://deelay.me/<DELAY>/<URL>

ـ DELAY مقدار تأخیر مد نظر به میلی‌ثانیه
ـ URL هم آدرس مد نظر

+ https://deelay.me/5000/https://picsum.photos/900/500
+ https://deelay.me/5000/http://localhost:3000

#links
🔺توی #جاوااسکریپت، NaN مخفف Not-a-Number هست. این در حالیه که نوع NaN برابر با number هست :))
#js