Learning Laravel
СтатистикаLearning laravel for persian php developers Admin: @hamo84 گروه پرسش و پاسخ و بحث و بررسی لاراول https://t.me/laravel_frameworkk
- Последний пост
- 7 сент. 2021 г.
- Последнее чтение
- 03:34
- Постов за неделю
- 0
- Всего постов
- 20
- Тип
- открытый
- Язык
- английский
- В каталоге с
- 15 авг.
- 1/24сутки в ленте
- —
- 1/48двое суток
- —
- 1/72трое суток
- —
Оценка по просмотрам недавних постов: пост набирает почти всё за первые сутки.
Посты
🔺الگوی طراحی Decorator به زبان #ساده - از این الگو زمانی استفاده میکنیم که میخوایم به آبجکتها ویژگی اضافه کنیم یا رفتار اونها رو تغییر بدیم - در واقع با این الگو میتونیم به آبجکتهای موجود، در زمان اجرای کد (Run-time) ویژگی اضافه کنیم. بدون اینکه مجبور باشیم کلاسهای اونها رو دستکاری کنیم و یا زیرکلاس بسازیم - این الگو کاربرد زیاد و پیادهسازی راحتی داره که توی این قسمت با اون آشنا میشیم: https://ditty.ir/p/5dPv5 #oop 💯
یک ویژگی جالب به لاراول ۸.۵۷ اضافه شده برای اینکه بتونیم کوئریهایی که برای Relation ها مینوسیم رو کوتاهتر کنیم 👌
🔺الگوی طراحی Composite به زبان #ساده - این الگو کمک میکنه تا بتونیم با گروهی از آبجکتها که نوعهای مختلفی دارن، اما باید به شکل یک ساختار درختی کنار هم قرار بگیرن، طوری کار کنیم که انگار همگی نوعهای یکسانی دارن - برای مثال یک ساختار درختی از اعضای یک سازمان داریم که شامل بخشها و اعضای مختلفی مثل مدیران عامل، بخش فنی و نیروهای مربوط به هر بخش میشه - قطعاً توی این ساختار درختی هر عضو و بخشی ممکنه نوع تفاوتی داشته باشه و اگه بخوایم روی این ساختار کارهایی رو انجام بدیم (مثلاً نمایش حقوق اعضا، اطلاعات هر عضو و بخش، درآمد و ...) نیاز داریم تا با اعضا و بخشها طوری رفتار کنیم که انگار همگی نوعهای یکسانی دارن - توی پست زیر یاد میگیریم که چطوری این کار رو با الگوی Composite انجام بدیم: ditty.ir/414 #oop 💯
🔺یک ویژگی جالب به #لاراول 8.51 اضافه شده به اسم Conditional Classes - توی فایلهای Blade با استفاده از یک Directive جدید به اسم class@ میتونیم نمایش کلاسهای یک المنت رو کنترل کنیم - این Directive یک ورودی به صورت آرایه key/value میگیره که شامل کلاسهای مد نظر هست. مقدار key اسم کلاس مد نظر و مقدار value یک عبارت بولین هست - کلاس مد نظر فقط زمانی نشون داده میشه که مقدار value برابر با true باشه - همچنین اگه عضو آرایه بدون key باشه، (مثل p-4) کلاس مد نظر برای ما نمایش داده میشه - خط آخر عکس، خروجی چیزی که تولید میشه هست #laravel
🔺الگوی طراحی Adapter به زبان #ساده - با این الگو میتونیم توی برنامه از کلاسهایی که نوع و اینترفیس ناسازگار دارن استفاده کنیم، بدون اینکه کدی رو تغییر بدیم - مثلاً میخوایم از کلاسهای چند کتابخونه خارجی استفاده کنیم که همگی نحوه پیادهسازی و استفاده متفاوتی دارن. به جای اینکه کدهای برنامه و یا ساختار کلاسها رو تغییر بدیم، کافیه از Adapter استفاده کنیم 👌 - از لینک زیر با این الگو آشنا بشین: ditty.ir/322 #oop
🔺نمایش مرتب روتها در #لاراول - قبلاً دستور route:list توی خط فرمان، خروجیای رو تولید میکرد که نقض حقوق بشر به حساب میاومد :)) - پکیج pretty-routes رو نصب کنین تا خیلی بهتر و خواناتر لیستی از همه روتهای برنامه رو داشته باشین - Installation: composer require wulfheart/pretty_routes - Usage: php artisan route:pretty اطلاعات بیشتر #laravel
🔺الگوی طراحی Singleton به زبان #ساده - این الگو این اطمینان رو میده که فقط یک نمونه از یک کلاس خاص در سرتاسر برنامه وجود داشته باشه و راهی رو ارائه میده تا بتونیم به همون نمونه دسترسی داشته باشیم - این الگو یکی از پراستفادهترین و همچنین #بحثبرانگیز ترین الگوهاست - از این الگو زمانی استفاده میکنیم که: — ساختن نمونه هزینه زیادی داره و میخوایم مطمئن بشیم که فقط یک نمونه از کلاس در سراسر برنامه وجود داره - از لینک زیر با این الگو آشنا بشین: ditty.ir/320 #oop
🔺الگوی طراحی Prototype به زبان #ساده - با این الگو میتونیم تمیزتر و بهینهتر، از آبجکتهای موجود کپی داشته باشیم - از این الگو زمانی استفاده میکنیم که: — ساختن نمونه از کلاس هزینه زیادی داره — آمادهسازی و پیکربندی نمونه زمانبر هست — کلاس واقعی برای ساختن نمونه ناشناخته هست - از لینک زیر با این الگو که درک و پیادهسازی کاملاً راحتی داره آشنا بشین: https://ditty.ir/p/X8dLX #oop
🔺اعتبارسنجی تاریخها در #لاراول - اگه توی برنامه تاریخهایی داریم و میخوایم اونها رو اعتبارسنجی کنیم، لاراول امکانات #جالبی رو در اختیار ما گذاشته تا راحتتر از همیشه این کار رو انجام بدیم 👌 - توی این پست با چند تا از این قوانین آشنا میشیم: ditty.ir/127 #laravel
🔺توی #لاراول چطوری آدرسهایی با امنیت بالاتر داشته باشیم؟ - فرض کنیم برای لغو اشتراک ایمیل کاربر شماره ۹۰ آدرسی داریم به صورت زیر: example.com/unsubscribe/90 - این لینک به صورت عمومی در دسترس هست و این کاربر میتونه با عوض کردن شناسه ۹۰ با ۸۹، اشتراک کاربر شما ۸۹ رو هم لغو کنه! - با Signed URLs لاراول میتونیم بدون احتیاج به احراز هویت جلوی این کار رو بگیریم 👌 ـ Signed URLs لاراول به زبان ساده: https://ditty.ir/306 #laravel 💯
🔺الگوی طراحی Builder به زبان #ساده - اگه آبجکتهایی داریم که مراحل ساخت پیچیدهای دارن، از این الگو استفاده میکنیم - یکی از معروفترین پیادهسازیهای این الگو، Query Builder ها هست که توی بیشتر زبانها و فریمورکها وجود داره و برای ساختن دستورات SQL استفاده میشه - توی این پست با این الگو آشنا میشیم و یاد میگیریم که چطوری یک Query Builder ساده بسازیم: ditty.ir/305 #oop
🔺الگوی طراحی Abstract Factory به زبان #ساده - اگه کدهایی دارین که پر از if/else و new هست، شاید این الگو برای شما باشه - این الگو با مخفی کردن قسمتهای ساختن اشیا از دید کاربر، کمک میکنه تا کدهای تمیزتر و قابل توسعهتری داشته باشیم 👌 - برای آشنایی با این الگو این پست رو بخونید: ditty.ir/304 #oop
🔺الگوی طراحی Factory Method به زبان #ساده - این یکی از پرطرفدارترین الگوهاست و با اون میتونیم کدهای تمیزتر، خواناتر و با قابلیت توسعه بالاتری داشته باشیم 👌 - این پست زیر رو بخونید تا بهتر با این الگو آشنا بشید: ditty.ir/302 #oop
🔺به ورژن ۸.۳۰ #لاراول یه ویژگی خوب اضافه شده که متد stopOnFirstFailure هست که توی اعتبارسنجی به کار میره - این متد باعث میشه که اعتبارسنجی با مواجهشدن با اولین خطا متوقف بشه که در نتیجه ورودیهای بعدی پردازش نمیشن - قبلاً همه ورودیها بدون توجه به اینکه ورودیهای قبلی ناقص هستن، بررسی میشدن - البته مشخص نیست چطوری میشه اون رو توی Form Request ها استفاده کرد #laravel
🔹یه ویژگی به #لاراول اضافه شد برای اینکه بشه تشخیص داد آیا یک کالکشن شامل فقط یک مقدار هست یا خیر! کاری که قبلاً به راحتی با متد count انجام میشد. - نظر شما درباره این نوع ویژگیها چیه؟ #laravel
🔺ویژگی Enum به 8.1 PHP اضافه خواهد شد #php
🔺کدنویسی کمتر و تمیزتر با View Composer های #لاراول - توی هر برنامهای View هایی داریم که همه جا استفاده میشن. مثلاً هدر و فوتر که ما اونها رو توی هر صفحهای داریم و معمولاً اطلاعاتی رو برای نمایش دادن به اونها پاس میدیم - در حالت عادی اگه این ویوها نیاز به اطلاعات داشته باشن، باید توی هر return view که داریم این اطلاعات رو پاس بدیم که کدنویسی اضافی به حساب میاد - اما با ویژگی View Composer ها میتونیم فقط یک بار این کدنویسی رو انجام بدیم و بگیم هر وقت که یک View خاص در حال رندر شدن هست، این اطلاعات رو پاس بده! 💯 - برای آشنایی بیشتر با این ویژگی پست زیر رو بخونید: https://ditty.ir/283 #laravel
🔺۴۰ نکته و توصیه برای برنامهنویسهای تازهکار - قسمت دوم ditty.ir/249 - شما هم اگه تجربههایی دارید، توی قسمت نظرات به اشتراک بذارین تا توی قسمتهای بعدی منتشر بشن 😉 @ditty_ir
🔺 با Cast های #لاراول، تمیزتر و خلاصهتر کدنویسی کنیم 😎 - با انواع Cast آشنا میشیم و یاد میگیریم چطوری یکی #دلخواه بسازیم: ditty.ir/222 #laravel
🔺 برای نوشتن کوئریهای مرتبتر و قشنگتر توی #لاراول، میتونیم از اسکوپها استفاده کنیم - با اسکوپها حجم کدنویسی ما کمتر و نگهداری کد راحتتر میشه - با اسکوپهای کوئری لاراول از این پست آشنا بشید: https://ditty.ir/217 #laravel