نوشته شده توسط
hadi-pro1988
با عرض سلام خدمت اساتید گرامی سایت
من php رو در حد معمول بلدم یعنی میتونم بطور مثال یک cms ساده بنویسم.
در oop هم ساخت کلاس و استاتیک کردن کلاس و به ارث بردن کلاس رو هم بلدم. آیا کلاس و oop فقط همینه؟ اگه بازم هست چه مباحثی رو باید بخونم تا حرفه ای بشم؟
مثلا از کلاس Person آبجکتی به نام p تعریف میکنیم و برای دسترسی به محتوای اون کلاس از<- استفاده میکنیم. یعنی مثلا p->id. ولی در بعضی جا دیدم که از چندتا <- در یک خط استفاده میشه. این یعنی چی؟
یادگیری mvc ضروریه؟ مثلا برای یاد گیری فریم ورکی مثل laravel که یه نوع سیستم mvc هست حتما باید mvc بلد باشم؟
اساتید گرامی ممنون میشم منو راهنمایی کنید تا چجوری در php حرفه ای بشم.
ولی به نظر من بجای اینکه خیلی بری تو عمق ارث بری شروع کن به یادگیری فریم ورک چون فریم ورک این مباحث پیشرفته تر شی گرایی رو پوشش میده و نیازی نداری که باهاشون از الان آشنا بشی
از طرفی یادگیری این مباحث پیشرفته برای ساخت وبسایت های معمولی به خودی خود کاربرد خیلی زیادی نداره
کاربردشون برای ساختن ساختن ساختار های پیچیده مثل فریم ورک هستش
یعنی شما میتونی این مباحث رو یاد بگیرید که بعد باهاشون یه ساختار پیچیده شبه فریم ورک درست کنی بعد با اون فریم ورک سایت بسازی
یا اینکه مستقیم برید با فریم ورک آماده که کسی نوشته کار کنید و بزارید اون فریم ورک به این چیزا فکر کنه و شما تمرکزتون رو بزارید روی نوشتن خود وبسایت
مثل اینه که شما بخای خونه بسازی میتونی تمرکزت رو بزاری روی بنایی و معماری خونت و دروپنجره و برقکاری و لوله کشی و ..... رو بدی یه پیمانکار وارد به این موارد
یا اینکه میتونی اینا رو هم خودت یاد بگیری و و همه کارا رو خودت بکنی که خیلی هم خوبه و همه فن حریف میشی ولی ساخت خونت چند سال طول میکشه
تو این مدت حسابی خسته و گیج ممکنه بشی و حتی زده بشی از کار و قیدش رو بزنی
و درنهایت 1 ماه بعد ساخت میبینی برقت جرقه میزنه و خونه آتیش میگیره یا لوله ها میترکه و ....
تو این مدت هم بیزنس تعطیله چون هم وقتش رو نمیکنی بسازی اگرم بسازی خونه مشتری هم کلی مشکل براش پیش میاد مثل خونه اولت
اولویت بندی کن چیزایی رو که باید یاد بگیری
شما 1-2 سال شروع کارت پروژه های کوچیک تا متوسط انجا خواهی داد که نیازی به این مباحث نداره پس تمرکزت رو بزار رو مباحثی که تو این رنج کاربرد داره و بعدا برو سراغ موارد پیچیده تر چون خیلی چیزا هست که باید یاد بگیری که استفاده بیشتری خواهند داشت
mvc یه دیزاین پترنه که میگه کد های دیتبایس - منطق - و قالب بجای اینکه توی یک صفحه نوشته بشن باید جدا بشن چیز خاصی نداره که بخای یاد بگیری و کد نویسی در کار نیست فقط باید یجوری این کد هارو جدا و در هنگام فراخانی صفحه به هم متصل کنی که فریم ها خودشون این کار رو برات انجام میدن و نیاز نیست چیز اضافه یا خاصی یاد بگیری فقط کافیه 1-2 سطر تئوری بخونی تا وقتی فریم ورک کار میکنی متوجه بشی چرا کد هایی که برای یک صفحه هستن کنارهم و توی یک صفحه نوشته نمیشن
اونکه چند تا -> داره هم بهش میگن متد چینینگ یا زنجیر کردن متد ها وقتی یه تابع شی برمرگدونه شما میتونی مستقیما از شی همونجا استفاه کنی بجای اینکه بریزیش توی یک متغیر دیگه مثلا کلاس اداره و کارمند زیر
class office{
function create_employe(){
return new employe();
}
}
class employe {
function work(){
echo 'im working';
}
}
شما میتونی اینجوری استفاده کنی
$office = new office();
$ali = $office->create_employe();
$ali->work();
یا میتونید زنجیرش کنید متد ها رو
$office = new office();
$office->create_employe()->work();