Movatterモバイル変換


[0]ホーム

URL:


לדלג לתוכן
ויקיפדיההאנציקלופדיה החופשית
חיפוש

TypeScript

מתוך ויקיפדיה, האנציקלופדיה החופשית
TypeScript
פרדיגמותתכנות פונקציונלי,תכנות מונחה-עצמים,תכנות אימפרטיבי,תכנות גנרי,תכנות מונחה-אירועיםעריכת הנתון בוויקינתונים
תאריך השקה1 באוקטובר2012עריכת הנתון בוויקינתונים
מתכנןמיקרוסופטעריכת הנתון בוויקינתונים
מפתחמיקרוסופטעריכת הנתון בוויקינתונים
טיפוסיות"ברווז", הדרגתי, מבני
הושפעה על ידיJavaScript,Java,סי שארפ,CoffeeScriptעריכת הנתון בוויקינתונים
השפיעה עלAtScript, AssemblyScript
רישיוןאפאצ'י 2
סיומתts, tsx
www.typescriptlang.org
לעריכה בוויקינתונים שמשמש מקור לחלק מהמידע בתבנית

TypeScriptעברית:טייפ סקריפט) היאשפת תכנות מבוססתקוד פתוח המפותחת ומתוחזקת על ידימיקרוסופט. השפה היא ערכת-על (superset) תחבירית מוקפדת שלJavaScript (כלומר, כל קוד JavaScript הוא קוד תקין ב-TypeScript) ומוסיפה עליהטיפוסיות סטטית אופציונאלית והרחבות לתכנות מונחה-עצמים. TypeScript תוכננה לפיתוח מערכות גדולות ומורכבות ועוברת טרנס-קומפילציה[1] ל-JavaScript.

מאז השקתה חוותה הצלחה רבה בעיקר עקב היכולת לכתוב אפליקציות מורכבות על בסיס JavaScript.[2]אנדרס הלסברג, מהארכיטקטים הראשיים של#C ויוצרDelphi ו-Turbo Pascal, משתתף בפיתוח של TypeScript.

השפה תומכת בקובצימטא-דאטה דוגמת קובצי "Header" של++C אוC הנקראים קובצי הצהרה (declaration) שסיומתם "d.ts‏." אשר מנגישים מידע אודות הטיפוסים בספריות JavaScript. קבצים אלו משמשים לתיאור טיפוסי ה-TypeScript המיוצאים מספריות JavaScript כאשר מפתח צורך אותן. קיימים קובצי הצהרהצד שלישי עבור ספריות פופולריות כגוןjQuery,MongoDB ,D3.js והמודולים המובנים שלNode.js.

קובצי TypeScript מזוהים על ידי הסיומת "ts‏.".דפדפנים לא תומכים בקבצים מסוג ts, ולכן נדרש תהליך טרנס-קומפילציה כדי להפוך אותם לקובצי js הנתמכים בדפדפנים.

TypeScript יוצאת לאור תחת הרישיוןאפאצ'י 2.

נכון לספטמבר 2020, כל הקוד של TypeScript זמין ב-GitHub.[3]

היסטוריה

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

הגרסה הראשונה יצאה לאור באוקטובר2012 (בגרסה 0.8) לאחר שנתיים של פיתוח פנימי במיקרוסופט.

TypeScript 0.9, שיצאה לאור בשנת2013, הוסיפה תמיכה בגנריות. TypeScript 1.0 שוחררה בכנס המפתחים Build של מיקרוסופט בשנת2014.

ביולי 2014 הכריז צוות הפיתוח של TypeScript על מהדר חדש, וטענו שביצועיו שופרו פי 5. במקביל,קוד המקור, שבתחילה היה זמין ב-CodePlex, הועבר ל-GitHub.

ב-22 בספטמבר2016 יצאה לאור גרסה 2.0 של TypeScript.

גרסה 3.0 של TypeScript יצאה לאור ב -30 ביולי2018, והביאה תוספות רבות לשפה, כמו tuples בפרמטריrest וביטויי spread, פרמטרי rest מטיפוס tuple, פרמטרי rest מטיפוסים גנריים וכן הלאה.

תכונות

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

TypeScript מוסיפה תכונות ל-ECMAScript 6, כגון:

בנוסף, TypeScript מאפשרת לקבוע שהטרנספילציה תיצור קוד JavaScript מגרסאות ישנות של ECMAScript (עד ECMAScript 3). התכונות הבאות של ECMAScript 2015 ממומשות על ידי TypeScript לתמיכה בגרסאות ישנות:

תאימות ל-JavaScript

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

TypeScript היא ערכת-על (superset) שלECMAScript 2015, שהיא בעצמה ערכת-על של ECMAScript 5, המכונה בדרך כלל JavaScript. כלומר, היא מכילה את כל הפקודות והתחביר של JavaScript. ככזו, כל קוד JavaScript הוא גם קוד TypeScript תקין. כברירת מחדל המהדר מכוון ל-ECMAScript 5, הסטנדרט כיום, אך הוא מסוגל גם ליצור קוד הנתמך ב-ECMAScript 3 או 2015.

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

Type annotations

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

TypeScript מוסיפה על התחביר של JavaScript את התחביר לקביעת טיפוס הנקרא type annotation, וזה מאפשר בדיקת טיפוסים בזמן הידור.

functionadd(left:number,right:number):number{returnleft+right;}

ה-annotations עבור טיפוסים פרימיטיביים הםnumber,boolean ו-string. מבנים מטיפוס דינמי הם בעלי הטיפוסany.

המהדר של TypeScript עושה שימוש בהסקת טיפוסים (type inference) כדי להסיק טיפוסים כאשר טיפוסים מסופקים. לדוגמה, בפונקצייתadd בקוד שלעיל, טיפוס ערך ההחזרה של הפונקציה היה מוסק להיותnumber, גם אם לא סופק type annotation עבור טיפוס ערך ההחזרה. הסקה זו מבוססת על הטיפוסים הסטטיים שלleft ו-right שהם שניהם מטיפוסnumber, והידיעה של המהדר שהתוצאה של חיבור שני משתנים מטיפוסnumber היא תמידnumber. עם זאת, הצהרה מפורשת על טיפוס ערך ההחזרה מאפשרת למהדר לאמת נכונות.

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

קובצי הצהרה

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

כאשר קובץ סקריפט של TypeScript עובר תהליך הידור יש אפשרות ליצור קובץ הצהרה (עם הסיומת.d.ts) המתפקד כממשק לרכיבים ב-JavaScript המהודר. בתהליך ההידור מוסרים גופי כל הפונקציות והשיטות ונשמרות רק החתימות של הטיפוסים שייוצאו. לאחר מכן ניתן להשתמש בקובץ ההצהרה המתקבל לתיאור סוגי ה-TypeScript הווירטואליים המיוצאים שלספריית JavaScript או מודול כאשר מפתח צד-שלישי צורך אותו מקוד TypeScript.

הרעיון של קובצי הצהרה הוא מקביל לקובצי "Header" הקיים ב-C או ++C.

declarenamespacearithmetics{add(left:number,right:number):number;subtract(left:number,right:number):number;multiply(left:number,right:number):number;divide(left:number,right:number):number;}

ניתן לכתוב קובצי הצהרת טיפוסים באופן ידני עבור ספריות JavaScript קיימות, כפי שנעשה עבור jQuery ו-Node.js.

מבחר גדול של קובצי הצהרה עבור ספריות JavaScript פופולריות זמין ב-GitHub בפרויקטDefinitelyTyped.

קישורים חיצוניים

[עריכת קוד מקור |עריכה]
ויקישיתוף מדיה וקבצים בנושאTypeScript בוויקישיתוף

הערות שוליים

[עריכת קוד מקור |עריכה]
  1. ^הידור מקוד בשפה אחת לקוד בשפה אחרת
  2. ^Mary Branscombe,Why TypeScript Is Growing More Popular, thenewstack.io
  3. ^microsoft/TypeScript, 2020-04-24, נבדק ב-2020-04-24
בקרת זהויותעריכת הנתון בוויקינתונים
אוחזר מתוך "https://he.wikipedia.org/w/index.php?title=TypeScript&oldid=38095053"
קטגוריות:
קטגוריות מוסתרות:

[8]ページ先頭

©2009-2025 Movatter.jp