בניית תוכנה

הנדסת תוכנה
ערך זה הוא חלק מקטגוריית הנדסת תוכנה


מתכנת בעבודתו

פעילויות ושלבים
דרישותניתוחאפיוןארכיטקטורהעיצובתכנותדיבוגבדיקהאימותבנייהפריסה • תפעול • תחזוקה
מתודולוגיות
זריזותמפל המיםתכנת ותקן • Crystal Clear • ScrumUnified ProcessExtreme Programmingאינטגרציה רציפהDevOps
תחומים תומכים
ניהול פרויקטים • ניהול תצורה • תיעודהבטחת איכות • Profiling
כלים
מהדרמקשרמפרשIDEניהול גרסאותאוטומציית בנייה

במדעי המחשב, המושג בניית תוכנהאנגלית: software build, או בקיצור build) מתייחס לתהליך של הפיכת קובצי קוד מקור לתוצרי תוכנה עצמאיים (standalone) הניתנים להרצה על מחשב. כמו כן, המושג יכול להתייחס גם לתוצר עצמו של תהליך זה. אחד השלבים העיקריים של בניית תוכנה הוא תהליך ההידור (קומפילציה), בו קובצי קוד מקור הופכים לקוד הניתן להרצה (executable code).

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

תהליך בניית התוכנה מנוהל בדרך כלל על ידי כלי לאוטומציה של בניית תוכנה (build tool) - תוכנה אשר שולטת באופן אוטומטי על תוכנות אחרות ומתאמת את הפעילות שלהן. דוגמאות לתוכנות כאלה הן: Make, Maven, Gradle, Ant. הכלי לבניית תוכנה צריך להדר ולקשור את הקבצים השונים, בסדר הנכון. אם קוד המקור בקובץ מסוים לא השתנה, ייתכן שאין צורך להדר אותו מחדש (עם זאת, ייתכן שבכל זאת יהיה צורך להדר אותו מחדש אם הוא תלוי בקבצים אחרים שנעשה שינוי בקוד המקור שלהם). כלים חכמים לבניית תוכנה מנסים להימנע מלהדר מחדש קוד שאינו דורש זאת, על מנת לחסוך בזמן הנדרש לביצוע הבנייה. כלי בנייה מודרניים יכולים להיות משולבים בתוך תוכנות לניהול גרסאות כדוגמת Subversion. תהליך מורכב יותר עשוי לכלול גם תוכנות נוספות המפיקות קוד או נתונים עבור תהליך הבנייה.

ראו גם

This article is issued from Hamichlol. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.