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

[ + افزودن آگهی متنی جدید ]




صفحه 3 از 4 اولاول 1234 آخرآخر
نمايش نتايج 21 به 30 از 31

نام تاپيک: آموزش برنامه نویسی شی گرایی در PHP

  1. #21
    پروفشنال Web Design's Avatar
    تاريخ عضويت
    Oct 2010
    محل سكونت
    Phpstorm
    پست ها
    602

    پيش فرض

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

    شعار شی گرایی DRY یعنی تکرار نکن هست و از تکرار کردن کد ها با شمایل و کاربرد برابر جلوگیری می کند .

    پست اول رو بخونید

  2. 2 کاربر از Web Design بخاطر این مطلب مفید تشکر کرده اند


  3. #22
    پروفشنال Web Design's Avatar
    تاريخ عضويت
    Oct 2010
    محل سكونت
    Phpstorm
    پست ها
    602

    پيش فرض ارث بری کلاس ها از یکدیگر

    سلا م
    بابت تاخیر یک روزه شرمنده سر پروژه تیم خودمون بودم حالا تو بخش نمونه کار میزارم .

    خوب امروز بریم سراغ ارث بری یا Inheritance که خیلی کاربرد داره و با یک مثال ساده شروع می کنیم .

    در نظر بگیرید که هر وسیله نقلیه نه موتورسیکلت ها دارای 4 چرخ و دارای یک اتاق و موتور می باشند ولی شکل های مختلقی دارند اما همه 4 چرخ یک اتاق و موتور را دارند و ما الگویی برابر با مقادیر مختلف داریم . پس برای ساخت یک RD از روی پیکان مهندسین ایران موفق شدند که کاملا از 2 کلاس مختلف پژو 405 و پیکان عزیز استفاده کنند و هیچ متغیری رو جابجا نکنند .


    خوب برای شروع Inheritance ما در ابتدا یک کلاس و یک متد طبق روال همیشگی ایجاد می کنیم .

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    در مثال بالا ما یک کلاس به نام car ساختیم و مقادیر wheels و doors را در داخل آن قرار دادیم و در ادامه یک متد ساختیم که تعداد چرخ و در های ماشین ما را با هم جمع می کند .

    حالا نوبت به ساخت کلاس وارث ماست .

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    نکته : برای ساخت ارث بری ایتدا کلاس را ساخته و نام آنرا انتخاب می کنیم و بعد از نام کلاس کلمه کلیدی extends را آورده و نام کلاس والد که قرار است از آن مقادیر را ارث ببریم وارد می کنیم .

    در کد بالا کلاس compactCar تمام مقادیر خود را از car به ارث برده اما این بار ماشین ما 2 در دارد .

    نکته : می توانیم مقادیر را در ارث بری تغییر دهیم و مقادیر جدیدی قرار دهیم .

    در کد زیر ما 2 شی ساختیم و مقادیر خود را چاپ کردیم .

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

    نتیجه بالا باید چیزی شبیه به زیر باشد :

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید


    خوب این هم از ارث بری ما در آموزش بعدی به خصوصی سازی متد ها و متغیر ها می پردازیم .

    پدرام مرندی

  4. 5 کاربر از Web Design بخاطر این مطلب مفید تشکر کرده اند


  5. #23
    داره خودمونی میشه atiishpare's Avatar
    تاريخ عضويت
    Apr 2013
    پست ها
    99

    پيش فرض

    سلام .ممنونم از شما. خیلی مفیده مطالبتون
    جواب تمرین دوم منو میشه لطفا ببینید درسته یا نه؟ البته جواب میده ها ولی نمیدونم اصولیه یا نه.
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

  6. #24
    پروفشنال Web Design's Avatar
    تاريخ عضويت
    Oct 2010
    محل سكونت
    Phpstorm
    پست ها
    602

    پيش فرض

    کارتون خیلی خوب بود آفرین اما بهتره به جای اینکه از echo داخل خود method های استفاده کنیم یک مقدار رو Return کنیم و وقتی متد رو اجرا میکنیم اون رو Echo کنیم .

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

  7. 2 کاربر از Web Design بخاطر این مطلب مفید تشکر کرده اند


  8. #25
    داره خودمونی میشه atiishpare's Avatar
    تاريخ عضويت
    Apr 2013
    پست ها
    99

    پيش فرض

    کارتون خیلی خوب بود آفرین اما بهتره به جای اینکه از echo داخل خود method های استفاده کنیم یک مقدار رو Return کنیم و وقتی متد رو اجرا میکنیم اون رو Echo کنیم .

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    بله .سپاسگزارم از راهنماییتون

  9. #26
    داره خودمونی میشه atiishpare's Avatar
    تاريخ عضويت
    Apr 2013
    پست ها
    99

    پيش فرض

    سلام آقاپدرام. اینم تمرین بعدی

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

  10. #27
    پروفشنال behnamy01's Avatar
    تاريخ عضويت
    Jan 2013
    پست ها
    706

    پيش فرض

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

    شعار شی گرایی DRY یعنی تکرار نکن هست و از تکرار کردن کد ها با شمایل و کاربرد برابر جلوگیری می کند .

    پست اول رو بخونید
    ببینید، این رو متوجه هستم ولی میخوام کاربرد در عمل شی گرایی رو یاد بگیرم، البته فکر میکنم بهش میگن الگو برنامه نویسی که یعنی چه جوری یک اسکریپت رو ساختاردهی بکنم مثلا. الان نگاه کنید من شی گرایی رو یاد گرفتم ولی نمیدونم چرا یاد گرفتم! یعنی کامل بلدم یک کلاسی رو مثلا توی فولدر includes بسازم و بعد توی صفحات اسکریپت مثل index.php هر جا گه لازم بود با autoload کلاس فراخوانی بشه، ولی دقیق نمیدونم باید کی از کلاس استفاده کنم و چی رو بذارم توی کلاس ها و چرا، و چی رو بذارم توی خود صفحات اسکریپت، نه توی کلاس !؟ اگر بخوام مثلا یک نمونه از منظورم رو بگم مثلا تا اونجا که دیدم یک کلاس دیتابیس میسازن و اونجا توی constructer اون کلاس، به دیتابیس کانکت میشه با هر بار فراخوانی کلاس، و توی متود های مختلف اون کلاس، انواع کارهایی که با دیتابیس انجام میدیم رو تعریف میکنیم که توی صفحات اسکریپتمون فقط اون اسم کلاس و این متود هاش رو صدا بزنیم و دیگه توی هر صفحه ای از اسکریپت کد های کار با دیتابیس رو از اول ننویسم. حالا من میخوام بدونم دیگه مثلا کی استفاده میکنیم از کلاس، اصلا کی باید خودمون بفهیم که باید این رو کلاس کنیم، کلا ساختار اسکریپت ها رو چجوری اول فکرش رو توی ذهنشون انجام میدن که یک دفعه وسط کار نگن آخ کاشکی این رو کلاس میکردم و اینجور چیزا...

  11. #28
    مدیر انجمن طراحی صفحات وب tabriz-info's Avatar
    تاريخ عضويت
    Jun 2006
    محل سكونت
    هالیکارناسوس
    پست ها
    4,277

    پيش فرض

    ببینید، این رو متوجه هستم ولی میخوام کاربرد در عمل شی گرایی رو یاد بگیرم، البته فکر میکنم بهش میگن الگو برنامه نویسی که یعنی چه جوری یک اسکریپت رو ساختاردهی بکنم مثلا. الان نگاه کنید من شی گرایی رو یاد گرفتم ولی نمیدونم چرا یاد گرفتم! یعنی کامل بلدم یک کلاسی رو مثلا توی فولدر includes بسازم و بعد توی صفحات اسکریپت مثل index.php هر جا گه لازم بود با autoload کلاس فراخوانی بشه، ولی دقیق نمیدونم باید کی از کلاس استفاده کنم و چی رو بذارم توی کلاس ها و چرا، و چی رو بذارم توی خود صفحات اسکریپت، نه توی کلاس !؟ اگر بخوام مثلا یک نمونه از منظورم رو بگم مثلا تا اونجا که دیدم یک کلاس دیتابیس میسازن و اونجا توی constructer اون کلاس، به دیتابیس کانکت میشه با هر بار فراخوانی کلاس، و توی متود های مختلف اون کلاس، انواع کارهایی که با دیتابیس انجام میدیم رو تعریف میکنیم که توی صفحات اسکریپتمون فقط اون اسم کلاس و این متود هاش رو صدا بزنیم و دیگه توی هر صفحه ای از اسکریپت کد های کار با دیتابیس رو از اول ننویسم. حالا من میخوام بدونم دیگه مثلا کی استفاده میکنیم از کلاس، اصلا کی باید خودمون بفهیم که باید این رو کلاس کنیم، کلا ساختار اسکریپت ها رو چجوری اول فکرش رو توی ذهنشون انجام میدن که یک دفعه وسط کار نگن آخ کاشکی این رو کلاس میکردم و اینجور چیزا...
    بستگی به کارتون داره دیگه

    اگر یک پروژه عملی انجام بدید کارایی این موارد رو بهتر درک میکنید

    مثلا اگر قراره شما یک صفحه php داشته باشید دیگه نیازی به کلاس نیست

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

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

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

    اون موقع از mysql شروع کرده بودم
    بعدا مجبور شدم mysqli و بعد pdo تغییر بدم

    تازه بعد از اینا مثلا میخوای از یک سیستم کش استفاده کنی دوباره باید همه ای کوئری ها رو پیدا کنی و دستی تغییر بدی

    اما الان دیگه هر کاری بکنم حتما یک فایل کلاس دم دستم باز هست و حتی اگر کدی قراره کلا 1 بار تو سایت استفاده بشه اونو هم تو کلاس میارم

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

  12. این کاربر از tabriz-info بخاطر این مطلب مفید تشکر کرده است


  13. #29
    کاربر فعال طراحی صفحات وب hamedarian2009's Avatar
    تاريخ عضويت
    Nov 2012
    پست ها
    305

    پيش فرض

    ببینید، این رو متوجه هستم ولی میخوام کاربرد در عمل شی گرایی رو یاد بگیرم، البته فکر میکنم بهش میگن الگو برنامه نویسی که یعنی چه جوری یک اسکریپت رو ساختاردهی بکنم مثلا. الان نگاه کنید من شی گرایی رو یاد گرفتم ولی نمیدونم چرا یاد گرفتم! یعنی کامل بلدم یک کلاسی رو مثلا توی فولدر includes بسازم و بعد توی صفحات اسکریپت مثل index.php هر جا گه لازم بود با autoload کلاس فراخوانی بشه، ولی دقیق نمیدونم باید کی از کلاس استفاده کنم و چی رو بذارم توی کلاس ها و چرا، و چی رو بذارم توی خود صفحات اسکریپت، نه توی کلاس !؟ اگر بخوام مثلا یک نمونه از منظورم رو بگم مثلا تا اونجا که دیدم یک کلاس دیتابیس میسازن و اونجا توی constructer اون کلاس، به دیتابیس کانکت میشه با هر بار فراخوانی کلاس، و توی متود های مختلف اون کلاس، انواع کارهایی که با دیتابیس انجام میدیم رو تعریف میکنیم که توی صفحات اسکریپتمون فقط اون اسم کلاس و این متود هاش رو صدا بزنیم و دیگه توی هر صفحه ای از اسکریپت کد های کار با دیتابیس رو از اول ننویسم. حالا من میخوام بدونم دیگه مثلا کی استفاده میکنیم از کلاس، اصلا کی باید خودمون بفهیم که باید این رو کلاس کنیم، کلا ساختار اسکریپت ها رو چجوری اول فکرش رو توی ذهنشون انجام میدن که یک دفعه وسط کار نگن آخ کاشکی این رو کلاس میکردم و اینجور چیزا...
    سلام من نمیدونم شما در چه سطح تحصیلات هستین و اصلا رشته تون کامپیوتره یا نه
    اما اگه در مورد مهندسی نرم افزار و UML کمی مطالعه کنید متوجه میشین چجوری باید کلاس ایجاد کنیم
    میتونم یه راهنمایی بکنم که هر شی مستقل توی یک برنامه که دارای یکسری رفتارها و خصوصیات مختص به خودش هست رو میتونید به کلاس تبدیل کنید مثلا توی سیستم دانشگاه کلاس ها میشن دانشجو ، استاد، درس و ...

  14. این کاربر از hamedarian2009 بخاطر این مطلب مفید تشکر کرده است


  15. #30
    پروفشنال Web Design's Avatar
    تاريخ عضويت
    Oct 2010
    محل سكونت
    Phpstorm
    پست ها
    602

    پيش فرض

    خوب منم به یاری دوستان بیام یه توضیحات تکمیلی بدم

    ببینید ما در 99% پروژه هامون اتصال به دیتابیس داریم و همیشه خدا ما isnet , Select داریم به نظر شما همیشه لازمه یه کد تکراری بنویسیم ؟ برای همه کوئری ها یه درخواست جدید بنویسیم ؟

    این میشه استفاده از شی گرایی و برنامه نویسی DRY یعنی ما دیگه خودمونو تکرار نمی کنیم ... این میشه استفاده از شی گرایی اما دوستمون حامد یکم اشتباه کرد مهندسی UML ربطی به ساختار شی گرایی نداری و بیشتر مربوط به مدل های برنامه نویسی هستش مثل MVC .



    پدرام

  16. این کاربر از Web Design بخاطر این مطلب مفید تشکر کرده است


Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •