לדלג לתוכן

WebAssembly – הבדלי גרסאות

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

גרסה מ־08:59, 15 במרץ 2020

WebAssembly
פרדיגמות תכנות אימפרטיבי, תכנות מובנה, תכנות מונחה מחסנית עריכת הנתון בוויקינתונים
תאריך השקה 2015 עריכת הנתון בוויקינתונים
מתכנן World Wide Web Consortium עריכת הנתון בוויקינתונים
מפתח World Wide Web Consortium, חברת גוגל, מיקרוסופט, מוזילה, אפל עריכת הנתון בוויקינתונים
הושפעה על ידי תבנית:Hlist
רישיון Apache License 2.0
סיומת wast, wasm עריכת הנתון בוויקינתונים
webassembly.org
לעריכה בוויקינתונים שמשמש מקור לחלק מהמידע בתבנית

WebAssembly או בקיצור Wasm תקן פתוח המגדיר פורמט לקוד בינארי נייד (portable binary-code) לקבצי הרצה, יחד עם ייצוג טקסטואלי בשפת סף, והגדרות ממשקים שנועדו להקל על הרצה הקוד בסביבת הריצה המארחת.[1][2][3][4] המטרה העיקרית של WebAssembly היא לאפשר ביצועים גבוהים יישומים בדפי אינטרנט, אבל הפורמט נועד גם שילוב בסביבות אחרות.[5][6]

שיטת השימוש ב WebAssembly הומלצה על ידי World Wide Web Consortium ב-5 דצמבר 2019[7], לצד HTML,CSS ו JavaScript, היא השפה הרביעית שתרוץ באופן מובנה בתוך דפדפנים.[8] על מנת להשתמש Wasm בדפדפנים, משתמשים יכולים להשתמש Emscripten SDK כדי להדר קוד C++ (או כל שפה אחרת נתמכת LLVM כגון D או Rust) לקובץ בינארי אשר פועל באותו ארגז חול רגיל קוד כמו JavaScript רגיל.[note 1] Emscripten מאגד כמה סביבות ממשקים נפוצים כמו WebGL. אין גישה ישירה ל DOM; עם זאת, אפשר ליצור "פונקציות פרוקסי" לשם כך, למשל דרך stdweb,[13] web_sys,[14] ו js_sys[15] בעת שימוש בשפת Rust.

התקן מתוחזק על ידי W3C עם תמיכה של מוזילה, Microsoft, Google, ו Apple.

הערות שוליים


שגיאות פרמטריות בתבנית:הערות שוליים

פרמטרים [ 1 ] לא מופיעים בהגדרת התבנית

  1. ^ "Introduction — WebAssembly 1.0". webassembly.github.io. נבדק ב-18 ביוני 2019. WebAssembly is an open standard... {{cite web}}: (עזרה)
  2. ^ "Introduction — WebAssembly 1.0". webassembly.github.io. נבדק ב-18 ביוני 2019. WebAssembly is a ... code format {{cite web}}: (עזרה)
  3. ^ "Conventions — WebAssembly 1.0". webassembly.github.io. נבדק ב-17 במאי 2019. WebAssembly is a programming language that has multiple concrete representations (its binary format and the text format). Both map to a common structure. {{cite web}}: (עזרה)
  4. ^ "Introduction — WebAssembly 1.0". webassembly.github.io. נבדק ב-18 ביוני 2019. ... this specification is complemented by additional documents defining interfaces to specific embedding environments such as the Web. These will each define a WebAssembly application programming interface (API) suitable for a given environment. {{cite web}}: (עזרה)
  5. ^ "WebAssembly Specification Release 1.0 (Draft, last updated Apr 16, 2019): Introduction". webassembly.org. נבדק ב-6 במאי 2019. Its main goal is to enable high performance applications on the Web, but it does not make any Web-specific assumptions or provide Web-specific features, so it can be employed in other environments as well. {{cite web}}: (עזרה)
  6. ^ Haas, Andreas; Rossberg, Andreas; Schuff, Derek L.; Titzer, Ben L.; Holman, Michael; Gohman, Dan; Wagner, Luke; Zakai, Alon; Bastien, JF (14 ביוני 2017). "Bringing the Web Up to Speed with WebAssembly". SIGPLAN Notices. 52 (6): 185–200. doi:10.1145/3140587.3062363. ISSN 0362-1340. While the Web is the primary motivation for WebAssembly, nothing in its design depends on the Web or a JavaScript environment. It is an open standard specifically designed for embedding in multiple contexts, and we expect that stand-alone implementations will become available in the future. {{cite journal}}: (עזרה)
  7. ^ World Wide Web Consortium. "WebAssembly Core Specification". World Wide Web Consortium (W3). נבדק ב-9 בדצמבר 2019. {{cite web}}: (עזרה)
  8. ^ Couriol, Bruno. "WebAssembly 1.0 Becomes a W3C Recommendation and the Fourth Language to Run Natively in Browsers". infoq.com. נבדק ב-9 בדצמבר 2019. {{cite web}}: (עזרה)
  9. ^ "Developer's Guide - WebAssembly". webassembly.org. נבדק ב-10 ביוני 2019. {{cite web}}: (עזרה)
  10. ^ "Compiling a New C/C++ Module to WebAssembly". MDN Web Docs (באנגלית). נבדק ב-10 ביוני 2019. {{cite web}}: (עזרה)
  11. ^ "Building to WebAssembly — Emscripten 1.38.33 documentation". emscripten.org. נבדק ב-10 ביוני 2019. {{cite web}}: (עזרה)
  12. ^ "Emscripting a C library to Wasm | Web". Google Developers (באנגלית). נבדק ב-10 ביוני 2019. {{cite web}}: (עזרה)
  13. ^ "stdweb - Rust". docs.rs. נבדק ב-5 ביוני 2019. The goal of this crate is to provide Rust bindings to the Web APIs and to allow a high degree of interoperability between Rust and JavaScript. {{cite web}}: (עזרה)
  14. ^ "web_sys - Rust". docs.rs. נבדק ב-5 ביוני 2019. Raw API bindings for Web APIs. This is a procedurally generated crate from browser WebIDL which provides a binding to all APIs that browser provide on the web. {{cite web}}: (עזרה)
  15. ^ "js_sys - Rust". docs.rs. נבדק ב-5 ביוני 2019. Bindings to JavaScript's standard, built-in objects, including their methods and properties. {{cite web}}: (עזרה)

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


שגיאת ציטוט: קיימים תגי <ref> עבור קבוצה בשם "note", אך לא נמצא תג <references group="note"/> מתאים.