Anonymous : |
התכוונתי לשאול - למרות שאני לא מכיר golang ואני מבין את העוצמה שיש ל Go routines
אבל האם c++ מודרני עם ספריות של thread pool, ו queue לזמן אמת - יכול להיות פיתרון מנציח ויותר סטנדרטי? |
הם לא זהים לרעיון של co-routines.
אבל זה לא כל מה שיש לGo להציע. זו שפה מאוד "פשוטה", אבל היא משקרת בזה.
כי למעשה התחביר מאוד פשוט וקל (יחסית ל ++C), אבל שימוש נכון בו דורש הבנה עמוקה בדברים.
אפשר לחשוב על Go כשפה חצי דינאמית שעובדת מהר (תלוי במימוש כמובן), וניתנת לשליטה גבוהה יותר בדברים שבשפות דינאמיות אמיתיות יותר קשה יותר לקבל שליטה אם בכלל.
++C לא כזו, והיא כמעט מתאימה לתכנות מערכת. הבעיה היא שהיא מאוד מסובכת לתחזוקה ולכתיבה, וקל ליפול בה על דברים "מטומטמים" כמו שחרור כפול של זכרון, שיבוש מידע לthreads כי מעבירים לא נכון את המידע, גישה לאינדקס לא קיים שמספק גישה לזיכרון ה"חופשי" וזו רשימה מאוד קטנה וחלקית של בעיות ואפילו לא מדוייקת עד הסוף, אלא ניסיון להציג את הבעיתיות של ההשוואה.