מהם NuGet Packages ואיך להשתמש בהם?

מה זה NuGet?

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

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

Microsoft סיפקה לאותם מפתחים מוכשרים פלטפורמה בשם NuGet בה יוכלו להעלות את החבילות שלהם לאינטרנט כך שמפתחים אחרים יכולו ליהנות מהם גם כן.

במילים אחרות: NuGet זה מנהל החבילות של NET. - שם ניתן ליצור ולהעלות את החבילות שלך ולהוריד ולצרף לפרויקט שלך חבילות של אחרים.

מה מכיל NuGet Package?

  • Assemblies (קבצי DLL) שהגדיר מפתח החבילה
    • חבילות NuGet למפתחי Web יכללו גם קבצי JS, CSS וכו'
  • קבצי קונפיגורציה שונים עבור החבילה

מה ההבדל בין NuGet Package לDLL?

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

ל - NuGet יש מרכז שליטה מובנה בVisual Studio בשם NuGet Package Manager.

באמצעות מרכז השליטה ניתן לבצע את הפעולות הבאות:
  • חיפוש פשוט אחר חבילות NuGet
  • בחירת גרסה מסוימת והורדה כולל שילוב החבילה בפרויקט בלחיצת כפתור
  • מעקב מתמיד אחר עדכונים - מערכת NuGet תודיע למשתמש בחבילה אם קיים עדכון עבור החבילה בה הוא משתמש
  • התקנת Dependencies (החבילות בהן החבילה שנרצה להשתמש תלויה) באופן אוטומטי
  • מחיקה פשוטה של החבילה אם לא קיים בה שימוש יותר

למה NuGet?

קודם כל כי כולם

קצת סטטיסטיקה:
נכון להיום NuGet מכילה -
  • 92,117 חבילות שונות אשר זמינות להורדה
  • 991,756 גרסאות לחבילות השונות 
  • 4,353,111,256 הורדות של חבילות
מרשים הא?

למה לפתח בעצמנו?

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

עבודה עם NuGet Packages תהיה עדיפה מעבודה עם DLLs ב99% מהמקרים!

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

איך להוריד NuGet Package?

אז עכשיו כשהבנתם את הכוח העצום של של NuGet Packages בואו ונבין איך מורידים אותם ואיך משתמשים בהם.

לצורך הדוגמה נוריד חבילה בשם NUnit - תשתית הבדיקות הפופולרית ביותר של NET.

בחלון ה Solution Explorer שלנו (ctrl+alt+L) נלחץ מקש ימני על הפרויקט שלנו ונבחר ב Manage NuGet Packages.



בחלון של מנהל החבילות של NuGet נלחץ על Browse > נבחר בחבילה NUnit > ונלחץ על Install


בחלון האישור שיפתח נלחץ על OK


עכשיו לאחר ההוספה ניתן להיכנס ל Solution Explorer ולראות שה Reference של NUnit התווסף וכעת הוא זמין לשימוש.

איך למחוק NuGet Packages?

בכדי למחוק חבילת NuGet כל שנצטרך לעשות זה להיכנס שוב למנהל החבילות של NuGet (כמו מקודם), לבחור בחבילה וללחוץ על Uninstall


סיכום - מה למדנו היום?

  • מה זה NuGet?
  • מה מכילה חבילת NuGet?
  • מה ההבדל בין חבילת NuGet לבין DLL?
  • למה שנרצה להשתמש בNuGetים?
  • איך מתקינים חבילת NuGet?
  • איך מסירים חבילת NuGet?
נושא הNuGet הוא נושא חשוב אשר ישמש אתכם רבות במהלך הקריירה שלכם כמפתחי NET. וכדאי להכיר אותו לעומק.
אני מקווה שעשיתי לכם קצת סדר בדברים..

נתראה בפוסט הבא :)



תגובות

  1. מעולה!!!
    אני מנסה להירשם לבלוג שלך אבל לא מקבלת מייל לאישור הרישום...

    השבמחק
  2. מעולה
    אבל מה עושים אם אני כותבת משהו בחיפוש של packege והוא לא מוצא את מה שאני מחפשת?

    השבמחק

הוסף רשומת תגובה

פוסטים פופולריים מהבלוג הזה

תכנות מונחה עצמים | Dependency Inversion Principle

מהם קבצי DLL ואיך להשתמש בהם?

מה ההבדל בין אוטומציה לפיתוח רגיל