آموزش PHP (گام 2) شی گرایی [سازنده – وراثت]

دوره پیشرفته PHP مه 2015 12

در ادامه جلسه قبل باز هم بحث شیرین شی گرایی را ادامه خواهیم داد . ویدئو این قسمت را میتوانید از باکس زیر دانلود کنید. (برای اکسترک کردن فایل ویدئویی از برنامه 7zip استفاده کنید)

دانلود فیلم آموزشی
لینک دانلود24 مگابایت33 دقیقه

و اما جزوه این قسمت :

متد سازنده:

متد سازنده تابعی است که در یک class قرار دارد و هنگامی که ما از یک class نمونه سازی میکنیم به صورت اتوماتیک اجرا میشود. برای ایجاد متد سازند کافیست به همان روس مروسم یک تابع درون class ایجاد کنیم اما این تابع باید با کلاس درونش همنام باشد :

در با اجرای دستورات بالا عبارت hello چاپ میشود در صورتی که ما فقط شی را نمونه سازی کردیم. معمولا از متد سازنده برای مقدار دهی اولیه به متغییر (صفت) های درون یک کلاس (class) استفاده میشود.

وراثت در شی گرایی :

وراثت در شی گرایی یعنی یک Class متغییر ها و توابع یک Class دیگر را به ارث ببرد. در اینصورت کلاس مشتق شده میتواند بصورت مستقل از صفات (متغییر) و عملیات (توابع) های کلاس پایه اسفاده کند و همچنین صفات و عملیات هایی مخصوص خودش نیز داشته باشد. برای اینکار ضمن تعریف کلاس مشتق از واژه extends استفاده میشود :

و اما فایل های پروژه این قسمت را میتوانید از باکس زیر دانلود کنید :

دانلود فایل پروژه جلسه ۲
لینک دانلود0.1 مگابایت

 

تمارین این جلسه :

۱− کلاسی بنویسید که ضلع مربعی را دریافت , مساحت و محیط و قطر آن را حساب کند.

۲− کلاسی بنویسید که مسافت طی شده و سرعت یک اتوموبیل را دریافت و طبق فرمول زیر میزان مصرف سوخت را حساب کند : (میزان مصرفی سوخت = مسافت × سرعت)

دیدگاه ها
  • Ali Sourena گفت:

    اقا ما که به شدت لذت بردیم 🙂
    در صورت امکان روزی یه دونه بزار دیگه برادر 😀

  • سیدرضا سیدموسوی گفت:

    حسین جان
    خیلی ممنون

  • Esmat گفت:

    Thank your putting the new lessen for us it was very good. If it’s possible for you take and record the new lessen for java scrip members who wants to learn that.

  • JAMASB گفت:

    سلام
    لینک دانلود مشکل داره لطفا بررسی کنید

  • mehran گفت:

    Thanks Hossein Jan

  • yamets گفت:

    سلام خیلی شرمنده ببخشید به موضوع سوالم ربطی نداره اما یک هفته هست من مشکلی دارم
    اقای شفیعیان من مشکلی دارم
    من در فرم لاگین و ثبت نام کد captcha قرار دادم در لوکال درست عمل میکنه اما در سرور و پنل cpanel اپلود میکنم قالب کد بک گراند و نشون میده اما کد ها تولید نمیشه میشه بگید چکار کنم
    من اصلا از تنظیمات cpanel اگاه نیستم اگه نیاز به تنظیمات خاصی هست لطفا اگه میشه جزییات بگید خیلی ممنون میشم

    • حسین شفیعیان گفت:

      سلام
      یا سایر افزونه ها اختلال ایجاد کردند یا از سمت سرور محدود شدین !
      از افزونه هاش استفاده کنید …

      • yamets گفت:

        ببخشید باز مطلب مربوط به درس نیست
        محدود که میدونم نشدم
        کتابخانهGD هم فعاله فقط نوشته های داخل captcha نشون داده نمیشه ولی قالب و رنگ زمینه همه نشون میده خواهش میکنم کمکم کنید یک هفته نتونستم سایتم و راه اندازی کنم به خاطر captcha

        • حسین شفیعیان گفت:

          باید برسی بشه , اینجا هم جای مناسبی برای حل مشکل نیست. در انجمن وردپرس پارسی مطرح کنید خودم یا سایر دوستان پاسخگو هستیم

  • davood01 گفت:

    مرسی – عالی بود –

  • سیدرضا سیدموسوی گفت:

    سلام حسين جان
    چجوري تو فيسبوك پيدات كنيم؟

    • حسین شفیعیان گفت:

      سلام
      من عضو فیسبوک نیستم !!!!!!!!!!!!
      اگر موردی بود میتونید باهام تماس بگیرین : ۰۹۱۰۳۵۳۳۰۹۱

  • Esmat گفت:

    Hi guys I want to introduce a best website in the world for learning code if you like to learning please go and use it. I’m using this web and learned a lot of code for making games and something else. The website is (wespeakcode.com) please try it good for me and perhaps us. If you know any good website please introduce to us thank you

  • omid2002l گفت:

    سلام
    واقعا خسته نباشی حسین آقای گل

  • amin گفت:

    سلام
    چطور میشه هدر وبلاگ رو تغییر داد
    میشه راهنمایی بکنید
    هر مطلبی خوندم نشد
    گیج کننده بود
    چطور عکس رو به فرمت cssدربیاری که جیاگزین قبلی بکنی
    با تشکر

    • حسین شفیعیان گفت:

      سلام
      امکان تبدیل هر عکسی به کد نیست ! باید به html و css تسلط داشته باشید !

  • amin گفت:

    سلام
    طبق یک ویدئو اموزشی همه مراحل رو انجام دادم
    با نرم افزار Rapid CSS 2015
    جایگزینی و آپلود رو انجام دادم ولی نشد
    صفحه یکبار به هم ریخت
    دوباره مراحل رو تکرار کردم این بار هدر جایگزین شده بود ولی دیگر قسمت ها و بنر های استفاده شده قالب بهم ریخت (آپلود نشده!)
    امکانش براتون میسر هست کد قبلی رو با هدر نماز جایگزین کنید
    این آدرس
    sayberi174.ir/theme/namaz/c.css
    آدرس هدر نماز
    s6.uplod.ir/i/00599/ssmnltshx8lw.jpg
    خوش تان آرزوی ماست
    پاینده باشید

  • amin گفت:

    به شکوه و عظمت پیامبر رحمت و به یمن کرامت آن رحمه للعالمین قلبها به تسخیر درآمده و شعله های سرکش در ید قدرت او قرار میگیرند.
    پیامبری که تا اعماق تاریخ بر امتها و نشانه های بشریت و نور روشنایی و فضیلت را گسترانیده و هم اوست ​که​
    اشرف مخلوقات و سرور کائنات است .
    عید مبعث سالروز برگزیده شدن خوبترین خلقت خدا تبسم سبز ایمان ، رسول گل و نور و عشق حضرت محمد مصطفی (ص) را به شما و خانواده محترمتان تبریک عرض می نمایم.
    در پناه ایزد منان

  • amin گفت:

    باسلام وخسته نباشید.حسین آقا لطفا اگه امکانش هست اموزش فریم ورک سیمفونی رو شروع کنید.با سپاس ویژه از شما.

    • حسین شفیعیان گفت:

      سلام
      بنده آشنایی با این فریم ورک ندارم!
      احتمالا لاراول و یا کیک را میگم

  • فاطیما گفت:

    میتونم ایمیل تونو داشته باشم 1 کار محرمانه دارم…

  • areman گفت:

    سلام
    خسته نباشی ، آقا پس چرا این آموزش ها رو ادامه نمیدی دیگه ؟ ما منتظریم ها …

    • حسین شفیعیان گفت:

      سلام
      آموزش های این دوره به هم وابسته نیستند و هر مبحث را نهایتا در 3 جلسه توضیح میدم لذا عجله نکنید چون نمیخوام سطح کیفی آموزش ها کم بشه
      مرسی

  • mmv.mahdi گفت:

    سلام. من میخوام فایل هایی را به صورت انلاین بفروشم. ولی در عین حال میخوام که کاربر عضو سایت بشه و مبلغی را برای شارژ اکانت خود پرداخت کنه و تا زمان خاصی لینک های دانلود برای او نمایش داده بشوند. چگونه میتوانم این کار را انجام بدهم

  • mohadese گفت:

    سلام ادامه بدین لطفاٌ ،ما منتظریم

  • mohsen گفت:

    با سلام و تشکر از زحمات شما لطفا ادامه بدین . منتظر هستیم

    • حسین شفیعیان گفت:

      سلام
      چشم حتما ادامه خواهد داشت ، فعلا دارم برنامه ریزی و موضوع بندی هاشو تنظیم میکنم …

  • Mohammad گفت:

    سلام ، مستر این درسایی که میدی همون mvc میشه ! یا mvc فرق داره با این ؟

  • احمد گفت:

    سلام
    میشه یکی از فریم ورک های php رو آموزش بدید ؟
    مثل CodeIgniter یا yii

    • حسین شفیعیان گفت:

      سلام
      بله در نظر دارم یکی از فریم ورک ها را بصورت یک دوره جدا منتشر کنم ولی در حال حاضر دوره های نمیه کاره سایت رو باید تموم کنم تا دوره های جدید را شروع کنم

  • احمد گفت:

    سلام و خیلی ممنون آقا حسین
    آقا حسین من بعد از دیدن دوره مقدماتی سایت شما ، چگونه باید یک وب سایت رو طراحی کنم ؟
    آخه همش for ، if ، case و … هست .

    پس چه زمانی میتونم یه وب سایت طراحی کنم ؟
    آیا چنین دوره ای می گذارید؟

    با زبان های c# و بانک اطلاعاتی sql server نیز آشنایی دارم

    • حسین شفیعیان گفت:

      سلام
      خب همونمطور که از اسمش پیداست دوره مقدماتی بود و فقط جنبه استارت و آشنایی داشت
      یه سری آموزش هایی رو در آینده منتشر میکنم اما خودتون باید دنبالش باشید

  • hadi277 گفت:

    منتظر آموزش بعدی شما هستیم

  • سپیده گفت:

    سلام
    چرا دوره پیشرفته رو ادامه نمیدید؟
    نمیخواهید ادامه بدید ؟ ممنون

  • aryan گفت:

    سلام
    خسته نباشی
    آقا فکر کنم کلا یادت رفت که دوره رو ادامه بدی ها …
    الان دو ماه از آخرین قسمتی که زحمت کشیدی و تهیه کردی میگذره …
    ما منتظرانیم :دی

  • امیرحسام گفت:

    بی صبرانه منتظر آموزش های بعدیتونم

  • مسعود گفت:

    سلام خسته نباشین ما همچنان منتظر هستم.

  • فهیم گفت:

    با سلام و خسته نباشید. خیلی ممنون از آموزش های مفیدتون .جناب شفیعیان جلسه بعدی پی اچ پی رو کی آموزش میدین؟

  • فهیم گفت:

    با سلام و خسته نباشید جواب تمرین ها رو کجا میتونم ببینم؟

    • حسین شفیعیان گفت:

      سلام
      تمرین ها رو خودتون باید انجام بدین ، اگر مشکلی هم بود در انجمن مطرح بشه

  • مبین گفت:

    sql چی شد دوست من؟

  • مریم گفت:

    من تمرین هاش رو انجام دادم اشکال داشتم واسه خاطر اونو تو انجمن پرسیدم.چون وقتی کد های php فرم موردنظر رو بصورت معمولی مینویسم میدونم چطوری session رو ایجاد و صدا کنم و نتیجه درست رو میده.فقط اشکال من تو شی گرایی هست که به صورت شی گرایی چطوری session رو در فرم مورد نظر ایجاد و صدا کنم رو نمیدونم.
    ویا اینکه نوشتن select & insert رو بصورت معمولی میدونم به چه صورتی بنویسم و نوشتم.اما موندم که به صورت شی گرایی به چه صورتی select & insert بنویسم.

  • آرزو گفت:

    سلام وتشکر
    پس چرا آموزش دوره پیشرفته رو ادامه نمیدید؟
    منتظریم

  • karami گفت:

    ممنون از زحماتتون.
    ان شاالله که هرچه زودتر این آموزش ها رو ادامه بدین و
    یا اگه منبعی میشناسین که مفید باشه لطف کنید و معرفی کنید.

  • Queen.R گفت:

    سلام
    اگه میشه زودتر دوره پیشرفته رو ادامه بدید. خیلی وقته منتظریم ممنون

  • سودابه گفت:

    سلام آقای شفیعیان
    برا یاد گرفتن این دوره از همین جزوه استفاده کنم کافیه یا باید ویدئوشم دانلود و تماشا کنم؟؟؟

    • حسین شفیعیان گفت:

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

  • پرهام گفت:

    استاد تفاوت بین public,private,var در کلاس چیه؟

  • بهمن گفت:

    میشه مثال های بیشتری و بزنید !
    پیچیده تر بشه خیلی بهتره !
    ممنون

  • بهمن گفت:

    ببخشید میشه یک کسلاس از چند تا کلاس دیگه ارث ببره ؟


Time limit is exhausted. Please reload CAPTCHA.