«برنامهنویسی شیگرا» (Object Oriented Programming) یک الگوی برنامهنویسی است که طراحی نرمافزار را حول دادهها یا اشیا سازماندهی میکند و به جای توابع و منطق بر مفهوم کلاسها و اشیاء تکیه میکند. برنامهنویسی شیگرا قابلیت ... ادامه
اشیاء در برنامهنویسی شیءگرا
وراثت در برنامهنویسی شیءگرا
پلیمورفیسم در شیءگرایی
کپسولهسازی
انتزاع دادهها
«برنامهنویسی شیگرا» (Object Oriented Programming) یک الگوی برنامهنویسی است که طراحی نرمافزار را حول دادهها یا اشیا سازماندهی میکند و به جای توابع و منطق بر مفهوم کلاسها و اشیاء تکیه میکند. برنامهنویسی شیگرا قابلیت استفاده مجدد کد را تضمین میکند و از افزونگی جلوگیری میکند و از این رو حتی در زمینههای خارج از مهندسی نرمافزار مانند یادگیری ماشین، هوش مصنوعی، علمداده و غیره بسیار محبوب شده است. بسیاری از زبانهای برنامه نویسی شیگرا مانند جاوا، جاوا اسکریپت، پایتون و غیره شیءگرا هستند. دوره آموزش شیءگرایی در پایتون به آموزش این الگو در زبان محبوب پایتون میپردازد. قبل از اینکه دوره آموزش شیءگرایی در پایتون معرفی شود. بهتر است که با مفهوم شیءگرایی در پایتون و جنبههای مختلف آن آشنا شویم.
شیءگرایی در پایتون یا python object oriented programming از اهمیت بسیار بالایی برخوردار است و تقریباً بدون ماهیت شیءگرایی پایتون قدرت چندانی ندارد، از این رو پلتفرم آموزشی مکتبخونه در سال 2022 درصدد آن برآمده است که دورهای به نام دوره آموزش شیءگرایی در پایتون ارائه دهد تا با تمام جزئیات و بهصورت جامع و کاربردی شیءگرایی در پایتون را آموزش دهد. دوره آموزش شیءگرایی در پایتون یکی از پیشرفتهترین دورهها برای پایتون بهحساب میآید و دانشجو پس از پایان دوره میتواند ماهیت شیءگرایی در پایتون را در پروژههای مختلفی به کار ببرد.
این دوره تمرکز بیشتری به ساختار شیء گرایی پایتون دارد، به طوری که کاربر بتواند درک بهتری از عملکرد ماژولسازی و فریمورکهای سطح بالا و یا حتی کار با کتابخانهها پیدا کند. هر چند که برنامه نویسی معمولاً به دو حالت تابع گرا و شیءگرا دستهبندی میشود ولی در بخشهایی که تعداد عملکردها نیاز به گسترش پیدا میکند و گاهی تشابه وجود دارد، وارد استفاده از مسائل شیءگرا میشود و آشنایی با قوانین و منطق شئگرایی خیلی میتواند کار برنامهنویسها را راحتتر کند، از این رو دوره آموزش شیءگرایی در پایتون ارائهشده است.
دوره آموزش شیءگرایی در پایتون برای کسانی مناسب است که تجربه کافی با پایتون در سطح تابعگرا دارند و میخواهند به سطوح بالاتری از برنامهنویسی پایتون برسند، منتهی برای انتخاب فیلد کاری و ماژولهای مرتبطی که در کار استفاده میشوند لازم است که درک درستی از شکلگیری آنها داشته باشند که در زمان استفاده حتی بدون رجوع به داکیومنتها هم بتوانند کد رو متوجه شوند. در کل بحث شیءگرایی دانشی نیست که بخواهد انتخابی باشد و باید برنامهنویسان پایتون بعد از یک تجربه کاری مفید حتماً به سراغ آن بیایند.
امروزه شیگرایی یک رویه بسیار مهم در زبان برنامه نویسی پایتون بهحساب میآید و یادگیری آن برای برنامه نویسان حرفهای از اهمیت بسیار بالایی برخوردار است، از این رو نیاز به آموزش برنامهنویسی شیءگرا در python روزبهروز بیشتر احساس میشود. دوره مذکور در قالب فیلم آموزش شیءگرایی در پایتون ضبط و ارائه شده است.
علاوه بر دوره مذکور برای آموزش شیءگرایی در پایتون، ممکن است در سطح وب منابع آموزشی بیشتری در قالبهایی مانند موارد زیر موجود باشد:
این دوره یکی از کاملترین دورهها در زبان فارسی است و بهتر است هر دورهای که استفاده میکنید بهعنوان مکمل این دوره و همزمان با آن باشد. در مکتب خونه انواع دوره آموزش پایتون به عنوان مکمل و پیش نیاز این دوره موجود است.
برنامهنویسی شی گرا (OOPs) یک الگوی برنامهنویسی است که از اشیاء و کلاسها در برنامهنویسی استفاده میکند. هدف آن پیادهسازی موجودیتهای دنیای واقعی مانند وراثت، چندشکلیها، کپسولهسازی و غیره در برنامهنویسی است. مفهوم اصلی OOP- ها این است که دادهها و توابعی را که روی آن کار میکنند بهعنوان یک واحد به هم متصل میکند تا هیچ بخش دیگری از کد نتواند به این دادهها دسترسی داشته باشد.
میتوان گفت که برنامه نویسی شیگرا روشی از برنامهنویسی کامپیوتری است که از ایده «اشیاء» برای نمایش دادهها و روشها استفاده میکند. همچنین روشی است که برای ایجاد کد مرتب و قابل استفاده مجدد به جای یک کد اضافی استفاده میشود. این برنامه به اشیاء مستقل یا چند برنامه کوچک تقسیم میشود. هر شی واحد نشان دهنده بخش متفاوتی از برنامه است که منطق و دادههای خاص خود را برای برقراری ارتباط با خود دارد.
مفاهیم اصلی برنامه نویسی پایتون شی گرا (OOPs) شامل موارد زیر است:
در دوره آموزش آموزش پایتون شی گرایی کاملا تمام این مفاهیم بهصورت عملی آموزش داده میشود و پس از پایان دوره دانشجو میتواند مفاهیم فوق را بهصورت کاربردی یاد بگیرد و آن را به کار ببرد.
«کلاس» (Class) مجموعهای از اشیا است. یک کلاس شامل نمونه اولیهای است که اشیاء از آن ساخته میشوند. این یک موجودیت منطقی است که حاوی برخی ویژگیها و روشها است. به زبان ساده میتوان گفت که کلاس مجموعهای از اشیاء است یا میتوان گفت طرحی از اشیاء است که ویژگیها و رفتار مشترک را تعریف میکند.
کلاس به طور منطقی دادهها را بهگونهای گروهبندی میکند که قابلیت استفاده مجدد کد آسان میشود. برای مثال به دفتری فکر کنید که در آن «کارمند» بهعنوان یک کلاس و تمام ویژگیهای مربوط به آن مانند نام، سن، حقوق، شماره کارمندی و غیره بهعنوان اشیاء شناخته میشوند.
چند نکته در رابطه با کلاس پایتون:
«اشیا» (Objects) نمونهای از یک کلاس هستند و موجودیتی است که حالت و رفتار دارد. به طور خلاصه، نمونهای از یک کلاس است که میتواند به دادهها دسترسی داشته باشد. به طور خاص، هر عدد صحیح یا هر رشته منفرد یک شی است. برای مثال عدد 12 یک شی است، رشته "Hello, world" یک شی است یا مثلاً یک لیست یک شی است که میتواند اشیاء دیگر را در خود جای دهد و غیره. شما همیشه از اشیاء استفاده کردهاید و حتی ممکن است متوجه آن نباشید.
یک شی شامل موارد زیر است:
برای درک حالت، رفتار و شناسه، اجازه دهید مثال کلاس کارمند دوباره تکرار شود:
«وراثت» (Polymorphism) توانایی یک کلاس برای استخراج یا به ارثبردن خواص از کلاس دیگر است. کلاسی که ویژگیها را مشتق میکند، کلاس مشتق شده یا کلاس فرزند و کلاسی که ویژگیها از آن مشتق میشوند، کلاس پایه یا کلاس والد نامیده میشوند. مزایای ارث عبارتاند از:
وراثت در برنامه نویسی قابلیت استفاده مجدد از یک کد را فراهم میکند. ما مجبور نیستیم دوباره و دوباره همان کد را بنویسیم. همچنین، این امکان را به ما میدهد تا ویژگیهای بیشتری را به یک کلاس بدون تغییر آن اضافه کنیم. ماهیت ارثبری زیر کلاسها را هم شامل میشود، به این معنی که اگر کلاس B از کلاس A دیگری ارث میبرد، آنگاه تمام زیر کلاسهای B به طور خودکار از کلاس A به ارث میبرند.
انوع وراثت در زبان برنامه نویسی پایتون شی گرا به صورت موارد زیر هستند:
«چند شکلی» (Polymorphism | پلی مورفیسم) به زبان ساده به معنای داشتن اشکال متعدد است. پلی مورفیسم در واقع یکی از روشهای OOP است که در آن یک کار میتواند به چندین روش مختلف انجام شود. به بیان ساده، این ویژگی یک شی است که به آن اجازه میدهد چندین شکل به خود بگیرد. در دوره آموزش شیءگرایی در پایتون پلی مورفیسم با ارائه مثالهای عملی آموزش داده شده است.
«کپسوله سازی» (Encapsulation) یکی از مفاهیم اساسی در برنامه نویسی شیءگرا (OOP) است. کپسوله سازی در واقع ایده بستهبندی یا کپسوله سازی دادهها و روشهایی که روی دادهها در یک واحد کار میکنند را توصیف میکند. کپسوله سازی محدودیتهایی را برای دسترسی مستقیم به متغیرها و روشها ایجاد میکند و میتواند از تغییر تصادفی دادهها جلوگیری کند. برای جلوگیری از تغییر تصادفی، متغیر یک شی فقط با روش یک شی قابل تغییر است. این نوع متغیرها بهعنوان متغیرهای خصوصی شناخته میشوند. یک کلاس نمونهای از کپسوله سازی است زیرا تمام دادههایی که توابع عضو، متغیرها و غیره هستند را کپسوله میکند.
انتزاع دادهها در برنامه نویسی شیءگرا جزئیات کد غیر ضروری را از کاربر پنهان میکند. همچنین، زمانی که نمیخواهیم بخشهای حساس پیادهسازی کد خود را ارائه دهیم، انتزاع دادهها وارد عمل میشود. انتزاع داده در پایتون را میتوان از طریق ایجاد کلاسهای انتزاعی به دست آورد. در دوره برنامه نویسی پایتون شی گرا مفهوم انتزاع با مثالهای متعددی آموزش داده شده است. در دوره آموزش فوق، مفاهیم شی گرایی در پایتون به زبان ساده را خواهید آموخت.
اطلاعات بیشتر
از مجموع 91 امتیاز
46 نظرنظرات بیشتر
در صورتی که حد نصاب قبولی در دوره را کسب و تمرینها و پروژههای الزامی را ارسال کنید، گواهینامه رسمی پایان دوره توسط مکتبخونه به اسم شما صادر شده و در اختیار شما قرار میگیرد.
قابل به اشتراک گذاشتن در
مدرس: جادی میرمیرانی
مدرس: جادی میرمیرانی
مدرس: محمدرضا کریمینژاد
مدرس: جادی میرمیرانی
علی بیگدلی فارغالتحصیل مهندسی فناوری اطلاعات و دانشآموختهی رشته هوش مصنوعی و رباتیک است. علاقه ایشان به دنیای هوش مصنوعی و ارتباطات دنیای IOT باعث شد که به روند تلفیق این دو بستر بپردازد. بهطوریکه اساس تحصیل، کار و پیشرفت وی قرار گرفت.
بیش از 5 سال سابقه برنامهنویسی و توانایی وی در حوزه شبکه و ارتباطات روند کار را برایش تسهیل کرد به شکلی که امروز بهعنوان مدیر بخش تحقیق و توسعه شرکت Mantranic در فنلاند قرار گرفته و در بسیاری از پروژهها نقش کلیدی ایفا میکند. زبانهای پایتون، C++/C و Arduino از تخصصهای وی در برنامهنویسی به شمار میآید.
ایشان از سال 96 تیمی با نام ICC-ARIA را بنیانگذاری کرد که اهدافشان تدریس تخصصهای مختلف در حوزه هوش مصنوعی و اینترنت اشیا را شامل میشود که در این حوزه طراحیهای Backend و فریمورکی چون Django نقش بسزایی را ایفا میکند. ایدهپردازی و تبدیل یک ایده به محصول و مهندسی معکوس محصولات از تواناییهای بالقوه وی به شمار میرود.
اطلاعات بیشتر
مدرس: علی بیگدلی
مدرس: علی بیگدلی
مدرس: علی بیگدلی
مدرس: علی بیگدلی