You can edit almost every page by Creating an account. Otherwise, see the FAQ.

برنامه‌نویسی شیءگرا

از EverybodyWiki Bios & Wiki
پرش به:ناوبری، جستجو

برنامه‌نویسی شیءگرا[۱] (به انگلیسی: Object-Oriented Programming) (به‌اختصار: OOP) یک شیوه برنامه‌نویسی است، که ساختار یا بلوک اصلی اجزای آن، شی‌ءها می‌باشند. در این شیوه برنامه‌نویسی، برنامه به شیء گرایش پیدا می‌کند، به این معنا که داده‌ها و توابعی که بر روی این داده‌ها عمل می‌کنند، تا حد امکان در قالبی به نام شیء و در کنار یکدیگر قرار گرفته، جمع‌بندی شده و یک واحد (یا یک شیء) را تشکیل می‌دهند و نسبت به محیط بیرونِ خود، کپسوله می‌شوند. از این طریق، توابع خارج از آن شیء، امکان ایجاد تغییر در داده‌های درون شیء را نخواهند داشت.[۲]

شکل‌گیری[ویرایش]

فلسفه‌ای که منجر به شکل‌گیری زبان‌های شی‌گرا شد، عبارت بود از این واقعیت که نحوه عملکرد مغز و شیوهٔ دریافت اطلاعات از محیط پیرامون و پردازش آن اطلاعات (اندیشیدن)، شیوه‌ای شی‌گراست، از همین روی می‌بایستی زبانی تعریف می‌شد که همین شیوه را مبنای کار خود قرار داده و بازتولید می‌کرد؛ و دقیقاً به همان شکل که اشیا در جهان خارج، دارای هویت و کارکرد مشخص و یگانه برای خود هستند و در عین حال با دیگر اشیا در ارتباطی تنگاتنگ و مستقیم‌اند، در زبان‌های برنامه‌نویسی نیز می‌بایستی این اصول کلی برقرار می‌شد.[۳] تا به این شکل، برنامه‌نویس بتواند با بهره‌گیری از زبانی که به روش اندیشیدنش، نزدیکی بیشتری دارد، شی‌های مختلفی را تعریف نموده، این شی‌ها را در ارتباط با یکدیگر قرار داده و از شی‌های پویای تولید شده برای حل مسئلۀ پیش روی استفاده نماید. امروزه اکثر زبان‌های دستوری برنامه‌نویسی از فنون شی‌گرایی پشتیبانی می‌کنند.

زبان‌هایی مانند جاوا، سی پلاس پلاس(++c)، سی شارپ، دلفی و پایتون از جمله زبان‌های شی‌گرا هستند. حتی بسیاری از زبان‌های روال‌گونه که ساختار برنامه‌ها در آن‌ها بلوک‌هایی با نام پروسیجر است، امروزه از فنون شی‌گرایی نیز پشتیبانی می‌کنند. زبان‌های سی++[۴] و پی‌اچ‌پی از این جمله هستند. هر شیء یک سری خصوصیت و قابلیت دارد، که اصطلاحاً Properties و Operation خوانده می‌شوند. در این پارادایم برنامه‌نویسی، دید برنامه‌نویس به سیستم، دید شخصی است، که سعی می‌نماید با پیدا کردن اشیاء مختلف در سیستم و برقراری ارتباط بین آن‌ها، سیستم را تولید نماید.

مقایسه[ویرایش]

لازم است ذکر شود که تکنیک برنامه‌نویسی شی‌گرا به مراتب کارا و پیچیده‌تر از سبک برنامه‌نویسی مبتنی بر تابع است. دلایل برتری برنامه‌نویسی شی‌گرا:

  1. قابلیت سازمان دهی بهینه‌تر کدها
  2. قابلیت تقسیم برنامه به برنامه‌های کوچک‌تر اما مستقل. برنامهٔ اصلی به صورت یک EXE در می‌آید که دیگر قسمت‌های مستقل برنامه را فراخوانی می‌کند.
  3. عدم نیاز به نوشتن کدهای تکراری و قابلیت‌هایی که قبلاً پیاده‌سازی شده‌اند و صرف جویی در استفاده از منابع.

با این وجود، بسیاری از توسعه دهندگان سعی می‌کنند در پروژه‌های کوچک و ساده خود از سبک برنامه‌نویسی مبتنی بر تابع بهره بگیرند.

کلاس[ویرایش]

کلاس نوع خاصی از آرایه است که امکان ذخیره و جمع‌بندی تعداد زیادی المان را (که شامل داده‌ها و توابع هستند) برای یک شی جدید فراهم آورده و تحت یک نام مشترک ذخیره می‌کند. اما بر خلاف آرایه که تنها قادر به ذخیرهٔ داده‌هایی هم جنس است، کلاس می‌تواند داده‌هایی از جنس‌های مختلف را ذخیره نماید.[۵] به‌طور مثال در نظر بگیرید که می‌خواهیم تاریخ ۱۳ نوامبر ۲۰۰۶ را که تشکیل شده از روز، ماه و سال است مورد استفاده قرار دهیم. برای این منظور سه نوع متغیر متفاوت مورد نیاز است:

int day;
String month;
int year;

حال در نظر بگیرید که نه فقط یک تاریخ، بلکه n تاریخ متفاوت مورد نیاز است. این بدان معنی ست که می‌بایستی به تعداد n بار، سه متغیر بالا، جداگانه تعریف شوند و تعریفِ تک تک و پیاپی متغیرها، نه فقط از لحاظ زمانی بسیار وقت گیر می‌نماید، بلکه از لحاظ میزان کد مورد نیاز نیز بسیار غیر عملی ست، چرا که هر بار می‌بایستی نام جدیدی برای متغیرها در نظر گرفته شود (دو متغیر متفاوت نمی‌توانند هم نام باشند).

اینجاست که کلاس‌ها به خوبی وارد عمل می‌شوند. با استفاده از کلاس‌ها می‌توان متغیرهای متعدد را زیر عنوان یک جنسیت مشترک جدید (به‌طور مثال هر سه را در یک کلاس با نام Date)، تعریف و جمع‌بندی نمود؛ و بعد از آن، بدون نیاز به تعریف مجدد روز، ماه و سال، از کلاس Date به میزان مورد نیاز استفاده کرد:[۵]

class Date{
int day;
String month;
int year;
}

وراثت[ویرایش]

وراثت یا ارث بری (Inheritance) از مفاهیم اساسی برنامه‌نویسی شی گرا است. هر شیء یک نمونه از یک کلاس است و هر کلاس می‌تواند از کلاس یا کلاسهای دیگری مشتق شده باشد (خواص متدها یا رویدادهای کلاس‌های دیگر را به ارث ببرد). در یک مثال ساده می‌توان اتومبیلی را در نظر گرفت که برای جلوگیری از بازنویسی خواص عمومی اتومبیل شامل: چهار چرخ، متدهای حرکت چرخ، متد چرخاندن فرمان، بدنه، در و غیره، می‌توان یک کلاس پایه از اتومبیل ایجاد کرد سپس مثلاً برای اتومبیل سیتروئن مدل C۵ یک کلاس جدید ایجاد کرده که خواص، متدها و رویدادهای عمومی اتومبیل را داشته باشد و فقط برای خواص، متدها و رویدادهای جدید این اتومبیل کد نوشته شود. این ویژگی باعث صرفه‌جویی در نوشتن کد و تا حدودی تضمین صحت کد موجود می‌شود. به عنوان مثال اگر کلاس پایه مشکلی داشته باشد فقط کافی است کلاس پایه تغییر داده شود و در تمامی کلاس‌هایی که از این کلاس پایه ویژگی‌ای را به ارث برده‌اند این تغییر اعمال خواهد شد.

مخفی‌سازی[ویرایش]

کپسوله‌سازی، مخفی‌سازی (Encapsulation)، یا لفافه‌بندی، به این مفهوم اشاره دارد که باید بعضی خصوصیات یا رفتارهای شیء را از دید دیگران پنهان کرد. فرض کنید شما به عنوان یک راننده می‌خواهید اتومبیل شخصی‌تان را روشن کنید و به محل کارتان عزیمت کنید؛ سوییچ را برمی‌دارید، استارت می‌زنید و با فشار آوردن به پدال‌های گاز و ترمز و چرخش فرمان و … به محل کارتان خواهید رسید. در طول این مسیر در اتومبیل شما به عنوان یک شیء اعمال مختلفی در حال انجام بود. مثلاً لنت ترمز به دیسک چرخ برخورد می‌کرد و باعث کم شدن سرعت می‌شد یا شمع‌ها شروع به جرقه زدن در زمانی بخصوصی می‌کردند. حال فرض کنید که عمل مخفی‌سازی وجود نداشت و شما مجبور بودید که جرقه زدن شمع‌ها را کنترل می‌کردید و به سیستم سوخت‌رسانی در موقع لزوم دستور می‌دادید که سوخت را به داخل سیلندرها ارسال کند و غیره؛ یا هیچ‌گاه به مقصد نمی‌رسیدید، یا سالم نمی‌رسیدید. عمل مخفی‌سازی باعث می‌شود که اشیاء بدون آنکه از چگونگی کارکرد یکدیگر اطلاع داشته باشند با هم کار کنند.

چندشکلی[ویرایش]

چند ریختی، کمیتی است که به یک رابط امکان می‌دهد تا از عملیات یکسانی در قالب یک کلاس عمومی استفاده کند. عمل خاص کلاس را ذات حقیقی شیء تعیین می‌کند. مثال ساده‌ای از چند ریختی، فرمان اتومبیل است. عمل فرمان اتومبیل برای تمام اتومبیل‌ها بدون توجه به ساز و کاری که دارند، یکسان است. فرمان برای اتومبیل که به‌طور مکانیکی کار می‌کند یا با نیروی برق یا هر چیز دیگری، عمل یکسانی را انجام می‌دهد؛ بنابراین، پس از اینکه شما عملکرد فرمان را یادگرفتید، می‌توانید فرمان هر اتومبیلی را کنترل کنید. همین هدف در برنامه‌نویسی نیز اعمال می‌شود.

به‌طور کلی، مفهوم چند ریختی، اغلب با عبارت «یک رابط، چندین روش» بیان می‌شود. این بدین معنی است که امکان طراحی رابط عمومی برای گروهی از عملیات مرتبط وجود دارد. چند ریختی یا چندشکلی (Polymorphism) به این معنا است که اشیاء می‌توانند در موقعیت‌های مختلف، رفتارهای متفاوتی بروز دهند. مثلاً یک تابع در صورتی که بر روی نمونه‌ای از کلاس آ فراخوانی شود، رفتار ب را بروز دهد در حالی که اگر بر روی کلاس ج (که فرزند کلاس آ است) فراخوانی شود، رفتاری متفاوت انجام دهد.

انتزاع[ویرایش]

انتزاع داده یا پنهان کردن اطلاعات، Abstraction نامیده می‌شود. به عبارت دیگر فرآیندی برای انتزاع یا پنهان‌سازی عملکردها می‌باشد و فقط امکان استفاده از آن‌ها را برای کاربران یا برنامه نویسان فراهم می‌کند. برای مثال متد Console.WriteLine. هیچ کس نمی‌داند چه عملیاتی در تابع اتفاق می‌افتد و ما فقط با صدا زدن و ارسال پارامتر از آن استفاده می‌کنیم.

خرید اقساطی خودرو از تهران خودرو

خرید اقساطی تارا دنده ای

خرید اقساطی تارا اتومات

خرید اقساطی رانا پلاس

خرید اقساطی ساینا اس

خرید اقساطی آریزو 5

خرید اقساطی آریزو 6


خرید اقساطی دنا پلاس

برای خرید اقساطی دنا پلاس صفر یا دنا کارکرده چه کار کنیم ؟

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

اگر قصد خرید اقساطی دنای کارکرده را دارید میتوانید در نمایشگاه آنلاین سایت تهران خودرو / ویا پنل تهران خودرو در سایت دیوار / ویا پنل تهران در سایت باما / ماشین مد نظرتان را انتخاب کنید و برای بازدید و اطلاع از شرایط با کارشناسان تهران خودرو تماس بگیرید.

برای خرید اقساطی دنا اتومات کارکرده  یا خرید اقساطی دنا پلاس دنده ای کارکرده یا خرید اقساطی دنای معمولی کارکرده  مدل 1396 به بالا از سایت دیوار میتوانید با همراهی کارشناسان خرید تهران خودرو خودروی مورد نظرتون رو پیدا کنید ما ماشینو نقدی از مالک میخریم و برای شما با تسهیلات لیزینگ برای شما اقساط میبندیم. تا شما بتونید طی اقساط 1-5 ساله باز پرداخت نمایید.

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

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


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


بیشتر بدانید : خرید اقساطی دنا بدون پیش پرداخت


بررسی مشخصات انواع دنا پلاس : آپشن ها و خصوصیات دنا


قیمت روز دنا پلاس دنده ای

قیمت روز دنا پلاس ۶ سرعته

قیمت روز دنا پلاس اتومات  


معاوضه خودروی کارکرده با دناپلاس

معاوضه ی دنا پلاس با خودروی دلخواه

خرید اقساطی خودروی صفر و کاکرده به دلخواه شما

برای خرید اقساطی خودرو یی که مد نظر خودمان است چه کار کنیم ؟

اگر شما خودرویی را پسندیده اید اما برای خرید نقدی آن پولتان کم است میتوانید با کمک تهران خودرو به خاسته تان برسید...

هم برای  خرید اقساطی خودرو ی صفر و هم برای خرید اقساطی خودرو کارکرده تهران خودرو همراه شماست. چون ما همواره سعی میکنیم که با کمترین پبش پرداخت وکم ترین سود ممکن و از طریق لیزینگ های مجاز بانکی (تحت نظارت بانک مرکزی) خرید خودرو را برای شما میسر کنیم.

شما بغیر از خودروهایی که ما در نمایشگاه آنلاین سایت تهران خودرو / ویا پنل تهران خودرو در سایت دیوار / ویا پنل تهران در سایت باما / داریم . میتوانید ماشین مد نظر خودتان را انتخاب کنید و مالک خودرو را برای تسویه حساب نزد ما بیاورید تا ظرف یک ساعت به خودرویی که میخواید رو براتون خریداری کنیم و یا اینکه با همراهی کارشناسان تهران خودرو به نشانی فروشنده بریم و ماشینشو برای شما بخریم ...

برای خرید اقساطی خودرو های خارجی و ایرانی کارکرده مدل 1396 (2016) به بالا از سایت دیوار میتوانید با همراهی کارشناسان خرید تهران خودرو خودروی مورد نظرتون رو پیدا کنید ما ماشینو نقدی از مالک میخریم و برای شما با تسهیلات لیزینگ برای شما اقساط میبندیم. تا شما بتونید طی اقساط 1-5 ساله باز پرداخت نمایید.

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

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


بیشتر بخوانید : اطلاع از قیمت دقیق خودرو

بیشتر بدانید : باید ها و نباید های خرید اقساطی

بیشتر بدانید : دریافت وام بانکی با سند خودرو

بیشتر بدانید : خرید اقساطی خودرو بدون پیش پرداخت

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

بیشتر بشناسید : تهران خودرو با بیش از 15 سال سابقه درخشان

تماشا کنید : اینستاگرام تهران خودرو

نکات مهم خرید خودروی صفر


فروش فوری خودرو

اگر قصد فروش فوری خودرو  تون رو دارید در تهران خودرو میتونید یکروزه به خواستتون برسید.

گاهی برای از دست ندادن فرصت های مالی و یا برای رفع مسائل ضروری مالی لازم است که به صورت فوری ماشین تون رو بفرشید و به پول تبدیل کنیم بنابرین ساده ترین راه مراجعه به تهران خودرو است تا ظرف یکساعت ماشین تون رو کارشناسی / قیمت گذاری و خریداری بشه.

مالکین خودرو همچنین میتوانند با ثبت آگهی خودرو در وبسایت تهران خودرو به نسبت به فروش فوری خودروی خود اقدام نمایند. خودروی خود را در این نمایشگاه آنلاین به صورت رایگان آگهی نمایید. شما میتوانید با بررسی قیمت های خودرو های کارکرده در وبسایت تهران خودرو از قیمت خودروی خودی آگاه شوید همچنین با استفاده از مکانیزم قیمت گذاری / قیمت واقعی ماشین خودتون رو برآورد کنید.

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

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

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

درخواست خرید و فروش سفارشی خودرو نیز برای مشتریان تهران خودرو امکان پذیر میباشد و شما میتوانید با هماهنگی با کارشناسان ما بدون پاسخگویی به تلفن و تنها با وارد کردن مدل، کارکرد، رنگ و دیگر مشخصات خودرویتان و یا همین امر اقدام به فروش آن بدون پرداخت هیچ هزینه ای از طریق تیم ما نمایید.


معاوضه خودرو – طرح کلید به کلید تهران خودرو

معاوضه خودرو در کنار مجموعه ی تهران خودرو به راحتی امکان پذیر میباشد و شما میتوانید ماشینتون رو از طریق معاوضه با ماشین صفر  یا با معاوضه یا ماشین کاکرده ارتقا بدید.

در طرح معاوضه ایران خودرو، طرح معاوضه سایپا، طرح معاوضه بهمن موتور و طرح معاوضه کرمان موتور ثبت نام کنید. معاوضه اقساطی به شما این امکان را میدهد که بتوانید در این شرایط اقتصادی نسبت به ارتقا و معاوضه خودروی خودتون اقدام نمایید.

معاوضه خودرو کارکرده با خودروی صفر به صورت نقدی و اقساطی به صورت کلید به کلید با تهرا ن خودرو

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


قولنامه آنلاین خودرو

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

سایت تهران خودرو برای اولین بار در ایران اقدام به ساخت قولنامه خودرو آنلاین و به صورت کاملا رایگان نموده است .این امکان رو فراهم نموده ، طرفین معامله موارد قولنامه را کامل کرده و فرم قانونی قولنامه خودرو رادریافت و یا جهت پرینت ذخیره نمایند


بیشتر بدانید : نکات قابل ذکر در ایجاد قولنامه که ضروری هست مطالعه گردد


تماشا کنید : ویدئوی اموزشی قولنامه آنلاین

اجاره خودرو

اجاره خودرو آسان در تیم تهران خودرو امکان پذیر میباشد و شما میتوانید نسبت به اجاره خودرو های کره ای یا اجاره خودرو های خارجی دیگر اقدام نمایید.

اجاره خودرو در تهران و رنت خودرو بدون راننده میتواند مد نظر بسیاری از مشتریان باشد که نیاز دارند خودرویی را به صورت روزانه و یا ماهانه  اجاره نمایند.

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



مثال کاربردی[ویرایش]

در اطراف ما اشیاء زیادی وجود دارد و می‌توان تمام مفاهیم موجود در طبیعت را با اشیاء تقلیل داد. مثلاً یک ماشین باربری. این ماشین یک سری خصوصیات دارد: چهار چرخ، یک پدال ترمز، یک پدال گاز، یک فرمان و یک محل بزرگ برای قرار دادن اشیاء در آن و… این ماشین در صورتی که ما پدال گاز آن را فشار دهیم، حرکت می‌کند. در صورتی که فرمان آن را بچرخانیم تغییر مسیر می‌دهد. پس این شیء علاوه بر یک سری خصوصیات، یک سری رفتار مشخص هم به ما نشان می‌دهد؛ ولی فقط این یک ماشین نیست که این کار را انجام می‌دهد. تمامی ماشین‌ها این کارها را انجام می‌دهند. پس می‌توانیم این ماشین را 'تعریف' کنیم و بگوییم: ماشین باربری وسیله‌ای است که چهار چرخ، یک گاز، یک ترمز، یک فرمان و یک محل برای حمل بار دارد و اگر پدال گاز آن فشار داده شود حرکت می‌کند. این تعریف این ماشین است ولی خود آن نیست. هر زمانی چنین ماشینی بخواهیم به کارخانه تولید آن می‌رویم و از فروشندگان می‌خواهیم تا با توجه به این تعریف یک ماشین به ما بدهند. مفاهیم فوق در زبان‌های برنامه‌نویسی شیءگرا گنجانده شده‌اند. در این زبان‌ها، اشیاء زیادی از پیش وجود دارند که برنامه‌نویسان می‌توانند از آن‌ها استفاده کنند.

ارتباط اشیاء[ویرایش]

مجدداً به مثال ماشین باربری بر می‌گردیم و این بار، یک ماشین سواری را تعریف می‌کنیم. ماشین سواری شیئی است که چهار چرخ، یک ترمز، یک پدال گاز و یک صندوق عقب دارد. این تعریف به تعریف ماشین باربری بسیار شبیه‌است. به عبارت دیگر ما به یک تعریف جدید می‌رسیم: خودرو. خودرو وسیله‌ای است که چهار چرخ، یک ترمز، یک پدال گاز دارد. پس از این به بعد تعریف ماشین باربری و ماشین سواری خیلی ساده‌تر می‌شود. ماشین باربری، خودرویی است که محلی برای قرار دادن بار داشته باشد و ماشین سواری، خودرویی است که صندوق عقب داشته باشد.

  • اگر کسی به در کارخانه مراجعه کند و بگوید که «خودرو» می‌خواهد، چیزی دریافت نمی‌کند. خودرو یک تعریف انتزاعی است، برای تعریف خودرو شیء وجود ندارد؛ پس مشتری تنها می‌تواند خودرو باربری یا خودرو سواری بخواهد.
  • کارواش را در نظر می‌گیریم. این کارواش خودرو را تمیز می‌کند و دیگر به‌طور جزئی عنوان نمی‌کند که کدام نوع خودرو را تمیز می‌کند. به عبارت دیگر نوع خودرو برای کارواش مهم نیست.
  • وقتی شخصی قصد اجاره خودرویی دارد، و می‌خواهد جنسی را حمل کند در هنگام تماس با متصدی کرایه ماشین می‌گوید: «اگر خودرو شما از نوع باربری است، برای من ارسال کنید»، ولی اگر قصد جابجا شدن را دارد می‌گوید: «برای من یک ماشین سواری بفرستید.»

در زبان‌های برنامه‌نویسی شیءگرا نیز اشیاء مختلفی وجود دارند که تعریف آن‌ها تکمیل‌کننده یکدیگر است، به عبارت دیگر اشیا از یکدیگر ارث بری می‌کنند. برخی از تعاریف کاملاً عام است و نمی‌توان از آن‌ها نمونه شیئی ساخت و تنها تعریف هستند. به این تعاریف Interface گفته می‌شود.

مدیریت پیچیدگی[ویرایش]

اعمال شیوه‌های مدیریتی با محوریت اشیاء در مطالعه، طراحی، ایجاد، و اجراء پروژه‌های مهندسی نرم‌افزار و مهندسی دانش.

جستارهای وابسته[ویرایش]

منابع[ویرایش]

  1. «برنامه‌نویسی شیءگرا» [رایانه و فنّاوری اطلاعات] هم‌ارزِ «OO programming»؛ منبع: گروه واژه‌گزینی. جواد میرشکاری، ویراستار. دفتر پنجم. فرهنگ واژه‌های مصوب فرهنگستان. تهران: انتشارات فرهنگستان زبان و ادب فارسی. شابک ۹۷۸-۹۶۴-۷۵۳۱-۷۶-۴ (ذیل سرواژهٔ برنامه‌نویسی شیءگرا)صفحه پودمان:Citation/CS1/fa/styles.css محتوایی ندارد.
  2. http://de.wikipedia.org/wiki/Objektorientierte_Programmierung
  3. Christian Ullenboom, Java ist auch eine Insel, 10. Auflage, ISBN 3-8362-1802-X
  4. بابک بشری راد (۱۳۹۴). برنامه‌سازی پیشرفته با ++C. تهران: ناقوس. شابک ۹۷۸-۹۶۴-۳۷۷-۷۴۶-۳.صفحه پودمان:Citation/CS1/fa/styles.css محتوایی ندارد.
  5. ۵٫۰ ۵٫۱ Prof. Hanspeter Mössenböck, Sprechen Sie Java?, 3.Auflage, ISBN 3-89864-362-X

الگو:یوام‌ال



Read or create/edit this page in another language[ویرایش]