Programming? – Telegram
Programming?
11.9K subscribers
373 photos
645 videos
978 files
511 links
🏅Channel privileges

🎗Ninth year of operation
🎗Completely specialized members
🎗Transmitter in channel automation
🎗, ...

🎯 second channel Programming books 👇
@topbookit

🎯 third channel laptop👇
@sysline


👨🏻‍💻Admin channels : @coderme
Download Telegram
من نمیدونم شما چه برنامه ریزی برای آینده ی برنامه نویسیتون دارید، ولی اگر قصد این رو دارید که به یه زبان تابعی مهاجرت کنید، بهتره که توابع بازگشتی رو تو یه زبان قابل فهم و ساده مثل پایتون تمرین کنید.

در جلسه ی بعد، بعد از چند مثال کاربردی، به سراغ تعریف کلاس ها میریم، و از اینجا به بعد دیگه قراره شئ بسازیم، و بقیه ی مباحث رو در کلاس ها تمرین میکنیم و یاد میگیریم.
👍1
خوب در این جلسه قصد داریم به ادامه مباحث شی گرایی بپردازیم و به احتمال زیاد مبحث شی گرایی رو تموم کنیم
مبحث کلاس های abstract :
ممکن است شما بخواهید کلاسی تعریف کنید که فقط و فقط از این کلاس جهت ارث بردن استفاده کنید و هیچ منظور دیگری از تعریف این کلاس نداشته باشید در این گونه مواقع می توانید کلاس رو به صورت abstract تعریف نمایید کلاس های های abstract فقط و فقط برای ارث بردن و همچنین تقویت مبحث کپسوله سازی تعریف می شوند از کلاس های abstract نمی توان شی ای ساخت و یا ازشون اجرایی گرفت کلاس های abstract تمام ویژگی های یه کلاس عادی رو به جز ایجاد شی از کلاس رو دارند و برای کپسوله سازی که قبلا در بخش متدها این مبحث رو توضیح دادیم بهترین گزینه هستن
در تصویر بالا ما کلاس car رو که قبلا تعریف کرده بودیم با اضافه کردن کلمه abstract به این نوع کلاس تبدیل کردیم که فقط جهت ارث بردن تعریف شده و دیگر نمی توان ازش شی ای ساخت
در مورد مبحث کپسوله سازی نیز عرض کنم که این مبحث رو در قسمت آموزش متد ها که حتما مطالعه کرده اید کامل توضیح دادم که بهترین موقعیت برای استفاده از کپسوله سازی در کلاس های abstract هست
مبحث interface در جاوا :
خوب رابط ها یا interface بسیار شبیه به کلاس هایی با تعریف abstract هستن ولی این اشتباه رو نکنید رابط ها کلاس نیستند چرا که ما در کلاس ضمن اینکه اجزای کلاس مثل متدها و اجزای دیگر و تعریف می کنیم پیاده سازی اجزا رو هم انجام میدیم ولی در رابط ها فقط اجزا رو تعریف می کنیم به صورت استاتیک و فینال یا ثابت همون
رابط ها جهت ارث بردن ازشون ایجاد می شوند در حقیقت رابط ها خودشون abstract هستند به طور پیش فرض ینی فقط برای ارث بردن ازشون ایجاد می شوند هر کلاس می تواند فقط از یک کلاس ارث برید داشته باشد در صورتی که هر کلاس می تواند از چندین رابط ارث ببرد همچنین رابط ها هم می تواندد از همدیگر ارث بری داشته باشند
در تصویر بالا ما یه رابط ایجاد کردیم برای ساخت interface شما می تونید روی project کلیک راست کرده و به جای class اینبار interface رو انتخاب کرده و یک نام که اول حرفش بزرگ باشد به رابط بدید و ok کنید
خوب در این تصویر ما اومدیم دو تا متد فقط در رابطمون تعریف کردیم اما برای ارث بردن یک کلاس از یک رابط باید از کلمه کلیدی implements استفاده کرد
خوب اگر در تصویر بالا دقت کنید ما در کلاس car از رابط samface توسط کلمه کلیدی implements ارث بردی و متدهای رابط رو داخل کلاس car پیاده سازی کردیم
همانطور که قبلا گفتیم رابط ها هم می توانند از یکدیگر ارث ببرند که برای ارث بری از همدیگر مثل کلاس ها از کلمه کلیدی extends استفاده می کنند
سلام خدمت همه ی علاقه مندان به پایتون.

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

function()
simple_function()