ארגון קוד לתוך פונקציות

Python:
ארגון קוד לתוך פונקציות

איך לעשות:

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

num = 4
square = num * num
cube = num * num * num
print(f"ריבוע: {square}, קוביה: {cube}")

num = 5
square = num * num
cube = num * num * num
print(f"ריבוע: {square}, קוביה: {cube}")

פלט:

ריבוע: 16, קוביה: 64
ריבוע: 25, קוביה: 125

עם פונקציות, זה יותר מסודר:

def square(n):
    return n * n

def cube(n):
    return n ** 3

num = 4
print(f"ריבוע: {square(num)}, קוביה: {cube(num)}")

num = 5
print(f"ריבוע: {square(num)}, קוביה: {cube(num)}")

פלט:

ריבוע: 16, קוביה: 64
ריבוע: 25, קוביה: 125

עיון נוסף

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

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

ראה גם

  • המדריכים הרשמיים של Python על פונקציות: https://docs.python.org/3/tutorial/controlflow.html#defining-functions
  • ‘קוד נקי’ מאת רוברט סי. מרטין, לעקרונות איך לכתוב פונקציות נקיות.
  • ‘ריפאקטורינג: שיפור עיצוב של קוד קיים’ מאת מרטין פאולר, אשר כולל דוגמאות לארגון קוד.