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