11 כלי ניהול תלות עבור מפתחי אינטרנט
תלות הם אבן הפינה של פיתוח האינטרנט המודרני. אלה הם הכלים הדרושים, plugins, ספריות ומסגרות הכרחי כדי לבנות יישומי אינטרנט ברמה גבוהה.
מספרם הרב של התלות הרקיע שחקים בשנים האחרונות. עם הזמן מפתחים אימצו כלי ניהול תלות אשר להקל על הלחץ של שמירה על תלות מאורגנת ומעודכנת. כלים אלה מובילים זרימת עבודה מיטבית עבור מפתחים ומנהלי פרויקטים.
קיטלגתי את כלי התלות הטובים ביותר כאן, כולל פלטפורמות מבוססות ומתחדשות. פיתוח אינטרנט מקצועי דורש למידה מתמשכת ואני טוען ניהול תלות היא מיומנות שווה למידה.
1. NPM
אני לא יכול לכתוב את המדריך הזה בלי לתת קרדיט על הצומת מנהל חבילה. נבנה על הצומת.ג'ים, מערכת זו סמכויות עצום של מאגר 100,000 + חבילות ומודולים.
כל פרוייקט יכול להשתמש בהגדרת הקובץ package.json דרך NPM ואפילו הצליח עם גביע (על הצומת). תלות ניתן לעדכן אופטימיזציה אופטימלית מן הטרמינל. ואתה יכול לבנות פרויקטים חדשים עם קבצי תלות ומספרי גרסאות באופן אוטומטי משוך את הקובץ package.json.
NPM הוא בעל ערך עבור יותר מאשר רק ניהול תלות, וזה כמעט כלי חובה לדעת על פיתוח האינטרנט המודרני. אם אתה מבולבל בבקשה לבדוק את זה חוט Reddit להסבר של מתחילים.
2. Bower
מערכת ניהול החבילה Bower פועלת על NPM שנראה קצת מיותר אבל יש הבדל בין השניים, בעיקר כי NPM מציע תכונות נוספות בעוד Bower שואפת צמצום זמני קבצים וזמני הטעינה עבור תלויות Frontend.
בדוק את השאלה מחסנית כדי ללמוד עוד על ההבדלים הדקים.
כמה devs טוענים כי באואר הוא מיושן ביסודו שכן פועל על NPM, שירות שיכול לעשות כמעט כל דבר באואר יכול לעשות. באופן כללי זה לא טועה.
אבל devs צריך להבין באואר יכול לייעל את זרימת העבודה במיוחד עם תלויות Frontend. אני ממליץ על המאמר של Ben McCormick האם Bower שימושי כדי ללמוד עוד על הערך המוצע משני כלי ניהול החבילה.
3. RubyGems
RubyGems הוא מנהל חבילה עבור רובי עם פופולריות גבוהה בקרב מפתחי אינטרנט. הפרויקט הוא קוד פתוח וכולל את כל אבני החן רובי חינם.
לתת סקירה קצרה למתחילים, א “פנינה” הוא רק חלק קוד פועל על הסביבה רובי. זה יכול להוביל תוכניות כמו Bundler אשר לנהל גרסאות פנינה ולשמור הכל מעודכן.
מפתחי Rails יאהבו את התכונה הזו, אבל מה עם חבילות Frontend? מאז רובי היא קוד פתוח, מפתחים יכולים לבנות פרויקטים כמו Bower for Rails. זה מביא Frontend חבילת ניהול לפלטפורמה רובי עם עקומת למידה קטנה.
4. RequireJS
יש משהו מיוחד ב RequireJS כי זה בעיקר JS הכלים. זה יכול לשמש טעינת מודולים JS במהירות כולל מודולים הצומת.
RequireJS יכול באופן אוטומטי לזהות תלות נדרשת המבוסס על מה שאתה משתמש אז זה עשוי להיות דומה תכנות תוכנה קלאסית C / C + + שבו ספריות כלולים עם ספריות נוספות.
תוכלו למצוא דיון מעניין ב- GitHub בנושא זה ואת הערך שהוא מציע למפתחי אינטרנט מודרניים. מעניק כלים אחרים לניהול JS כמו webpack יש צץ, RequireJS עדיין עובד בסביבות הייצור. ואם זה עובד בשבילך זה כל מה שחשוב.
5. ריבה
ניהול החבילות מבוסס דפדפן מגיע בצורה חדשה עם JamJS. זהו מנהל חבילת JavaScript עם ניהול אוטומטי דומה RequireJS.
כל התלות שלך הם משך לתוך קובץ JS יחיד המאפשר לך להוסיף ולהסיר פריטים במהירות. בנוסף לכך, ניתן לעדכן אותם בדפדפן ללא קשר לכלים אחרים שבהם אתה משתמש (כמו RequireJS).
הספריות מתעדכנות על בסיס הגרסאות העדכניות ביותר דרך המסוף. כל פרויקט יכול להיות שנוצר באופן אוטומטי עם רכיבים אופטימיזציה מבוסס על הצרכים שלך. ריבה היא בחינם על GitHub ו שווה מבט אם יש לך את הזמן.
6. Browserify
רוב המפתחים יודעים של Browserify גם אם זה לא חלק של העבודה שלהם טיפוסי. זהו עוד כלי ניהול תלות אשר מייעל מודולים הנדרשים וספריות ידי bundling אותם יחד.
צרורות אלה נתמך בדפדפן מה שאומר שאתה יכול לכלול ולמזג מודולים עם JavaScript רגיל. כל מה שאתה צריך הוא NPM כדי להתחיל ואז Browserify כדי לקבל זז.
עיין במדריך מבוא זה כדי לראות כיצד הצומת יכול להיות מנוהל ישירות בדפדפן. יש גם מדריך ארוך Browserify מתארח על GitHub בחינם. הרעיון הוא להביא את כל אלה כלי הצומת לתוך הדפדפן לחסוך זמן על ידי אוטומציה של התהליך עם Browserify.
7. מנטרי
עדיין בשלבים המוקדמים של הצמיחה שלה, MantriJS היא מערכת תלות עבור יישומי אינטרנט ברמה בינונית עד גבוהה. התלות מנוהלת באמצעות מרחבי שמות ו מאורגן באופן פונקציונלי כדי למנוע התנגשויות ולהפחית את העומס.
Mantri נמצא כרגע v0.2.2 בזמן הכתיבה. זה לגמרי קוד פתוח ו שנבנה עבור יישומי אינטרנט מורכבים יותר הדורשים חבילות גדולות של תלות. Mantri שואפת לעקוב אחר שיטות תכנות מודולריות ומקווה לעודד מפתחים על אותו נתיב.
8. וולו
כלי ניהול הפרויקט הוא וולו קוד פתוח NPM ריפו שיכול ליצור פרויקטים, להוסיף ספריות, ולהפוך זרימות עבודה אוטומטיות.
וולו פועל בתוך הצומת והוא מסתמך על JavaScript לניהול הפרויקט. מדריך מבוא קצר ניתן למצוא ב- GitHub המסביר את תהליך ההתקנה ואת השימוש הנפוץ. לדוגמה, אם אתה מפעיל את הפקודה ליצור
אתה יכול להצמיד כל ספריה כמו HTML5 Boilerplate.
אבל מלבד יצירת פרויקטים חדשים אתה יכול גם הוסף / עדכן ספריות עבור פרויקטים ישנים יותר. וולו קשרים לתוך כל מה שאתה צריך לפיתוח frontend. בדוק את מטרות התכנון של וולו כדי לראות כיצד היא פועלת בפרויקט בעולם האמיתי.
9. אנדר
אנדר הוא “ללא ספריה” הוא אחד המנהלים החבילה הקלה ביותר שתמצא באינטרנט. זה מאפשר devs ל חיפוש באמצעות חבילות JS ולהתקין / לקמפל אותם משורת הפקודה. אנדר נחשב “אחותו הקטנה של NPM” על ידי צוות dev.
באופן טבעי את כל מסגרת אנדר זמין בחינם על GitHub. זה פשוט כלי שאתה מתקין כדי לעזור ניהול הצריכה של Frontend JavaScript מסגרות עבור פרויקטים מקומיים. הכל נועד לרוץ בקלות על מלוא הפוטנציאל של עבודה מול המפתחים של העבודה.
לאתר הראשי של אנדר יש תיעוד איכותי, לכן כדאי להציץ אם אתה מעוניין.
10. pip
השיטה המומלצת להתקנת תלות פייתון היא דרך פיפ. כלי זה נוצר על ידי פייתון אריזות הרשות וזה לגמרי קוד פתוח בדיוק כמו Python עצמה.
רוב מפתחי Python ממליצים פיפ עבור תלות, כולל צוות Django. בין אם אתה רק מתחיל עם Python או כבר להשתמש בו באופן עקבי עם backend פיתוח, זה מנהל החבילה אתה תהיה שמח יש את הכלים שלך.
11. מלחין
Composer הוא מנהל חבילה דומה מאוד ל- NPM, אבל הוא מתמקד אך ורק בספריות PHP. אתה יכול למצוא רשימה של תלות Packagist אשר כולל מסגרות PHP גדולים כגון Larevel.
אם אתה מפתח PHP מכל סוג אני ממליצה ברצינות להסתכל לתוך מלחין. זה קל להתחיל אבל קשה להתאים לתוך העבודה שלך. עם זאת בפועל זה יהפוך מצרך עבור פרויקטים dev dev.
זהו כלי רב-תכליתי עם פוטנציאל לגדול עוד יותר בזמן. בנוסף NPM יכול לערבב עם מלחין ליצור Frontend + backend תלות מערכת ניהול לכל הפרויקטים PHP / JS.
מסיימים
זה ברור רבים של מנהלי התלות האלה יש תכונות דומות עם תכונות דומות. חלקם בנויים לפתור בעיות חלופיות והם יכולים גם לרוץ יחד זה עם זה (כלומר מלחין ו NPM).
הנושא של ניהול תלות יכול להיות קשה עבור מפתחים חדשים. אני ממליץ לבחור אחד הכלים האלה ולחקור לעומק ללמוד כמה שיותר. נסה לבנות webapps קטנים ולמד מדוע ניהול התלות שימושי.
ברגע שאתה לומד כיצד ליישם את הכלים האלה לתוך העבודה שלך אתה לעולם לא תשקול לחזור.