האתר הישראלי להנדסת תכנה

דף ראשי | מפת האתר | רשימת מושגים | מקורות נוספים | אודות
ארכיטקטורות מיוחדות לתחומן מודלים להתייחסות

מודלים כלליים

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

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

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



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



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

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

    ארכיטקטורות מיוחדות לתחומן לתחילת הדף מודלים להתייחסות
    ©איתן 2003. כל הזכויות שמורות למערכת המידע איתן