logo

שיטת פייתון פרטית

מבוא

ב-Python, שיטה פרטית היא שיטה שלא מיועדת לשימוש מחוץ למחלקה שבה היא מוגדרת. שיטות אלו מסומנות בקידומת קו תחתון כפול (__) לפני שמן, וניתן לגשת אליהן רק בתוך המחלקה שבה הן מוגדרות. במאמר זה, אנו הולכים לדון במושג של שיטות פרטיות ב-Python, היתרונות והחסרונות שלהן, וכיצד להשתמש בהן עם דוגמאות.

מהי שיטה פרטית ב-Python?

שיטה פרטית היא שיטה שלא מיועדת לשימוש מחוץ למחלקה בה היא מוגדרת. שיטות אלו משמשות ליישום פונקציונליות פנימית בתוך המחלקה. אלה לא נועדו לשמש בקוד חיצוני. ב-Python, שיטות פרטיות מסומנות בקידומת קו תחתון כפול לפני שמן.

דוגמא

 __method_name 

כיצד להגדיר שיטה פרטית ב- Python?

כאשר המתכנת רוצה להגדיר שיטה פרטית ב-Python, אז המתכנת צריך להוסיף קידומת קו תחתון כפול לפני שם השיטה. הנה דוגמא:

תוכנית 1:

 class MyClass: def __init__(self): self.__private_method() def __private_method(self): print('This is a private method.') # Instantiate, the class my_obj = MyClass() 

תְפוּקָה:

שיטת פייתון פרטית

הֶסבֵּר:

בדוגמה לעיל, הגדרנו מחלקה בשם MyClass. יש לה שיטה פרטית בשם __private_method. שיטה זו נקראת מבנאי המחלקה (__init__) באמצעות self.__private_method(). מכיוון שלשיטה יש קידומת קו תחתון כפול, היא פרטית ולא ניתן לגשת אליה מחוץ למחלקה.

תוכנית 2:

 class BankAccount: def __init__(self, account_number, balance): self.__account_number = account_number self.__balance = balance def deposit(self, amount): self.__balance += amount def withdraw(self, amount): if self.__balance >= amount: self.__balance -= amount else: print('Insufficient funds') def __display_balance(self): print('Account Balance:', self.__balance) def statement(self): print('Account Number:', self.__account_number) self.__display_balance() # create a BankAccount object my_account = BankAccount('123456789', 1000) # make some transactions my_account.deposit(500) my_account.withdraw(200) # print a statement my_account.statement() 

תְפוּקָה:

שיטת פייתון פרטית

הֶסבֵּר:

הקוד שסופק מגדיר מחלקת BankAccount עם שיטות להפקדה ומשיכת כספים, הצגת יתרת החשבון והדפסת דוח חשבון. לאחר מכן נוצר מופע של מחלקה זו, ונעשות אליו כמה עסקאות, ולאחר מכן הדפסת הצהרה.

היתרונות של שיטות פרטיות בפייתון

    כימוס:שיטות פרטיות מסייעות בהשגת אנקפסולציה. זהו עיקרון בסיסי של תכנות מונחה עצמים. על ידי הפיכת שיטות מסוימות לפרטיות, המתכנת יכול לשלוט כיצד ניתן לגשת לפונקציונליות הפנימית של המחלקה מקוד חיצוני. זה הופך את הכיתה לאבטחה יותר ומסייע במניעת שינויים לא רצויים בהתנהגות הכיתה.שימוש חוזר בקוד:ניתן להשתמש בשיטות פרטיות כדי ליישם פונקציונליות פנימית שניתן לעשות בה שימוש חוזר בתוך המחלקה. זה יכול לעזור בהפחתת כפילות הקוד ולשפר את יכולת התחזוקה של הקוד.איתור באגים קל:שיטות פרטיות נגישות רק בתוך המחלקה, מה שמקל על ניפוי באגים בקוד על ידי בידוד התנהגות המחלקה.

חסרונות של שיטות פרטיות ב-Python

    גישה מוגבלת:שיטות פרטיות נגישות רק בתוך המחלקה שבה הן מוגדרות. זה אומר שאם המתכנת צריך לגשת לפונקציונליות של שיטה פרטית מחוץ לכיתה, אז הוא צריך ליצור שיטה ציבורית שקוראת למתודה הפרטית. זה יכול להוסיף מורכבות נוספת לקוד.תחושת ביטחון כוזבת:השיטות הפרטיות של פייתון אינן פרטיות באמת. עדיין אפשר לגשת אליהם מחוץ למחלקה באמצעות התחביר _classname__methodname(). עם זאת, זה נחשב לתרגול רע ויש להימנע ממנו.מורכבות מוגברת:השימוש בשיטות פרטיות יכול להגביר את מורכבות הקוד, ולהקשות על ההבנה והתחזוקה. זה יכול להיות נכון במיוחד אם השיטות הפרטיות מתועדות בצורה גרועה.

סיכום

שיטות פרטיות ב- Python הן תכונה שימושית שיכולה לעזור להשיג אנקפסולציה ולשפר את תחזוק הקוד. אמנם יש להם כמה חסרונות, אבל היתרונות של שימוש בשיטות פרטיות ב-Python עולים על החסרונות.