نمایش نتایج 1 تا 19 از 19

نام تاپیک: شی گرایی(OOP)

  1. #1
    کاربر دائمی آواتار shayan_delphi
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    اصفهان
    پست
    274

    شی گرایی(OOP)

    بنام خدا
    سلام به همه دوستان
    من هرجا ebook یا مطلبی از سایتهای خارجی راجع به دلفی خواندم بدون استثنا از OOP یا همون شی گرایی صحبت شده بود حتی موضوع Net. هم با OOP به عنوان یک سیستم قدرتمند مطرح شده ولی در سایتهای فارسی و بین برنامه نویسها مخصوصا دلفی کارها خیلی کم و یا اصلا هیچ اطلاعاتی در مورد شی گرایی نیست.
    من خودم سعی می کنم اول از مزایای اون بنویسم بعدش هم روشهایی که یاد می گیرم.
    از دوستانی که به این نوع برنامه نویسی هم وارد هستند می خواهم که اطلاعاتشون را برای دیگران بنویسند.
    خودم هم اطلاعاتم کم هست ولی سعی می کنم هرچی یاد می گیرم بنویسم.
    با تشکر

  2. #2
    کاربر دائمی آواتار MiRHaDi
    تاریخ عضویت
    تیر 1383
    محل زندگی
    تهران - سوهانک
    پست
    982
    سلام
    عزیزم شیء گرایی برای یک دلفی کار یک چیز جا افتاده است ، اگر زیاد کسی در بارش صحبت نمیکنه برای اینه که ما زیاد در مورد روش پا کردن کفشمون صحبت نمیکنیم
    برای کامپاننت نویسی و ... همش باید از مفاهیم شیء گرایی استفاده بشه و حتی برای استفادش هم .
    فکر کنم تو قسمت پاسکال در این مورد صحبت شده ولی خوب استفاده از تجربیات و علم شما هم خالی از لطف برای ما و دوستان نیست
    ممنون میشیم حاصل زحماتتون رو در اختیار دوستان بگذارید
    یا علی

  3. #3
    اصلا موافق این حرف نیستم که شی گرایی برای دلفی کارها یک چیز جا افتاده ست. خود من الآن دلفی نویسهای زیادی رو می شناسم که بلد نیستن کفش پاشون کنن!!! در واقع باید بگم حقیقت شی گرایی چیزی و آنچه در دلفی «نیاز» می شود چیز دیگری است...

  4. #4
    کاربر دائمی آواتار Kamyar.Kimiyabeigi
    تاریخ عضویت
    خرداد 1384
    محل زندگی
    تهران
    پست
    1,276

    Smile

    نقل قول نوشته شده توسط Naficy
    اصلا موافق این حرف نیستم که شی گرایی برای دلفی کارها یک چیز جا افتاده ست. خود من الآن دلفی نویسهای زیادی رو می شناسم که بلد نیستن کفش پاشون کنن!!!
    کاملا موافقم
    البته همه بزرگان و اساتید این موضوع رو بهتر از من میدونن ولی خوب برای یادآوری میگم که اصلا دلفی پایش OOP هست یعنی به نظر من اگه کسی OOP ندونه و با دلفی کار کنه مثله اینه که بدون هیچ امکاناتی بخواد با یک قاشق چایی خوری یک تونل مترو حفر کنه

  5. #5
    کاربر دائمی آواتار babak869
    تاریخ عضویت
    اسفند 1383
    محل زندگی
    کرمانشاه
    پست
    1,251
    کاملا درسته که دانستن شی گرایی یه چیز لازمیه اما برای کار کردن با دلفی دانستنش خیلی واجب نیست.منم خیلی ها رو میشناسم که سالهاست با دلفی کار میکنند اما در زمینه شی گرایی اطلاعاتی ندارند.اما بهتره که یه دلفی کار خودش رو در این زمینه قدرتمند کنه چون واقها قدرت فوق العاده زبانهایی مثل دلفی و جاوا و سی++ در همین شی گرایی اونهاست
    موفق باشید

  6. #6
    یه دانستنی آتشین:
    هیچ می‏دونین OOP پایش Pascal هست؟
    قول می‏دم الان همه می‏گن: نخیر زبان مورد استفاده من بنیانگذار OOP هست.
    من ادله مستند دارم که OOP با Pascal معرفی شده. خوب اینو دیگه همه می‏دونن که مادر دلفی پاسکاله.

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


    من ادله مستند دارم که OOP با Pascal معرفی شده. خوب اینو دیگه همه می‏دونن که مادر دلفی پاسکاله.
    خییییییلی مشتاقم بشنوم!!

  8. #8
    کاربر دائمی آواتار shayan_delphi
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    اصفهان
    پست
    274

    عمل به جای حرف

    بنام خدا
    سلام به همه دوستان
    جناب میرهادی نسبت به موضوع شی گرایی کم لطفی کردند و چیزی که خود من دریافتم خلاف این نظر هست.اطلاعات برنامه نویسها خیلی کم،نامفهوم،دست و پا شکسته و تازه این یه کم اطلاعات در ذهن برنامه نویسهای وارد حبس شده!!و سینه به سینه منتقل میشه اونم با چه سختی؟!!
    به هر حال سعی می کنیم با کمک دوستان (از جمله آقای میر هادی) در زمینه شی گرایی به یه جایی برسیم.
    برنامه نویسی شی گرایی سطحی بالاتر از برنامه نویسی ساخت یافته هست،اکثر برنامه نویسان ویژوالی ما بطور ضمنی از شی گرایی استفاده می کنند ولی از اصول آن بی اطلاعند. (به قول دوستان همین گذاشتن کامپوننت روی فرم یا اصلا همین فرمی که می بینیم شی گرایی است )
    خود من هم اطلاعات کلی و گنگی درباره بعضی اصطلاحات داشتم و الان مدتی این موضوع را دنبال میکنم و اطلاعات خیلی خوبی بدست آوردم و حتی (به تنهایی) در حال انجام یه پروژه کاملا بر مبنای شی گرایی هستم.خیلی مواقع با مشکلاتی مواجه می شوم ولی یافته ها در این زمینه واقعا فوق العاده هستند و بدون اغراق عرض کنم این نوع برنامه نویسی فوق العاده جالب می باشد.
    (حتی توابع و پروسیجرهای شخصی بانک SQL را هم بصورت کامپوننت(شی) استفاده می کنم آنقدر لذت بخش که دهان همه آب می افتد!)
    اطلاعات من از وب،eBook ها، کتابها ،برنامه نویسهای دیگه و یافته های عملی خودم هست ، پس اگر دوستان اشکالی هم دیدند برای اصلاح آن حتما اقدام کنند.

  9. #9
    کاربر دائمی آواتار shayan_delphi
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    اصفهان
    پست
    274
    دوستان یافته های خودتون رو به دیگران منتقل کنید و جا برای اطلاعات و دانش تازه در ذهن خود باز کنید.

  10. #10
    کاربر دائمی آواتار Kamyar.Kimiyabeigi
    تاریخ عضویت
    خرداد 1384
    محل زندگی
    تهران
    پست
    1,276
    نقل قول نوشته شده توسط shayan_delphi
    دوستان یافته های خودتون رو به دیگران منتقل کنید و جا برای اطلاعات و دانش تازه در ذهن خود باز کنید.
    منم کاملا موافقم .... جای بحث راجع به OOP بیایید اطلاعاتمونو به دیگران منتقل کنیم

  11. #11
    کاربر دائمی آواتار MNosouhi
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    اصفهان
    پست
    883
    عزیزم شیء گرایی برای یک دلفی کار یک چیز جا افتاده است ، اگر زیاد کسی در بارش صحبت نمیکنه برای اینه که ما زیاد در مورد روش پا کردن کفشمون صحبت نمیکنیم
    من هم با صحبت های آقای میرهادی موافقم ، با این توضیح که منظور آقای میرهادی برنامه نویسان واقعی هستش ، وگرنه عمه من هم می تونه یه دیتابیس بسازه و با دلفی بهش کانکت کنه و بگه من هم ذلفی بلدم.
    به هر حال از مباحثی که باعث پیشرفت علم دوستان بشه استقبال می کنم.
    آخرین ویرایش به وسیله MNosouhi : شنبه 21 آبان 1384 در 10:19 صبح

  12. #12
    کاربر دائمی آواتار shayan_delphi
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    اصفهان
    پست
    274

    Post

    سلام
    دلفی بر خلاف زبانهای شی گرای خالص مانند SMALLTALK ( که در آن به هر چیز در برنامه به دید یک شی نگاه می شود و شی گرایی اجباری و لازمه برنامه است) یک زبان شی گرای دورگه است که از زبان موجود پاسکال شی گرا بوجود آمده و در آن برنامه نویس به دلخواه از شی گرایی استفاده می کند.
    سیستم کدنویسی ساده --- > برنامه نویسی ساخت یافته(کلاس،توابع،پروسیجر و...)
    --- >شی گرایی--- >.NET
    نکته مهم در برنامه نویسی شی گرایی اینه که لازم نیست همه چیز را در ابتدای انجام پروژه بدانید،
    با پیشرفت در پروژه مفاهیم و پاسخها را (که در ابتدا ترسناک بودند) راحت پیدا می کنید.
    برخی موضوعاتی که در شی گرایی زیاد به گوشتان می خورد و امیدوارم دوستانی که آشنایی بیشتری دارند از آموزش آنها دریغ نفرمایند:
    پایه گذاری شی گرایی بر سه اصل اساسی و مهم :
    1- نهان سازی یا کپسوله سازی(Encapsulation) با مکانیزمهای دستیابی Public,Protect,Private,Published و متدهای Constructor و Destructor و ..
    2- وراثت (Inheritance)
    3- پلی مورفیزم،چند ریختی یا مقید سازی دیر هنگام(Polymorphism or Late Binding).

    کلاسها و اشیا و کلمات کلیدی Overlode,Override,Abstract,Virtual در تعریف کلاسها
    و ....
    شاید از بعضی این موارد استفاده کرده باشید ولی اصل استفاده آنها در شی گرایی است با توجه به اینکه شما بطور ضمنی از شی گرایی استفاده کرده اید.

  13. #13
    راه خوبیه شروع کردین.

    یک نکته اینه که نمی شه Published رو جزء نهان سازی (و همینطور جزء مطالب آموزش شی گرایی) حساب کرد. Published فقط برای عملیات ویژوال در دلفی در نظر گرفته شده و ربطی به اصول شی گرایی نداره.

  14. #14
    کاربر دائمی آواتار MiRHaDi
    تاریخ عضویت
    تیر 1383
    محل زندگی
    تهران - سوهانک
    پست
    982
    سلام
    من همینجا از همه معذرت خواهی میکنم
    درست میگید. من فکر کردم کامپاننت رو رو فورم بذارم یعنی شیءگرایی شرمنده
    از شما ممنونم که مرا متوجه نمودید :)
    فکر کنم یک ایبوک فارسی در این مورد دیدم ! یه سرچی تو بکنیم خوبه
    بای

  15. #15
    کاربر دائمی آواتار shayan_delphi
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    اصفهان
    پست
    274

    استفاده مجدد از کد

    بنام خدا
    یک موضوع مهم در برنامه نویسی استفاده مجدد از کد می باشد.(کاری که در برنامه نویسی ساخت یافته مانند پاسکال،C،VB و غیره با استفاده از رویه ها، توابع و کلاسها انجام می شود نوشتن یکبار--- > فراخوانی چندین بار ) خوبه ولی در اون روش انعطاف پذیری در استفاده و توزیع خیلی کم هست.
    حالا در شی گرایی استفاده مجدد از کد یعنی استفاده مجدد از نوع،ایجاد آبجکت و کنترل و توزیع به هر صورت دلخواه.
    اگر آبجکت کار شما را راه می اندازه که چه بهتر وگرنه بدون دست زدن به دستورات پایه، موارد مورد نیاز را کم و زیاد می کنیم.این کار همونطور که قبلا اشاره کردم با استفاده یکی از جذابترین مفاهیم شی گرایی یعنی وراثت انجام می شود.این قسمت خیلی جالبه چون خیلی از نیازهای برنامه نویس با همین مورد به سادگی برطرف می شه و در قدرت برنامه،مدیریت برنامه و صرفه جویی در زمان خیلی موثره.(دوستانی که نوشتن برنامه هایی با چندین فرم را تجربه کردند بهتر به اهمیت اون پی می برند)
    به عنوان نمونه عرض کنم شما پروژه ای با انواع فرم دارید ،فرمهایی برای دریافت اطلاعات کاربر،
    نمایش اطلاعات،گزارشات،تایید کاربر،حتی پیغامهای خطا و.... به علاوه از اشیایی استفاده می کنید که مشخصات خاصی دارند مثلا Edit Box برای تاریخ،برای اعداد اعشاری گرد شده،DBGrid های رنگی،و اشیای سفارشی چندکاره و .....
    در حالت عادی برای انجام پروژه چه کار می کنید؟کارهای تکراری،مقدار دهی تک تک و همه جا به صورت تکراری
    برای اعمال تغییرات یا اعمال یک عملیات کلی بر روی همه فرمها چه کار می کنید؟چند باره کاری؟
    با خطاهای فراوان،مدیریت دشوار،سردر گمی و خیلی مشکلات دیگر(اینم داشته باشید: پشتیبانی وحشتناک)
    برای این که موضوع را بهتر درک کنید بهتره یه مثال عملی را با هم انجام بدیم.چطوره؟

  16. #16

    نقل قول: شی گرایی(OOP)

    لطفا این ebookها یا کتابها یا سایتها را معرفی کنید.من که تا الان هر چی کتاب خوندم به جایی نرسیدم
    (یا من نمیکشم یا اونا بد توضیح میدن)

  17. #17
    کاربر تازه وارد
    تاریخ عضویت
    شهریور 1390
    محل زندگی
    بوشهر
    پست
    34

    نقل قول: شی گرایی(OOP)

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

  18. #18

    نقل قول: شی گرایی(OOP)

    سلام دوستان
    من میخواستم بپرسم در C++‎‎ برای ایجاد کلاس دانشجو در قسمت private برای بیان خصوصیات (شماره-نام-فامیل-سن-معدل و...) باید struct تعریف کرد؟
    خودم که فکر میکنم کلاس خودش یه نوع struct . ولی میخوام مطمئن شم . چون سوال امتحانمون بوده و استاد گفته باید struct تعریف میکردیم.
    لطفا تا نمره ها نیومده راهنماایم کنین
    با تشکر.

  19. #19

    نقل قول: شی گرایی(OOP)

    نقل قول نوشته شده توسط armita_171 مشاهده تاپیک
    سلام دوستان
    من میخواستم بپرسم در C++‎‎‎ برای ایجاد کلاس دانشجو در قسمت private برای بیان خصوصیات (شماره-نام-فامیل-سن-معدل و...) باید struct تعریف کرد؟
    خودم که فکر میکنم کلاس خودش یه نوع struct . ولی میخوام مطمئن شم . چون سوال امتحانمون بوده و استاد گفته باید struct تعریف میکردیم.
    لطفا تا نمره ها نیومده راهنماایم کنین
    با تشکر.
    به طور کلی استراکت و کلاس مشابه هم هستند !!!!!!!
    با این تفاوت که قدرت کلاس خیلی بشتر از استراکت هستش و برای کارای معمولی مانند نگهداری خصوصیات دانشجو بهتره از استراکت استفاده کرد
    ولی اگه علاوه بر نگه داری مشخصات دانشجو می خواهید توابعی مربوط به دانشجو را ایجاد کنید مانند بدست اوردن معدل کل دروس و... بهتره از کلاس استفاده کنید زیرا قدرت بیشتری دارد.(البته از نظر من)

تاپیک های مشابه

  1. تقاضایی راهنمایی و کمک در کار با Dreamweaver
    نوشته شده توسط احمد کاوه در بخش طراحی وب (Web Design)
    پاسخ: 4
    آخرین پست: پنج شنبه 29 مهر 1389, 12:41 عصر
  2. آقا چه چیزایی با javascript قابل حل هست چه چیزایی با .net
    نوشته شده توسط odiseh در بخش ASP.NET Web Forms
    پاسخ: 13
    آخرین پست: جمعه 02 فروردین 1387, 04:44 صبح
  3. دوستانی که با interbase آشنایی دارند لطفا راهنمایی کنند
    نوشته شده توسط mehdi_moosavi در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 4
    آخرین پست: شنبه 01 بهمن 1384, 14:11 عصر

قوانین ایجاد تاپیک در تالار

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