BDNHOST · AE SCRIPTS LAB
מדריך 27 · Phase 4 · Automation

ExtendScript נגד UXP —
לאן Adobe הולכים.

Adobe מחליפה את הטכנולוגיה של scripts. ExtendScript — שעבד 25 שנה — הולך להיגנז. UXP, הטכנולוגיה החדשה, מבוססת על JavaScript מודרני ועל Web technologies. למפתחי scripts זו רעידת אדמה. למשתמשים — שינוי שלא תמיד מבחינים בו. במדריך הזה — מה ההבדל, מה צריך לדעת, ואיך בונים scripts שיעבדו גם בעתיד.

זמן קריאהכ-15 דקות רמהמתקדם דרישות קדם06, 25 קהל יעדמפתחי scripts
פרק 01 · ההיסטוריה

למה ExtendScript הולך

ExtendScript נולד ב-1999. ב-2026, Adobe מודה שהוא מיושן. ההכרזה הרשמית הייתה ב-2021 — Photoshop וInDesign כבר עברו ל-UXP. אפטר במשמרת.

ExtendScript מבוסס על ECMAScript 3 (גרסת JavaScript מ-1999). אין arrow functions, אין promises, אין modules, אין async/await. כל מה שמפתחי JavaScript מודרניים רגילים אליו — חסר. בנוסף, ScriptUI (פיתוח UI) מיושן ולא תואם לסטנדרטים של היום.

מה הבעיות של ExtendScript

הצד השני

למרות הביקורת, ExtendScript עדיין עובד. אלפי סקריפטים נכתבו בו. אפטר 2026 עדיין תומכת בו במלואה. אין דדליין רשמי לסיום התמיכה — אבל בוודאי תוך 3-5 שנים נראה את ה-deprecation.

פרק 02 · UXP — מה זה

הטכנולוגיה החדשה של Adobe

UXP = Unified Extensibility Platform. הסטנדרט החדש של Adobe לפיתוח plugins ו-scripts על פני כל ה-Creative Cloud.

מה UXP מאפשר

  • JavaScript מודרני — ES2020+, async/await, classes, modules.
  • UI עם React — או כל framework של web. UI מודרני, responsive.
  • גישה ל-Web APIs — fetch, WebSockets, Storage.
  • Multi-thread — סקריפט רץ ברקע בלי להקפיא את ה-app.
  • Cross-app — אותו plugin עובד ב-Photoshop, InDesign, ו-XD.

מבנה plugin של UXP

my-plugin/
├── manifest.json    # הגדרות הפלאגין
├── index.html       # ה-UI הראשי
├── styles.css       # עיצוב
└── scripts/
    ├── main.js      # הקוד הראשי
    └── api.js       # פונקציות עזר

דוגמת קוד — UXP modern syntax

import { app, core } from "uxp";

async function createCompFromAPI() {
  try {
    const response = await fetch("https://api.example.com/comps");
    const data = await response.json();

    const comp = await app.project.createComp({
      name: data.name,
      width: data.width,
      height: data.height
    });

    return comp;
  } catch (e) {
    core.showAlert("שגיאה: " + e.message);
  }
}

להשוואה — אותה פעולה ב-ExtendScript הייתה דורשת 30+ שורות, בלי async/await, ובלי fetch. UXP מקצר משמעותית.

פרק 03 · ההבדלים בטבלה

השוואה ראש לראש

סיכום ויזואלי של מה שונה.

קטגוריהExtendScriptUXP
גרסת שפה ECMAScript 3 (1999) ES2020+
UI Framework ScriptUI (proprietary) React + HTML/CSS
Async Synchronous בלבד Async/await native
Network calls מוגבל מאוד fetch, WebSockets
Modules אין (כל הקוד בקובץ אחד) ES Modules
סוג קובץ .jsx פלאגין שלם (folder)
הפצה קובץ בודד Adobe Marketplace
Cross-app שונה לכל app אחיד יותר
Debug ESTK / VS Code (מוגבל) Chrome DevTools
תמיכה באפטר מלאה חלקית בלבד (2026)
הנקודה הקריטית

UXP עדיין לא נתמך באפטר במלואו. ב-2026, אפטר תומכת ב-UXP חלקית — בעיקר ל-UI panels. הגישה ל-API המלא של אפטר עדיין דרך ExtendScript bridge. זה אומר שכרגע — לא ניתן לכתוב פלאגין UXP טהור לאפטר.

פרק 04 · המצב ב-2026

מה אפשר ומה אי אפשר

Adobe לא הסתירה שהיא רוצה לסיים את ExtendScript — אבל הקצב לאפטר ספציפית איטי. הנה מה שניתן לעשות היום.

מה UXP תומך באפטר היום

  • UI Panels — אפשר לבנות פאנלים עם React.
  • Network calls — fetch ל-APIs חיצוניים.
  • File system — קריאה וכתיבה של קבצים.
  • UI components — Spectrum (design system של Adobe).

מה UXP לא תומך באפטר היום

  • גישה ל-DOM של אפטר — comp, layer, property — דרך ExtendScript bridge בלבד.
  • יצירת אובייקטים — addComp, addText — לא ב-UXP טהור.
  • הנפשה / keyframes — דרך bridge.

הפיתרון הביניים — Hybrid

פלאגין מודרני באפטר נראה כך: UI ב-UXP (React), הקוד שעובד עם אפטר ב-ExtendScript, וגשר ביניהם. זה ה-state of the art של 2026.

UXP Plugin (React UI)
        ↕
    Bridge Layer
        ↕
ExtendScript (.jsx files)
        ↕
After Effects DOM
היתרון של Hybrid

אתם מקבלים UI מודרני, fetch, async — בלי לוותר על הכוח של ExtendScript. זה גם מה שהסקריפטים החדשים של aescripts.com כבר משתמשים בו. כך עובדים מפתחי plugins מקצועיים ב-2026.

פרק 05 · Future-Proof

איך לבנות scripts שיעבדו גם ב-2030

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

טיפ 1 — הפרידו לוגיקה מ-UI

הקוד שעובד עם DOM של אפטר — בקבצים נפרדים מהקוד של ה-UI. כשתעברו ל-UXP / Hybrid, רק ה-UI יצטרך שכתוב.

טיפ 2 — השתמשו ב-modules pattern

// core.jsx — לוגיקה טהורה
var CORE = {
  createComp: function(name, w, h) {
    return app.project.items.addComp(name, w, h, 1, 10, 30);
  },
  addText: function(comp, text) {
    return comp.layers.addText(text);
  }
};

// ui.jsx — רק UI, קורא ל-CORE
btn.onClick = function() {
  var comp = CORE.createComp("My", 1920, 1080);
  CORE.addText(comp, "Hello");
};

עם הפרדה כזו, מעבר ל-UXP יצריך שכתוב של ui.jsx בלבד.

טיפ 3 — הימנעו מ-ScriptUI מורכב

ScriptUI הולך להיגנז עם ExtendScript. אם אתם בונים UI מורכב — תכננו אותו ויזואלית כך שיהיה קל להעביר ל-React.

טיפ 4 — Document everything

Comments מפורטים על כל פונקציה. כשתחזרו לקוד בעוד שנתיים לעדכן ל-UXP — תהיו אסירי תודה.

המציאות הפרגמטית

בפועל, רוב מפתחי הסקריפטים ב-2026 עדיין כותבים ב-ExtendScript — כי הוא עדיין הדרך היחידה ל-AE API מלא. אבל הם בונים בארכיטקטורה שתאפשר מעבר. תהיו חכמים — תעשו אותו דבר.

פרק 06 · משאבים

איפה ללמוד עוד

UXP חדש יחסית. המשאבים מתפזרים. הנה הקריטיים.

  • Adobe UXP Documentationdeveloper.adobe.com/uxp/. רשמי, מתעדכן.
  • UXP Discord Community — קהילת מפתחים אקטיבית. תשובות בדקות.
  • UXP Plugin Examplesgithub.com/AdobeDocs/uxp-photoshop-plugin-samples (לפוטושופ אבל הקונספטים זהים).
  • Adobe MAX talks — מדי שנה אדובי משחררת talks על future of scripting. שווים צפייה.
להישאר מעודכנים

הירשמו ל-Adobe Developer Newsletter. כל פעם שאדובי משחררת UXP API חדשות לאפטר — אתם תדעו. עדיף מאשר לגלות שהסקריפטים שלכם נשברו.

סיכום

מה עכשיו יודעים

ExtendScript = העבר. UXP = העתיד. אפטר ב-2026 ב-מצב ביניים — UXP חלקי, ExtendScript מלא. הארכיטקטורה הנכונה היום היא Hybrid: UI ב-UXP, לוגיקה ב-ExtendScript, גשר ביניהם. בנו את הקוד שלכם עם הפרדה ברורה בין לוגיקה ל-UI — ותהיו מוכנים למעבר.

Adobe לא נתנה דדליין רשמי לסיום ExtendScript. אבל הסימנים ברורים. מי שמתחיל לפתח scripts ב-2026 — צריך לחשוב על Future-Proofing מההתחלה. זה ההבדל בין סקריפט שיחיה 10 שנים לבין סקריפט שיהיה צריך לשכתב בעוד 3.

לעולם של Adobe

הסקריפט שלנו Text Layer Manager נכתב כיום ב-ExtendScript — אבל בארכיטקטורה Hybrid-ready. כשאדובי תפתח את UXP API לאפטר במלואו, נעבור ב-2 שבועות. כך כותבים scripts מקצועיים.