Architecture Decision Record

Active theme: Light

← דוגמאות לרשומות החלטה

רשומת החלטה ארכיטקטונית: snake_case לעומת camelCase ב-REST API?

החלטה: מוסכמת השמות snake_case תשמש לנקודות הקצה של REST API

מצב: התקבלה

הקשר

במוסכמות שמות ל-REST API יש שני פורמטים פופולריים: snake_case ו-camelCase. בפורמט snake_case כל מילה בשם מופרדת בקווים תחתונים, ואילו ב-camelCase המילה הראשונה בשם באותיות קטנות, ולמילים הבאות האות הראשונה גדולה. ההחלטה הזו תקבע באיזו מוסכמת שמות להשתמש ב-REST API.

גורמים מניעים להחלטה

  • עקביות עם מוסכמות השמות הקיימות בפרויקט

  • קריאות ובהירות לכל מי שעשוי לעבוד על ה-API

  • התאמה לשיטות העבודה המומלצות בתעשייה למוסכמות שמות ב-REST API

  • קלות מימוש ותחזוקה

החלטה

מוסכמת השמות snake_case תשמש לנקודות הקצה של REST API. הבחירה הזו מונעת מהגורמים הבאים:

  1. עקביות: הפרויקט כבר משתמש במוסכמת השמות snake_case לכל נקודות הקצה, ויהיה מועיל לשמור על המוסכמה הזו כדי להבטיח עקביות בכל הפרויקט.

  2. קריאות ובהירות: מוסכמת snake_case קריאה יותר וקלה יותר להבנה. הקווים התחתונים מספקים הפרדה ברורה בין מילים, מה שמקל על ניתוח השם והבנת משמעותו.

  3. התאמה לשיטות העבודה המומלצות בתעשייה: מוסכמת snake_case נמצאת בשימוש נרחב בתעשייה ונחשבת לשיטת עבודה מומלצת ל-REST API, מה שהופך אותה לבחירה טובה לפרויקט.

  4. קלות מימוש ותחזוקה: המשך עם מוסכמת השמות הקיימת קל יותר למימוש ולתחזוקה, שכן אם תיבחר מוסכמה חדשה יהיה צורך לעדכן את כל הקוד והתיעוד הקיימים.

השלכות

יש השלכות אפשריות להחלטה הזו.

  • אם חברי צוות חדשים שמצטרפים לפרויקט אינם מכירים את מוסכמת השמות snake_case, הדבר עלול להוביל לבלבול ולטעויות בפיתוח. עם זאת, מכיוון ש-snake_case היא מוסכמה בשימוש נרחב, הסיכון הזה מינימלי.

  • אם בפרויקט משתמשים בכלים או במסגרות אחרים המבוססים בכבדות על מוסכמת camelCase, ייתכן שיידרש מאמץ נוסף להמיר בין מוסכמות השמות. עם זאת, זו אינה דאגה משמעותית מפני שהפרויקט תיקנן את מוסכמת snake_case.

בסך הכול, ההחלטה להשתמש במוסכמת השמות snake_case לנקודות הקצה של REST API מובילה לגישה עקבית, קריאה ותואמת תקן בתעשייה, תוך כדי שהיא קלה למימוש ולתחזוקה.

קרדיט: הדף הזה נוצר על ידי ChatGPT, ואז נערך לצורך בהירות ופורמט.