JavaScript:
סידור קוד לתוך פונקציות
איך לעשות:
// הגדרת פונקציה לחישוב שטח מלבן
function calculateArea(width, height) {
return width * height;
}
// קריאה לפונקציה והדפסת התוצאה
let area = calculateArea(5, 3);
console.log(area); // פלט: 15
// קבץ פונקציות קשורות יחד
function greet(name) {
console.log(`שלום, ${name}!`);
}
function farewell(name) {
console.log(`להתראות, ${name}!`);
}
greet('Alice'); // פלט: שלום, Alice!
farewell('Bob'); // פלט: להתראות, Bob!
צלילה עמוקה
באופן היסטורי, שפות תכנות אימפרטיביות כמו גרסאות קדומות של BASIC או Assembly חסרות את האבסטרקציה שפונקציות מספקות. לאורך הזמן, המושג של קוד מודולרי בשפות כמו C הציג את הרעיון שפירוק הקוד ליחידות (פונקציות או פרוצדורות) מוביל לארגון טוב יותר ולוגיקה ברורה יותר.
ב-JavaScript, מעבר לפונקציות רגילות, יש לנו פונקציות חץ מאז ES6 (2015) שמספקות תחביר עילי יותר ומתאימות לפונקציות שאינן שיטות.
אלטרנטיבות ושיפורים לארגון קוד ב-JavaScript כוללים גישות מונחות אובייקטים באמצעות מחלקות, או פרדיגמות תכנות פונקציונלית שמטפלות בפונקציות כנתינות מדרגה ראשונה.
במימוש, פונקציות JavaScript תומכות בקלוז’רים (closures), מספקות דרך לשמור גישה לסביבת הפונקציה אחרי הרצה, שזה עוצמתי לאינקפסולציה ויצירת פונקציות פקטוריה, בין היתר.
ראה גם
- MDN Web Docs על פונקציות: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Functions
- דפוסי עיצוב ב-JavaScript: https://addyosmani.com/resources/essentialjsdesignpatterns/book/
- קוד נקי ב-JavaScript: https://github.com/ryanmcdermott/clean-code-javascript