<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[סטנדרטים של תגובות בפונקציה.]]></title><description><![CDATA[<p dir="auto">שלום.<br />
אני רוצה לדעת מה מקובל להחזיר בתגובה לאחר שפונקציה החזירה שהבקשה שניסיתי לבצע לא הצליחה מסיבה של הכללים שאני החלטתי במערכת,  ולא שגיאה של בעיה.<br />
למשל זה ניסיתי לשמור מקום , והמקום כבר תפוס.<br />
האם מחזירים ERROR   או סטטוס אחר .<br />
תודה רבה</p>
]]></description><link>https://tchumim.com/topic/17564/סטנדרטים-של-תגובות-בפונקציה.</link><generator>RSS for Node</generator><lastBuildDate>Fri, 03 Jul 2026 13:26:39 GMT</lastBuildDate><atom:link href="https://tchumim.com/topic/17564.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 03 Jul 2026 07:54:19 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to סטנדרטים של תגובות בפונקציה. on Fri, 03 Jul 2026 11:51:39 GMT]]></title><description><![CDATA[<p dir="auto">זו שאלה יסודית מאוד בתכנות.<br />
כל פעם שהפעולה הרצויה של רוטינה/פונקציה (ובמילים פשוטות קטע קוד) לא קרה, אפילו מסיבות צפויות,<br />
יש שאלה איך ליידע את הקוד מסביב.<br />
הדרך הפשוטה שמפתחים בתחילת דרכם חושבים, היא לפעול בתוך הקוד בהתאם לבעיה<br />
מה שגורם לכך שלאט לאט כל ההתנהגות מסביב נכנסת לתוך הרוטינה שלנו מה שהופך אותה להיות בלתי שמישה לסיטואציה אחרת, ו/או מסורבלת וקשה מאוד לתחזוקה.<br />
הדרך השניה, שבמקרים רבים פועלים ככה, היא להחזיר/לעדכן את הקוד מסביב בהצלחה/כישלון, ולפעמים גם למה לא.<br />
זה לגיטימי, אבל קצת מסבך את החיים: אם פונקציה אמורה להחזיר מספר, אז מוספים עוד ערך חוזר שהוא מינוס או שהפונקציה מחזירה סט משתנים שבהם אחד מייצג error - כלומר הייתה בעיה, או success לומר שלא הייתה. הדרך הזו מוכרת בnode בסגנון טרום הפרומייס, או בTryXXX של דוטנט, ובgo זה הסטנדרט של כל פונקציה. למה לא? אני לא אוהב את הדרך הזאת, וכנראה שיש לה חסרונות מהותיים יותר שאני לא יודע לבטא.<br />
הדרך השלישית היא המושג Exception. הפירוש של המילה הוא "חריגה". זה לא שגיאה, אלא כל מצב שהוא לא התכנית ה"נורמלית" של הרוטינה. איך משתמשים? כל מצב חריג, "זורקים" "חריגה", שאפשר לתת לה מידע עשיר שיסביר מה הבעיה.<br />
המילה זורקים (אולי המילה היא מעיפים) כי הרעיון הוא שזה עוצר הכל, בטוחים שכל קוד בהמשך לא יפעל בלי החלטה מושכלת.<br />
בקוד הקורא, המפתח יכול לבחור אם הוא צופה את החריגה הזזו, ואם כן לעטוף את הקוד בלכידת חריגות בה הוא מחליט מה לעשות לפי החריגה.<br />
זה משהו שלוקח זמן לקלוט את מעלותיו.</p>
<p dir="auto">בשלושת הדרכים האלו, הראשונה כמעט תמיד שלילית.<br />
השניה טובה מאוד למקרים יחסית צפויים, כמו ניסיון להמיר טקסט לא ידוע למספר,<br />
הדרך השלישית מצויינת עבור מקרי קצה, כלומר שגיאות שממש לו חלק מהלוגיקה העסקית אלא "פשלות": טעויות מפתח, מצבי חומרה  (דיסק מלא, רשת).</p>
]]></description><link>https://tchumim.com/post/171559</link><guid isPermaLink="true">https://tchumim.com/post/171559</guid><dc:creator><![CDATA[dovid]]></dc:creator><pubDate>Fri, 03 Jul 2026 11:51:39 GMT</pubDate></item><item><title><![CDATA[Reply to סטנדרטים של תגובות בפונקציה. on Fri, 03 Jul 2026 08:26:58 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/yossiz">@<bdi>yossiz</bdi></a><br />
אני לא מדבר על HTTP אני מדבר על תגובה של הפונקציה עצמה</p>
]]></description><link>https://tchumim.com/post/171558</link><guid isPermaLink="true">https://tchumim.com/post/171558</guid><dc:creator><![CDATA[ek0583232948]]></dc:creator><pubDate>Fri, 03 Jul 2026 08:26:58 GMT</pubDate></item><item><title><![CDATA[Reply to סטנדרטים של תגובות בפונקציה. on Fri, 03 Jul 2026 08:22:46 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/ek0583232948">@<bdi>ek0583232948</bdi></a> אתה שואל לגבי תשובת HTTP?<br />
בכל מקרה שהבקשה לא הצליחה מחזירים סטטוס של שגיאה<br />
הסדרה של שגיאות 400-499 מיועדות עבור שגיאות שקשורות לבקשה ספציפית זו, כלומר, או הבקשה לא בנויה בצורה חוקית, או המשאבים או הפעולות שהבקשה מתייחסת אליהם לא קיימים/תפוסים<br />
הסדרה 500-599 מיועדת עבור שגיאות בצד שרת, באג בקוד, בעיה בגישה ל-DB וכדומה</p>
<blockquote>
<p dir="auto">למשל זה ניסיתי לשמור מקום , והמקום כבר תפוס</p>
</blockquote>
<p dir="auto">אפשר להשתמש ב-403 Forbidden<br />
או 409 Conflict</p>
<blockquote>
<p dir="auto">שם מקום שלא קיים</p>
</blockquote>
<p dir="auto">404 בד"כ</p>
<p dir="auto">לקריאה נוספת<br />
<a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status" target="_blank" rel="noopener noreferrer nofollow ugc">https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status</a></p>
]]></description><link>https://tchumim.com/post/171557</link><guid isPermaLink="true">https://tchumim.com/post/171557</guid><dc:creator><![CDATA[yossiz]]></dc:creator><pubDate>Fri, 03 Jul 2026 08:22:46 GMT</pubDate></item><item><title><![CDATA[Reply to סטנדרטים של תגובות בפונקציה. on Fri, 03 Jul 2026 08:11:38 GMT]]></title><description><![CDATA[<p dir="auto">כמו כן, אשמח לדעת מה התגובה המקובלת אם המשתמש הזין נתון לא נכון .<br />
למשל, שם מקום שלא קיים (אני עובד מו המשתמש בIVR ולכן זה לא משהו שאפשר לבדוק לפני שליחה)</p>
]]></description><link>https://tchumim.com/post/171556</link><guid isPermaLink="true">https://tchumim.com/post/171556</guid><dc:creator><![CDATA[ek0583232948]]></dc:creator><pubDate>Fri, 03 Jul 2026 08:11:38 GMT</pubDate></item></channel></rss>