حتما در مصاحبههای شغلی دیدهاید که از شما میپرسند: در پنج سال آینده خود را کجا میبینید یا نقطه ضعف شما چیست؟ برای پاسخ به این سوالات باید دقت کنید در غیر این صورت همین جواب تبدیل به یکی از نقاط ضعفتان میشود. اما سوال دیگری هم هست که اگر برای آن پاسخی درست نداشته باشید تمام اطلاعاتتان زیر سوال میرود: برنامه نویسی شی گرا چیست و اصول و مبانی آن کدامند؟
برنامه نویسی شی گرا به زبان ساده
برنامه نویسی شی گرا (OOP) زیرمجموعهای از مدلهایی است که برای تبدیل دستورات، به زبان قابل فهم برای کامپیوتر استفاده میشود. این مدلها شامل این موارد هستند:
برنامه نویسی رویهای (procedural programming)
برنامه نویسی شئ گرا (object oriented programming)
برنامه نویسی تابعی (functional programming)
در برنامه نویسی شئ گرا بیشتر به داده تأکید میشود و یک شئ (object) چیزی مانند دانشآموز، ماشین و… است که میخواهید در برنامه خود مدل کنید. در مورد مفهوم کلاس (class) و (object) میتوان گفت کلاس، نقشه یک شئ است که شناسهها و رفتارها را مشخص میکند.
چه زبانهایی شیگرا محسوب میشوند؟
سی شارپ یا C# از اصول شیگرا پیروی میکند و هر بخش رفتاری به عنوان یک شی دارد.
پی اچ پی زبانی از سوی سرور شمرده میشود که عمدتا برای توسعه وب بکار میرود. در واقع برنامهنویسی عمومی است. اما اصول PHP OOP میتواند با اضافه کردن php5 به ساخت برنامههای وب پیچیده و اپلیکیشنهای وب قابل استفاده کمک کند.
ویژوال بیسیک یا visual basic به طور کامل از قواعد شیگرا پیروی میکند مانند کپسولهسازی و چند شکل بودن. (در کپسولیشن گروهی از خواص و اعضای مرتبط به عنوان یک واحد یا یک شی رفتار میکنند)
جزوه برنامه نویسی شی گرا
همانطور که میدانید زبانهای برنامه نویسی اولیه بهصورت رویهای بودند و دلیل نامگذاری آنها این بود که در این زبانها، برنامهنویس باید مجموعه خاصی از رویهها را تعریف کند. برنامه نویسان با نوشتن رویهها بر روی کارتهای پانچ، دادهها را به رایانه منتقل میکردند. این زبان تا مدتها به خوبی کار میکرد تا جایی که هنوز برخی از آنها مورد استفاده قرار میگیرند.
زبانهای برنامه نویسی شئ گرا هنگامی وارد عرصه شدند که برنامهنویس تصمیم به انجام کاری خارج از مراحل داشت و به مشکل برمیخورد. در ادامه جزوه مختصری از مفاهیم اولیه برنامه نویسی شی گرا ذکر شدهاند اما برای آموزش برنامه نویسی کامپیوتر مقدماتی میتوانید با ۳۶۰ درجه همراه باشید.
اشیا: مجموعهای از اطلاعات هستند که به عنوان واحدی منفرد با آنها رفتار میشود.
کلاس: نوعی از اشیا مقدماتی هستند و فهرستی از خصوصیاتی دارند که با تعریف، تبدیل به شئ خواهند شد.
صفت: اشیا ترکیبی از اجزای دادهای هستند که به آنها صفت میگویند.
متد: مجموعه رفتارهای اشیا متد نامیده میشود.
مزایای برنامه نویسی شی گرا
- افزایش امنیت برنامه
- کاهش هزینه نگهداری
- قابلیت استفاده مجدد
- تحلیل سادهتر برنامه
- قابلیت سازماندهی سادهتر کدها
- قابلیت تقسیم برنامه به برنامههای کوچکتر
- عدم نیاز به نوشتن کدهای تکراری
- نزدیکتر بودن به دنیای واقعی
معایب برنامه نویسی شی گرا
برنامه نویسی شئ گرا یا OOP قطعاً معایبی دارد اما این معایب بسیار سلیقهای هستند و شاید از نظر فرد دیگری ایراد محسوب نشوند. بهعنوان مثال چند نمونه ایراداتی که برنامه نویسان از آن گرفتهاند در ادامه آمده است:
- برای نوشتن برنامه، راهحلهای شما برای مشکلات را محدود میکند.
- به آسانی تغییر کردن یک کلاس پایه و زیرمجموعه آن در سلسله مراتب مشکل ایجاد میکند.
برنامه نویسی شی گرا در C++
سی پلاس پلاس در سال ۱۹۸۵ بهعنوان توسعهای بر زبان C به وجود آمد. C++ یک زبان برنامه نویسی چند الگویی است و از شبکههای مختلف برنامهنویسی پشتیبانی میکند. کلاس (class) در C++ به معنا یک نقشه است که اشیا از روی آن ساخته میشود؛ برای استفاده از اعضای کلاس به اشیا نیاز دارید.
امروزه این زبان برنامه نویسی مورد پسند برنامهنویسان سیستمعامل و نرمافزارهای کاربردی است و از کاربردهای آن میتوان به طراحی سیستمعامل، تولید نرمافزار، تولید برنامههای موبایل و تبلت، اینترنت اشیا، استفاده در کتابخانهها و… اشاره کرد.
برنامه نویسی شیگرا برای اپلیکیشنهای اندروید
صرفنظر از تمام ویژگیهایی که توابع شیگرا در اختیارتان قرار میدهند، بهترین جنبه آن اضافه کردن کدهای بیشتر بدون دست زدن به منطق داخلی است. برای توضیح و آشنایی بیشتر با این مفهوم میتوان گفت که در تعریف زبان برنامهنویسی معمولا لیستی از دستورالعملها و دستورات را خواهید دید که از بالا به پایین نوشته میشوند. اما در این نوع شما میتوانید آن را توسعه دهید و هر بخش را پس از کد زدن اضافه کنید.
جاوا اسکریپت برنامهای است که برای نوشتن برنامههای اندروید به کار میرود و زبانی است با متد و توابع شیگرا. همه مقدمات و اصول و روش کار دادهها از طریق یک شی اتفاق میافتد. که برای تعریف آن از یک کلاس استفاده میشود.
جاوا اسکریپت برنامهای است که برای نوشتن برنامههای اندروید به کار میرود و زبانی است با متد و توابع شیگرا. همه مقدمات و اصول و روش کار دادهها از طریق یک شی اتفاق میافتند که برای تعریف آن از یک کلاس استفاده میشود.
تفاوت برنامه نویسی شی گرا و ساختیافته
در برنامه نویسی ساختیافته برنامهنویس لازم است قدمبهقدم روالهایی که لازم است را مشخص کند. در این روش یک برنامه با شکسته شدن به ریز برنامههای کوچکتر سعی میکند عملکرد مدنظر را پیاده کند.
از تفاوتهای برنامه ساختیافته با برنامه شئ گرا میتوان به موارد زیر اشاره کرد:
- برنامههای شئگرا روی داده اما ساختیافته بر فرآیند تمرکز دارند.
- برنامه شئگرا رویکرد پایین به بالا و ساختیافته رویکرد بالا به پایین را دنبال میکند.
- برنامه شئگرا به علت داشتن گزینه پنهان کردن داده نسبت به ساختیافته امنتر است.
- برنامهنویسی شیگرا قابلیت حل هر نوع مسئله پیچیدهای را دارد اما ساختیافته به ندرت دارای این قابلیت است.
دورههایی که میتوانند به یادگیری شما کمک کنند:
نرم افزار لاراول فارسی Laravel
زبان طراحی وب HTML اچ تی ام ال
دنبال کردن 360 درجه در اینستاگرام