راکت
علی امینی
علی امینی
توسط علی امینی مطرح شد
حل
6 پاسخ

معایب استفاده از پکیج ها در لاراول

سلام دوستان
یک سوالی که برام پیش اومده اینه که استفاده از پکیج ها در لاراول چه معایبی میتونه داشته باشه؟!
مثلا پکیج هایی که مربوط به الوکوئنت هستند و به شکل تریت به مدل اضافه میشوند


ثبت پرسش جدید
مهدی عقیقی
مهدی عقیقی
تخصص :برنامه نویس وب
@MehdiAghighi6 سال پیشمطرح شد
0

@mehdi2private سلام وقتتون بخیر منم نظر خودمو بگم.

ببینید من خودم به شخصه وقتی یک عملیات نسبتا ساده رو بخوام پیاده کنم، می‌گردم پکیجش باشه اما اگر بود فورا استفاده نمی‌کنم. یک سری موراد هست که همیشه دقت می‌کنم مثلا این که آخرین کامیت پروژه چه زمانی هستش ؟ چون یه موقع‌هایی یه سری پکیج‌ها زده می‌شن و بعدا درست و حسابی آپدیت نمی‌شن یا خیلی طول می‌کشه که این اتفاق بی‌افته.

مثلا من خودم یک بار از پکیج laravel-meta استفاده کردم ( هنوزم هست ) ولی توی یه قسمتی از پروژه یهو فهمیدم که این پکیج با نسخه ۷ لاراول یه مشکلی داره و خب این مورد وسط پروژه خیلی منو اذیت کرد و آخرش مجبور شدم کلی کد رو تغییر بدم و این قابلیت رو خودم پیاده کنم.

در مورد حرفی که @SinaFXD زد و گفت که ساخت پکیجی که از قبل وجود داره اختراع دوباره چرخ هستش

من به طور کلی با مفهموم این حرف موافقم ولی به نظرم یه مواقعی هست که این کار واقعا مشکل نداره.
به نظر من برای این که شما بتونید درست از چرخ استفاده کنید و سریع یاد بگیریدش، باید بدونید چرخ چجوری کار می‌کنه ! و برای این که بفهمید چیزی چجوری کار می‌کنه فکر می‌کنم یکی از بهترین‌ راه‌هاش ساخت دوباره چرخ هست. ( البته توجه کنید که نیاز به همه‌ی جزئیات نیست و این که کلیت کار رو بدونید به نظر من کفایت می‌کنه. )

مثلا من خودم قبل از ورود به یادگیری لاراول، شروع کردم یک فریمورک MVC با PHP خام درست کردم که خیلی اذیت شدم و خیلی سخت بود، ولی همین باعث شد وقتی وارد لاراول شدم بر خلاف خیلیا که همینجوری می‌پرن تو لاراول و خیلی گیج میشن، اصلا گیج نشدم و خیلی سریع تونستم یاد بگیرم.

دوباره می‌گم که این نظر من بر اساس تجربه خودم بود شاید دوستان نظر دیگه‌ای داشته باشن.


محسن بستان
محسن بستان
تخصص :Senior Backend Developer
@mohsenbostan6 سال پیشمطرح شد
0

@mehdi2private
سلام.
اگر پکیج باگ نداشته باشه هیچ عیبی ندارن.


علی امینی
علی امینی
@mehdi2private6 سال پیشمطرح شد
0

@mohsenbostan
بسیار ممنونم از شما
به عنوان مثال شخص شما اگر ببینید پکیجی برای یک فیچری که شما قصدش رو دارید بسازید ساخته شده
از اون استفاده میکنید یا ترجیح میدید خودتون کد بزنید؟
و اینکه استفاده از پکیج در سرعت سایت که نمیتونه تاثیر گذار باشه


SinaFXD
SinaFXD
تخصص :...
@SinaFXD6 سال پیشمطرح شد
0

دوست عزیز ساخت پکیجی که از قبل وجود داره ، دقیقا اختراع دوباره چرخ هستش .
پکیج رو برسی کنین اگه با نیاز شما مطابقت داشته باشه هیچ مشکلی نداره استفاده کنین ( اگرم نیاز به توسعه‌ی کوچیک داشته باشه که خودتون انجام میدین و بازم هوشمندانه تر از اینه که پکیج رو از اول بنویسین . )


محسن بستان
محسن بستان
تخصص :Senior Backend Developer
@mohsenbostan6 سال پیشمطرح شد
0

@mehdi2private
حتما از چیزی که قبلا ساخته شده استفاده میکنم.

در مورد سرعت هم باید بگم ربطی نداره. بستگی به نوع کار یا الگوریتم داره.


مهدی عقیقی
مهدی عقیقی
تخصص :برنامه نویس وب
@MehdiAghighi6 سال پیشمطرح شد
0

@mehdi2private سلام وقتتون بخیر منم نظر خودمو بگم.

ببینید من خودم به شخصه وقتی یک عملیات نسبتا ساده رو بخوام پیاده کنم، می‌گردم پکیجش باشه اما اگر بود فورا استفاده نمی‌کنم. یک سری موراد هست که همیشه دقت می‌کنم مثلا این که آخرین کامیت پروژه چه زمانی هستش ؟ چون یه موقع‌هایی یه سری پکیج‌ها زده می‌شن و بعدا درست و حسابی آپدیت نمی‌شن یا خیلی طول می‌کشه که این اتفاق بی‌افته.

مثلا من خودم یک بار از پکیج laravel-meta استفاده کردم ( هنوزم هست ) ولی توی یه قسمتی از پروژه یهو فهمیدم که این پکیج با نسخه ۷ لاراول یه مشکلی داره و خب این مورد وسط پروژه خیلی منو اذیت کرد و آخرش مجبور شدم کلی کد رو تغییر بدم و این قابلیت رو خودم پیاده کنم.

در مورد حرفی که @SinaFXD زد و گفت که ساخت پکیجی که از قبل وجود داره اختراع دوباره چرخ هستش

من به طور کلی با مفهموم این حرف موافقم ولی به نظرم یه مواقعی هست که این کار واقعا مشکل نداره.
به نظر من برای این که شما بتونید درست از چرخ استفاده کنید و سریع یاد بگیریدش، باید بدونید چرخ چجوری کار می‌کنه ! و برای این که بفهمید چیزی چجوری کار می‌کنه فکر می‌کنم یکی از بهترین‌ راه‌هاش ساخت دوباره چرخ هست. ( البته توجه کنید که نیاز به همه‌ی جزئیات نیست و این که کلیت کار رو بدونید به نظر من کفایت می‌کنه. )

مثلا من خودم قبل از ورود به یادگیری لاراول، شروع کردم یک فریمورک MVC با PHP خام درست کردم که خیلی اذیت شدم و خیلی سخت بود، ولی همین باعث شد وقتی وارد لاراول شدم بر خلاف خیلیا که همینجوری می‌پرن تو لاراول و خیلی گیج میشن، اصلا گیج نشدم و خیلی سریع تونستم یاد بگیرم.

دوباره می‌گم که این نظر من بر اساس تجربه خودم بود شاید دوستان نظر دیگه‌ای داشته باشن.


علی بیات
علی بیات
تخصص :توسعه دهنده ارشد وب
@ali.bayat6 سال پیشمطرح شد
1

شما میتونی ساختار اون پکیج رو بررسی کنی
به راحتی ریپازیتوری گیت‌هابش رو باز کن
سورس کدهاش رو بررسی کن..

اکثر پکیج های خوب با در نظر گرفتن یک سری موارد در واقع باعث میشند ما از معماری صحیحی برای قسمت های مختلف اپلیکیشنمون استفاده کنیم..
از اونجایی هم که شئ گرایی در جای جای لاراول استفاده شده و همه جا با کلاس های مختلف سر و کار داریم، بنابراین این پکیج ها رو میشه چک کرد و دید آیا:

  • قواعد SOLID در اونها رعایت شده؟ و اگر نشده به چه علت بوده؟
  • در جایی که امکانش بوده، از الگوهای طراحی استفاده شده یا خیر؟
  • آیا نیازی به تست نویسی بوده؟ و تستی نوشته شده؟
  • آیا پکیج issue های حل نشده زیادی داره؟

مثلا پکیج هایی که مربوط به الوکوئنت هستند و به شکل تریت به مدل اضافه میشوند

در جواب این سوال میشه گفت: اکثر این نوع پکیج ها به خوبی Polymorphism یا روابط چندریختی رو پیاده‌سازی کردند. به همین خاطر شما راحت اون ویژگی رو به مدلت اضافه میکنی..
اما آیا بقیه موارد بالا رو رعایت کردند یا نه... باید بررسی بشه


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام