מה השפה הבאה שכדאי ללמוד?
-
@MusiCode אמר במה השפה הבאה שכדאי ללמוד?:
(חוץ מהשאלה שתמיד מנקרת לי בראש:
למערכות ב'ימות', לא עדיף פייתון, היות והוא גם שרת וגם שפת הסקריפט? ככה אוכל לשמור משתנים על שיחה בזיכרון, ללא DB. אשמח שמישהו יגיד לי על חסרונות בצורת עבודה הזאת, אם יש.
לאתר רגיל, הבנתי שלקבצים הסטטיים זה לא מומלץ. אבל לסקריפט בלבד? אם זה טוב, אז אני אעבור, כי השפה הזו משמשת להרבה דברים היום.)לפני שיאמרו לך את החסרונות תגיד מה המעלות
ביצועים? מהירות פיתוח? -
@nigun אמר במה השפה הבאה שכדאי ללמוד?:
לפני שיאמרו לך את החסרונות תגיד מה המעלות
ביצועים? מהירות פיתוח?אמרתי: שאוכל לשמור משתנים בזיכרון בין קריאה לקריאה.
וכך אוכל ליצור איזו מחלקה שתת לי לתכנת נורמלי, משהו כזה:call = new yemotCall(apiCallId) call.playFile("file") call.read("file", 1, 5, ...) call.goToFolder("/7/8") call.hangup()
ויהיה איזה משתנה גלובלי שיגיד תמיד איפה הסקריפט עומד, לכל מזהה שיחה.
אני לא סגרתי על פייתון, אולי אפשר גם בנוד,
אבל אם אפשרי בפייתון, אני מעדיף, כי אני מכיר אותה קצת, וגם שהידע ישמש לעוד סוגי פרוייקטים. -
תכנתת מערכת ע"י API ימות?
אם כן, אתה לא אמור לשאול...
זה נראה משהו כזה:if(isset($_GET["var_b"]) && $_GET["var_b"] == "1") { ... } else if(isset($_GET["var_a"]) && $_GET["var_b"] == "1"){ ... } else { ... }
ובעברית:
לאורך כל הסקריפט אתה צריך לבדוק איפה המאזין נמצא לאורך הסקריפט (- אם המשתנה B קיים, ... אם לא, אם המשתנה A קיים ... אם לא, זה תחילת הסקריפט).
אני לא עובד ככה, יש לי פתרונות מעט פחות מכוערים, אבל עדיין זה מסורבל.אם הייתה כזו מחלקה כמו שכתבתי מקודם,
זה היה עצום!
אם הייתי גובה שקל מכל פרוייקט שהיה משתמש בזה... -
לדוגמא:
כל שיחה נכנסת תיצור משתנה שאפשר לגשת אליו עם המזהה, ושם יהיה כתוב מספר. 0 כרגע.
כל פקודה שמבוצעת ע"י המחלקה, מעלה את הערך ב-1.
ובכל פקודה שמבוצעת ע"י המחלקה, המחלקה תבדוק מה המספר, ואם מספר הפקודה נמוך ממספר המשתנה, הפקודה לא תתבצע (ואולי ערך ההחזרה שלה יישלף מהזיכרון), ויעבור לפקודה הבאה.זה קצת מצחיק, אבל אם זה יעבוד, זה שווה.
למעשה גם היום אפשר לעשות את זה עם הDB, אבל אם אפשר בזיכרון, למה לא?...
-
שהקוד ייראה ככה:
@MusiCode אמר במה השפה הבאה שכדאי ללמוד?:call = new yemotCall(apiCallId) call.playFile("file") call.read("file", 1, 5, ...) call.goToFolder("/7/8") call.hangup()
הפקודות כתובות לפי הסדר שהם קורות. כמו שצריך.
ואפשר לעשות שהמשתנים יימחקו בסוף הסקריפט.
-