Page 1 of 1

לוקאס הולצר: אז יורי, מהן כמה תפיסות שגויות נפוצות לגבי מונורפוס?

Posted: Mon Dec 23, 2024 10:03 am
by asikurrahmanshuvo
אבטחה: דחיפה של עדכוני אבטחה קריטיים יכולה להיות חיונית עבור ארגון. במונורפו זה עניין של עדכון/תיקון של החלקים המושפעים ופריסה של גרסאות חדשות לייצור. צריך לדחוף עדכון אבטחה? שחרור חבילות NPM מתוקנות ובמיוחד פנייה לצוותים כדי לעדכן את התלות שלהם יכול להיות איטי. זה פחות טרחה במונורפו. זה בדרך כלל כולל תיקון/עדכון של החלקים המושפעים בסניף ייעודי, שליחת יחסי ציבור לסניף הראשי ושחרור האפליקציות או הספריות המושפעות.
גרסה מאוחדת: עם monorepo, אתה יכול לגלגל עם גרסאות מרובות או יחידות, בהתאם לצרכים שלך. עם זאת, על ידי שמירת גירסאות מסונכרנות בין פרויקטים, אתה יכול לעקוף רבים מכאבי הראש הרגילים של סכסוך גרסאות.

מונורפו בולט לא רק ביכולת שלו לאתר קוד ביחד, אלא גם בהצגת מערכות יחסים מוגדרות ושיפור הכלים למיטוב בנייה והרצות בדיקה. יכולות אלו מיוחסות במידה רבה למערכות הבנייה, לעתים קרובות שם נרדף לכלי monorepo. במערכת האקולוגית של JavaScript, השחקנים המובילים כוללים את Nx, Lerna ו-TurboRepo.

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

כדי להמשיך ולחקור את חווית המונורפו ב-Netlify, אנו נרגשים להציג את Juri Strumpflohner . כמומחה למפתחים של Google וכמנהל בכיר של חוויית מפתחים ב-Nx, Juri מצויד בצורה מושלמת להדריך אותנו דרך היתרונות ש-Nx יכולה להביא לעבודה בארגונים בקנה מידה גדול.

ג'ורי סטרומפפלהנר: קודם כל, יש הרבה בעיות עם השם. לעתים קרובות אני מעדיף במקום זאת חנות את המונח "מאגר מרובה פרויקטים" . הבעיה היא שאנשים חושבים שזה מיועד לבניית בסיס קוד מונוליטי מכיוון שיש לך את כל הקוד שלך במאגר אחד. ומכאן שהם חוששים שהם בסופו של דבר לא יוכלו לפרוס באופן עצמאי או לאבד הרבה חופש בתהליך ההתפתחות בתוך מונורפו. שניהם לא נכונים. טעות נפוצה נוספת היא זו של מה שמכונה "חברות מונורפו" . שמעתי את המונח הזה לאחרונה, והוא מציין חברה שבה כל הקוד נמצא במונורופו אחד ענק. מניסיוני, זה קורה לעתים רחוקות, אפילו בארגונים גדולים. בדרך כלל, מה שאתה מוצא הוא מצב מעורב עם מספר פוטנציאל של מונו-ריפו וכמה "פולי-repos" ואתה עדיין חולק קצת קוד ביניהם באמצעות חפצי בנייה עטופים כחבילות (למשל NPM עבור מערכת האקולוגית JS).

לוקאס הולצר: אז אתה אומר שכולם צריכים להשתמש במונורפו? מתי כדאי ללכת על מונורפו, ומהם האתגרים הנפוצים שראית?

יורי סטרומפפלהנר: לא, כמו ברוב הדברים בפיתוח תוכנה, זה לא פתרון אחד שמתאים לכולם. זה הכי הגיוני שיהיה לך מונורפו כשיש לך פרויקטים קצת קשורים, או בגלל שהם חלק ממוצר או חווית משתמש גדולים יותר או בגלל שהם שייכים לאותה יחידה ארגונית. מה שאתה רוצה להשיג הוא לעזור להקל על התקשורת ושיתוף הפעולה בין צוותים קרובים ובכך לדחוף את הפרודוקטיביות שלהם. רוב האתגרים שראיתי נובעים מגישה תמימה למונורפו. צריך להיות קצת תכנון של איך אתה רוצה לבנות את המונורפו, איך להגדיר גבולות בין פרויקטים במונורפו, ואיך להגדיר CI ביעילות. כאן גם נכנסים למקום כלי מונורפו. אתה יכול בקלות ללכת רק עם יכולות monorepo המובנות במנהלי חבילות JS הנפוצים כמו סביבות עבודה של NPM, Yarn או PNPM. ובכל זאת, בטווח הארוך, אולי כדאי לך לבדוק כלי עבודה מתוחכמים יותר.