תכנות מונחה-אירועים

מתוך ויקיפדיה, האנציקלופדיה החופשית
קפיצה אל: ניווט, חיפוש

בהנדסת תוכנה, תכנות מונחה אירועים (באנגלית: Event-driven programming) הוא תפיסה בתכנות. הרעיון הוא שבתוך תוכנית המחשב קיימים חלקים (ערוכים כרצפי פעולות), הממתינים לקבלת אות. האות נקרא "מאורע" (event) והוא מתקבל כאשר מתרחש אירוע מסוים במערכת, אליו קשוב היישום.

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

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

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

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

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

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

סביבות תכנות[עריכת קוד מקור | עריכה]

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

ראו גם[עריכת קוד מקור | עריכה]

Crystal kpackage.png ערך זה הוא קצרמר בנושא תוכנה. אתם מוזמנים לתרום לוויקיפדיה ולהרחיב אותו.