WEBA
E

Electron

בניית אפליקציות שולחניות חוצות פלטפורמות באמצעות JavaScript, HTML ו-CSS מעל Chromium ו-Node.js עבור מפתחי ווב וצוותי תוכנה.

457 מיליםפריימוורקים

Electron מחבר בין Chromium לבין Node.js ומריץ קוד ווב כאפליקציה שולחנית מקומית. במקום לתחזק בסיסי קוד שונים, אתם כותבים פעם אחת ב-JavaScript ומתקינים בכל מחשב. הפרויקט שייך לקרן OpenJS Foundation ומתבסס על קוד פתוח עם קהילת מפתחים פעילה, כך שאין כאן תשלום רישיון. הגישה הזו חוסכת הקמת צוותי פיתוח ייעודיים לכל מערכת הפעלה, ומאפשרת למפתחי פרונטאנד להשתמש בספריות מוכרות כמו React כדי לייצר קובץ התקנה סטנדרטי למחשב.

הוא יושב ישירות בתהליך הבנייה והאריזה של צד הלקוח. כל התקנה של האפליקציה שלכם מגיעה ארוזה יחד עם עותק של דפדפן Chromium וסביבת Node.js. המשמעות היא שאתם שולטים בסביבת הריצה ולא תלויים בגרסת הדפדפן שמותקנת אצל המשתמש. מנגד, החיבור הזה דורש משאבי מערכת רבים. כל חלון או יישום מריץ מנוע שלם משלו, מה שגוזל זיכרון עבודה רב לעומת יישומים שנכתבים ישירות בקוד של מערכת ההפעלה.

שליטה במערכת והפצת עדכונים

הכוח העיקרי מגיע מגישה ישירה לממשקי מערכת ההפעלה דרך קוד Node.js וספריות ייעודיות. אתם שולטים על תפריטי חלונות, דיאלוגים מובנים, הודעות מערכת ואינטראקציה עמוקה עם קבצים מקומיים. בעוד שדפדפן רגיל חוסם גישה למערכת הקבצים מטעמי אבטחה, כאן יש לכם הרשאות מקומיות מלאות. אפשר גם לחבר מודולים שנכתבו ב-C או ב-C++ כדי להרחיב את היכולות דרך המערכת האקולוגית של npm.

זה דורש מעקב אבטחה קפדני. גרסאות עיקריות יוצאות בצמוד לעדכוני Chromium כדי לסגור פרצות במהירות.

הפצת התוכנה כוללת כלים מובנים שמטפלים באריזה ובשחרור גרסאות חדשות למשתמשי קצה. מודול autoUpdater המבוסס על Squirrel שולח עדכונים שוטפים ברקע ללא צורך בהתקנה ידנית מחדש. בעזרת כלי הקהילה אפשר לייצר חבילות התקנה כמו קובצי DMG למק או קובצי MSI לווינדוס, או להעלות את התוצר ישירות לחנויות האפליקציות של Apple ושל Microsoft.

Electron נותן לכם דף חלק שאינו כופה ארכיטקטורה, אבל מאלץ אתכם לנהל את כל תחזוקת המערכת בעצמכם. התבנית הזו מתאימה מאוד למי שמחזיק במוצר ווב מורכב ורוצה גרסה שולחנית מהירה, בדיוק כמו Slack שמשתמשת בו לתקשורת פנים ארגונית. אם אתם צוות של עשרה מפתחים עם בסיס קוד קיים ב-TypeScript, המעבר לשולחן העבודה מתבצע בלי לבנות הכל מחדש.

למי זה פחות מתאים

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

אין תמיכה מובנית ייעודית לקהל ישראלי מעבר לתמיכת הדפדפן ברינדור טקסט בעברית ובכיווניות RTL.

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

יכולות מרכזיות

  1. שילוב Chromium עם Node.js
  2. הרצת קוד חוצה פלטפורמות
  3. שליטה בממשקי מערכת הפעלה
  4. עדכוני תוכנה אוטומטיים ברקע
  5. איסוף נתוני קריסות אוטומטי
  6. אריזה מותאמת לחנויות אפליקציות
שימו לבהורידו את Electron Fiddle לפני שאתם מקימים פרויקט מלא, כדי לבדוק איך ה-APIs של מערכת ההפעלה מתנהגים ישירות על המחשב שלכם.

כל עובדה בעמוד נקראה מהאתר של Electron בתאריך שרשום למעלה. מחירים ומגבלות משתנים; לפני שמשלמים, בודקים בעמוד המחירון שלהם. מצאתם טעות? כתבו.