• בלוג
  • הספריה ההיא שאף אחד לא מכיר

הספריה ההיא שאף אחד לא מכיר

09/05/2025

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

ריאקט היא דוגמה לספריה שיכולה להתאים לכל חור:

  1. היא רצה בצד לקוח ובונה DOM

  2. היא רצה בצד שרת ובונה מחרוזת HTML

  3. אפשר לחבר אותה לקומפוננטות של Mobile ולקבל אפליקציות.

  4. אפשר לחבר אותה לקומפוננטות של מיילים ולקבל אימיילים ריספונסיביים.

  5. אפשר לבנות איתה יישומי Text UI.

  6. אפשר לבנות איתה Prompt-ים ל AI (כן הפרומפט של קרסר נבנה בצורה דינמית בכתיב JSX).

בצד השני סטימולוס היא ספריית JavaScript שלכאורה מתאימה לכל מקום, אבל תכל'ס היא מתאימה כמו כפפה ליד לפרויקטי ריילס ולהם בלבד.

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

ובכל זאת אני חושב שמתכנתים טובים צריכים להכיר את שני סוגי הכלים, גם את הכלליים וגם את הספציפיים:

  1. כלים ספציפיים נותנים לנו הבנה טובה יותר של תפיסת העולם עבורה הם נוצרו. היכרות עם סטימולוס (או htmx שמקביל לו) תלמד אתכם לעבוד טוב יותר עם מערכות Rails ו Django וקוד הפרונט אנד שלהן.

  2. כלים ספציפיים נותנים לנו השראה, בגלל שהפיתרונות שלהם כל כך מדויקים ותפורים לבעיה. סטימולוס היא ספרייה הרבה יותר קטנה מריאקט וביישומי ריילס הרבה פעמים תתן ביצועים טובים יותר. אפילו אם אני כותב React ו Rails עדיין טוב שיש לי למה להשוות ולמה לשאוף מבחינת גודל קבצי ה JavaScript.

  3. כלים ספציפיים מלמדים אותי עוד פרדיגמת פיתוח, מה שעוזר לי להגיע לפיתרונות יותר יצירתיים לבעיות בעתיד.

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