כמה עוד 15.05.1910:04

עזרה עם code review למשהו שכתבתי

אני כרגע עושה פרויקט שאני המפתח היחיד בצוות, אז אין לי את מי לשאול כל כך.
רציתי לבקש את עזרתכם איך לשפר את הקטע קוד הבא-
הבנתי שעדיף לא לעשות return בתוך קטע של catch, ובכלל לא לתת ל try catch להכתיב את ה- flow של התוכנית.
מה שקורה בקוד זה שאני בודק האם משהו נמצא במנגון cache שלי, במידה ולא - אני קורא אותו מהכונן הקשיח ועושה השמה ב cache.
הסיבה שאני משתמש ב try ו- catch זה בגלל פעולת הקריאה מהכונן הקשיח.



איך הייתם משנים את הקוד? או שאולי הוא כן בסדר לפי עקרונות best practice?
תודה אלון


Mr Andersson 15.05.1910:14
1. מבחינת best practice לא נהוג לתפוס exception כללי בתגובה להודעה מספר 0
אתה יודע מה אתה עושה בקוד, ולכן אתה יודע לאיזה שגיאה לצפות, אז עדיף לתפוס את הexception הספציפי שייזרק
כמה עוד 15.05.1910:28
2. תודה על התגובה. אם תאורתית יש סיכוי שווה שיחזור לי אחד מ3 סוגי אקספשן? בתגובה להודעה מספר 1
נגיד אחת מאלה יכולה לקפוץ לי:
בעיה בנתיב של הקובץ
בעיה עם הטקסט בתוך הקובץ
בעיה עם הקידוד (UTF או משהו כזה בקובץ)
?
Mr Andersson 15.05.1910:49
3. אתה יכול לתפוס את שלושתם בשורה אחת או לתפוס כל אחד בנפרד בתגובה להודעה מספר 2
אם הטיפול הוא זהה בכל השגיאות אז תתפוס את שלושתם בשורה אחת

חוץ מזה הקוד נראה בסדר גמור לדעתי
Zeet3x 15.05.1922:00
4. ואיך אתה יודע את זה לפי ההודעת שגיאה שאתה מחזיר? בתגובה להודעה מספר 2
אתה מחזיר הודעת שגיאה שתואמת לבעיה הראשונה.. אם מה שאתה אומר נכון ונזרקת שגיאה בגלל בעיה בטקסט אז אי אפשר לדעת.
הייתי גם עושה משתנה csv_suffix = '.csv' אבל זה באמת קטנוני.
Simple 15.06.1915:48
6. לפי סוג האקספשן שנזרק לא לפי הודעת השגיאה בתגובה להודעה מספר 4
אם הבנתי אותך נכון
Simple 15.06.1915:46
5. כמו שרשמו לך על האקספשנים ובנוסף אני הייתי משתמש בטמפלייט בתגובה להודעה מספר 0

ערכתי לאחרונה בתאריך 15.06.19 בשעה 15:55 בברכה, Simple

עבור הקריאה של הקובץ csv.
אני לא מתכנת בפייתון אז לא בטוח לגבי הסינטקס ומתעצל לבדוק אבל נניח ככה:
{1}/{0}.csv

זה קצת יותר קריא בעיניי.
בנוסף הייתי עושה קובץ של כל הסטרינגים בפרוייקט ושם בתוכו את הmessage שלך-
'cant...' במקום לרשום ככה ומשתמש בkey שנתת לסטרינג בקובץ ה סטרינגים.
הסיבה לכך היא שזה הרבה יותר קל לתחזוק ול reuse
אגב אם יש לך localization של הסטרינג לשפות אחרות קובץ הסטרינגים יעשה לך עבודה קלה
@כמה עוד@
כמה עוד 15.06.1916:03
7. תודה! בתגובה להודעה מספר 0
העבר לפורום אחר
העבר לפורום:
סיבה:
תגובה חדשה
כותרת:
תוכן:
סמיילים:
הצג
עריכת אשכול
כותרת:
תוכן:
סמיילים:
הצג