بخشی از پاورپوینت
اسلاید 2 :
برنامه سازي پيشرفته با C++
اسلاید 3 :
برنامه نويسي شئگرا با C++
اسلاید 5 :
فصل اول
مفاهيم مقدماتي
اسلاید 6 :
اهداف درس
آشنایی با تحلیل شی گرا
آشنایی با برنامه نویسی و زبان های برنامه نویسی شی گرا
تسلط به زبان برنامه نویسی شی گرا
برنامه نویسی با Visual C++
کتاب برنامه نویسی با Visual C++ در 21 روز باید مطالعه شود.
انجام پروژه
اسلاید 7 :
زبانهاي رويهاي
اسلاید 8 :
معرفي
پاسكال، فورترن، C ، جزء زبانهاي رويهاي هستند.
در اين زبانها، هر دستور به كامپيوتر ميگويد چهكاري انجام دهد.
يك برنامه از چند دستور تشكيل ميشود.
مثال: كامپيوتر تعدادي عدد از كاربر بگيرد، ميانگين آنها را محاسبه و در خروجي چاپ بكند.
اسلاید 9 :
هنگامي كه برنامه بزرگ شود، ليست دستورات هم بزرگ و غيرقابل كنترل ميشود.
براي درك برنامهها توسط برنامهنويس، دستورات به واحدهاي كوچكتري به نام قطعه برنامه و يا تابع تقسيم ميشوند.
تقسيم برنامه به چند تابع و قطعه برنامه يكي از اصول اساسي برنامهنويسي ساختيافته است.
تقسيم يك برنامه به چند تابع
اسلاید 10 :
مشكلات برنامهنويسي ساختيافته
دلايل عدم موفقيت زبانهاي رويهاي:
توابع بدون هيچ قيد و شرطي به دادههاي سراسري دسترسي دارند.
توابع و دادهها – كه پايه و اساس شيوهي رويهاي هستند- مدل ضعيفي از جهان عيني را به نمايش ميگذارند.
اسلاید 11 :
دسترسي بدون قيد و شرط
در يك برنامه رويهاي مثل C دو نوع داده وجود دارد:
محلي سراسري
دادههاي محلي :
اين دادهها در داخل يك تابع پنهان هستند.
انحصاراً توسط همان تابع مورد استفاده قرار ميگيرند و از تغيير توسط توابع ديگر در امان هستند.
اسلاید 12 :
دادههاي سراسري:
ممكن است لازم باشد كه دو يا چند تابع به يك داده دسترسي داشته باشند، اين نوع دادهها بايد سراسري باشند.
هريك از توابع داخل برنامه ميتوانند به دادههاي سراسري دسترسي داشته باشند.
معمولاً در يك برنامه بزرگ چند تابع و چند دادهي سراسري وجود دارد.
اسلاید 13 :
رابطهي بين متغيرها در برنامهي رويهاي
شكل 1:
دادهي سراسري
دادهي محلي
تابع A
دسترسي فقط توسط تابع A
دادهي محلي
تابع B
دسترسي فقط توسط تابع B
دسترسي توسط هر دو تابع
اسلاید 14 :
شكل 2 : شيوهي رويهاي
داده سراسري
داده سراسري
داده سراسري
تابع
تابع
تابع
اسلاید 15 :
مشكل شيوهي رويهاي آن است كه مانند شكل2 بين توابع و دادها ارتباط مختلف و متعدد وجود دارد.
اين ارتباطها باعث ايجاد دو مشكل ميشود:
خواندن و درك برنامهها مشكل ميشود.
تعمير و نگهداري اينگونه برنامهها با مشكل مواجه ميشود.
براي تغيير يك عنصر سراسري گاهي لازم است در تمام توابع تغييراتي ايجاد كنيم.
مثال: اگر نوع دادهاي را از int به float تبديل كنيم، بايد براي جلوگيري از بروز خطا در كليه توابع نوع آن داده را به float تبديل كنيم.
اسلاید 16 :
انواع دادهاي جديد
در زبانهاي برنامه نويسي، چند نوع دادهي كتابخانه موجود است. مانند: int يا .float
گاهي لازم است دادهي مورد نياز خود را تعريف كنيم. مانند زماني كه ميخواهيم با كميتي مانند عدد مختلط كار كنيم، نوع دادههاي كتابخانهاي مؤثر نخواهند بود.
به توانايي ايجاد نوع دادههاي مورد نظر برنامه نويس قابليت توسعه نوع ميگويند. زيرا با ايجاد اين دادهها قابليتهاي زبان برنامه نويسي توسعه مييابد.
مثال : براي كار با نقاط، دو متغير x و y را در متغيري به نام point ذخيره كرده و سپس آنها را با هم جمع يا از هم تفريق كنيم.
اسلاید 17 :
روش شئ گرا
اسلاید 18 :
ايده اصلي نهفته در زبانهاي شئگرا تركيب دادهها و توابع در يك موجوديت واحد است.
در آن موجوديت، توابع عمليات مورد نظر را روي دادهها انجام ميدهند. اين موجوديت واحد شئ (Object) نام دارد.
مثال: موجوديت انساني : كارگر، كارمند، مشتري، فروشنده
دادهها و توابع در موجوديت واحد قرار دارند.
بسته بندي دادهها و پنهان سازي آن دو مفهوم كليدي زبان شئگرا هستند.
معرفي شئ
اسلاید 19 :
معرفي توابع عضو
در C++ توابع شئ توابع عضو ناميده ميشود.
تنها راه دسترسي به دادهها در برنامهها توابع عضو هستند.
برنامه نويس مستقيماً نميتواند به اين دادهها دسترسي پيدا كند.
به دليل آنكه دادهها پنهان هستند، در مقابل تغييرات احتمالي در امانند.
اسلاید 20 :
بجز توابع عضو، هيچ تابع ديگري نميتواند به دادهها دسترسي پيدا كند. اشكال زدايي و نگهداري برنامهها آسان ميشود.
احضار تابع عضو يك شئ فرستادن پيغام به آن شئ نام دارد.
هر برنامه از چند شئ تشكيل ميشود، اشياء با احضار توابع عضو با يكديگر در ارتباطند.