WEBA

ספרייה (Library): מה זה?

אוסף קוד מוכן שמפתח קורא לו מתוך הקוד שלו, כמו React או Lodash.

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

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

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

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

כלים שהמונח חי בהם