תכנות מונחה אירועים (Event Driven)

סגור באמצעות טופס זה תוכלו לספר ולהמליץ לחבריכם..
שם השולח:
כתובת דוא"ל של השולח:
שם המקבל:
שלח לכתובת דוא"ל:
הוסף הערה:
בתוכניות מסוג Console Application הקוד מתבצע Top Down. בתוכניות Console Application התוכנית היא זו שיוזמת את הפנייה למערכת ההפעלה' האוריינטציה הגראפית של אפליקציות מכתיבה את הצורך במודל שונה. מודל בו מערכת ההפעלה היא זו שיוזמת את האינטראקציה עם התוכנית.

 

מאת: ארז קלר
 
תכנות מונחה אירועים (Event Driven)
 
מודל Top-Down
בתוכניות מסוג Console Application הקוד מתבצע Top Down.
בתוכניות Console Application התוכנית היא זו שיוזמת את הפנייה למערכת ההפעלה'
בעיקר באמצעות פקודות קלט/פלט.
המערכת הגראפית של אפליקציות מכתיבות מודל שונה.
 מודל Top-Down
מודל מונחה אירועים
האוריינטציה הגראפית של אפליקציות מכתיבה את הצורך במודל שונה.
מודל בו מערכת ההפעלה היא זו שיוזמת את האינטראקציה עם התוכנית.
האינטראקציה מתבצעת באמצעות שליחת הודעות (Messages) לתוכנית.
הודעות נוצרות כתוצאה מפעילות משתמש (עכבר, מקלדת, סגירת חלון ....)
או מיוזמה של מערכת ההפעלה (טעינת חלון, הצגת חלון, שינוי פוקוס של פקד, שינויים בסטטוס של האפליקציה ....)
מודל מונחה ארועים 
תכנות מונחה אירועים
כאשר מריצים אפליקציה מתבצעות מספר פעולות אתחול (Initialize) שתפקידן להגדיר, לטעון לזיכרון, ולהציג את החלון הראשי.
עם סיומן האפליקציה נכנסת למצב המתנה שנקרא Idle.
במצב זה האפליקציה אינה עושה דבר עד אשר מתקבל אירוע (Event).
האירוע מעורר את האפליקציה אשר מטפלת בו (או לחילופין מתעלמת ממנו) וחוזרת חזרה למצב Idle.
תהליך זה חוזר על עצמו עד לסגירת האפליקציה.
תכנות מונחה אירועים 
 
אירועים (Events) – פעילויות המתרחשות ביוזמת המשתמש או מערכת ההפעלה.
תור ההודעות (Message Queue) מערכת ההפעלה יוצרת לכל אפליקציה מבנה נתונים תור אשר מקבל את כל האירועים המיועדים לתוכנית.
לולאת ההודעות (Message Loop)  -
לולאה אשר ותפקידה למשוך את ההודעות מתור ההודעות ולהעבירן לטיפול האפליקציה, לולאה זו רצה ברקע ומתקיימת לאורך כל ריצת האפליקציה.
מצב ההמתנה (Idle) נוצר כאשר תור ההודעות ריק  והאפליקציה ממתינה עד אשר תתקבל הודעה חדשה.
 
המודל של אפליקציות UWP הוא תכנות מונחה אירועים (Event Driven).
לכל פקד יש סדרה ארוכה של אירועים שניתן להגיב אליהם (או להתעלם מהם).
בין אירוע לאירוע האפליקציה נמצאת במצב המתנה (Idle).
את האירועים ואת המודל של הטיפול בהם נכיר בפרקים הבאים.