סקריפט או שפת סקריפטים היא שפת מחשב שאינה זקוקה לשלב הקומפילציה והיא מתפרשת אחת אחת בזמן ריצה. זה המקום שבו נכתב התסריט והיכן נכתבות הוראות עבור סביבת זמן ריצה. בניגוד לשפות תכנות שנרקמות תחילה לפני ריצה, שפות סקריפטים אינן מקמפלות את הקובץ ומבצעות את הקובץ מבלי להידר.
סקריפטים משמשים לעתים קרובות ליצירת יישומי אינטרנט דינמיים בימינו מכיוון שהם מקושרים לפיתוח אתרים. שפות סקריפט בצד השרת ושפות סקריפט בצד הלקוח הן שני סוגי שפות הסקריפט. Python, PHP ו-Perl הן דוגמאות לשפות סקריפטים בצד השרת, בעוד ש-JavaScript היא הדוגמה הטובה ביותר לשפת סקריפטים בצד הלקוח. שפות אלו מפותחות לרוב במטרה לתקשר עם שפות תכנות אחרות.
ישנן מספר שפות סקריפטים זמינות, חלקן כדלקמן:
יישום של שפות סקריפט
ישנם מספר תחומים שבהם נעשה שימוש בשפות סקריפטים:
- שפות סקריפטים משמשות בצד השרת כמו גם בצד הלקוח ונמצאות בשימוש נרחב גם ביישומי אינטרנט. השפות כמו JavaScript, Python, PHP ו-Perl הן דוגמאות לשפות סקריפטים בצד השרת, ו-JavaScript, jQuery, AJAX הן דוגמאות לשפות סקריפטים בצד הלקוח.
- כמו סקריפטים של Python, Perl, Shell היא כל שפות הסקריפט, המשמשות בניהול המערכת.
- הוא משמש לבניית תוספים והרחבות עבור יישומים נוכחיים, כמו גם במשחקים ומולטימדיה.
יתרונות של שפות סקריפטים
כמה נקודות מפתח אחרות של יתרונות של שפות סקריפטים ניתנות גם להלן:
- זה יכול להעביר בקלות בין מערכות הפעלה שונות.
- זה מבצע ישירות את הקבצים מבלי להזדקק להידור, אך לפעמים עשוי להידרש להדר בעת הצורך.
- זוהי פלטפורמת קוד פתוח המאפשרת למשתמשים לצפות ולערוך את הסקריפט בעת הצורך.
- בהשוואה לתוכנית בפועל, היא הרבה יותר מהירה לפיתוח.
חסרונות של שפות סקריפטים
- זה מאפשר למשתמשים לצפות ולקוד שעשויים להיות אסורים על ידי חברות מסוימות.
- שפות אלו לא הידור הקובץ ופירשו אותו ישירות, אשר צריך להתקין מתורגמן או תוכנה נפרדת על ידי המשתמשים לפני הפעלת הסקריפט.
- בהשוואה לתוכנית מהודרת, שפות סקריפטים עשויות להיות איטיות במצבים מסוימים.
ההבדל בין שפות סקריפט ושפות תכנות
למרות שכל שפות הסקריפט הן שפות תכנות, יש להן הבדל בכך ששפות הסקריפט מפרשות ישירות את הקבצים ואינן זקוקות לשלב הקומפילציה. לדוגמה, תוכנית שהולבנה בשפת הסקריפט כמו PHP או JavaScript אינה צריכה להיות קומפילציה, ואילו תוכנית C שצריך להידור לפני הפעלה.
c code abs
בדרך כלל, בהשוואה לתוכניות מתפרשות, תוכניות הידור פועלות מהר יותר מכיוון שהן מומרות תחילה קוד מכונה מקורי לפני הפעלתן. המתורגמן קורא ומנתח את הצהרות הקוד בכל פעם שהם נתקלים, ואם מתגלות טעויות, הוא נתקל בהן ועוצר באותה נקודה, בעוד שהמהדר קורא ומנתח את הקוד רק פעם אחת, ומציג את התקלות שהקוד מכיל. מעשית, בשל יכולות החישוב המשופרות של החומרה המודרנית ושיטות קידוד מתקדמות, ההבדל בין גרידה לשפות תכנות הולך ומטשטש.
כאשר מבחינים בין שפות כמו סקריפטים ותכנות, יש להתחשב בסביבה שבה ישמשו אותן. הסיבה לכך היא שמפתחים חייבים להיות מסוגלים לבנות קומפיילר לשפת סקריפטים כמו JavaScript ולהשתמש בה כשפה לא סקריפטית (שפה הידור), כמו גם מתורגמן לשפת קומפילציה כמו C או C++ ולהשתמש בה. זה כשפת סקריפטים.
V8 של מנוע JavaScript של Google Chrome הוא דוגמה אמיתית לכך. V8 ממיר קוד JavaScript לקוד מכונה במקום לפרש אותו. בדרך כלל נעשה שימוש בשפות כמו JavaScript, PHP, Python ו-VBScript ללא שלב הידור מפורש, בעוד ש-C ו-C++ יש שלב הידור מפורש.
ההבחנות העיקריות בין סקריפטים ותכנות מפורטים בטבלה שלהלן:
שפת סקריפטים | שפת תכנות |
---|---|
זה מבוסס על המתורגמן. | זה מבוסס על המהדר. |
הוא משמש לשילוב רכיבים קיימים. | הוא משמש לפיתוח מאפס. |
זה פועל בתוך התוכנית ותלוי בה. | זה לא תלוי בתוכנית אב. |
זה מתפקד כדי להמיר הוראות ברמה גבוהה לשפת מכונה. | זה עובד כדי להמיר את התוכנית המלאה לשפת מכונה במכה אחת. |
זה לא מצריך קומפילציה של הקובץ והפעלה ישירה. | זה דורש קומפילציה של הקובץ תחילה. |
אין לו סוג קובץ. | הוא מכיל סוג קובץ .exe. |
הוא אינו תומך בסוגי נתונים, עיצוב גרפי ועיצוב ממשק משתמש, או תמיכה מוגבלת. | יש לו עיצוב גרפי תמיכה עשיר, סוגי נתונים ועיצוב ממשק משתמש. |
משתמשים יכולים לכתוב ולהשתמש בו בקלות. | זה יכול להיות קשה להשתמש ולכתוב. |
זה צריך מארח. | זה לא צריך מארח מכיוון שהוא ניתן להפעלה עצמית. |
זה דורש תחזוקה נמוכה. | זה דורש תחזוקה גבוהה. |
דוגמאות לשפות סקריפט כוללות VB Script, JavaScript, Perl, Ruby ו-PHP. | דוגמאות לשפות תכנות כוללות COBOL, Java, VB, Basic, C, C++, C# ו-Pascal. |