שפת תכנות דינמית

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

השפה הדינמית הראשונה הייתה LISP, אם כי מימושיה הראשונים השתמשו במפרש. Perl, שנוצרה בשנת 1987 ופייתון (1989) נכתבו מראש כשפות דינמיות. שפות דינמיות נוספות: JavaScript, PHP, לואה ו־Ruby.

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

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

הערות שוליים

קטגוריה:שפות תכנות