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

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. C# או NODE.JS

C# או NODE.JS

מתוזמן נעוץ נעול הועבר תכנות
51 פוסטים 9 כותבים 2.2k צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • yossizY מנותק
    yossizY מנותק
    yossiz
    השיב לשואף ב נערך לאחרונה על ידי yossiz
    #2

    @שואף אני כותב כרגע בנוד ולא ב-#C אז אני פסול לדון. (ויותר מזה, אני מכיר את #C רק מההיבט של תוכנות דסקטופ ולא מההיבט של שרתים)
    רק אביא כמה שיקולים לטובת נוד.

    • אני אישית נהנה מאוד מ-JS
    • שפת JS היא השפה הכי פופולארית בעולם (מבחינת כמות השימוש/כתיבה - לא בהכרח מבחינת סיפוק המפתחים)
    • ידע ב-JS יעזור לך בפרונט אנד ובבק אנד
    • ייתכן שאתה כבר מכיר את השפה. ואם לא נראה לי שקל יותר ללמוד JS מאשר ל-#C. לימוד #C כולל גם לימוד השפה וגם הכרת חלקים מה-standard library ו(תלוי מה אתה רוצה לעשות) פריימוורקים. (כמובן לא צריך - ובלתי אפשרי - ללמוד את הכל, זו סביבה ענקית)
    • JS לא נשלט על ידי חברה אחת. נוד היא cross platform אמיתי. (לאחרונה גם דוטנט חוצה פלטפורמות אבל יש הגבלות ושינויים בין פלטפורמה לפלטפורמה)
    • שפת JS היא יותר high level. מה שאומר שאפשר להשיג יותר שימושיות בפחות קוד ו-boiler plate. (זה השיקול העיקרי נ"ל, אבל אולי אני טועה בזה כי אין לי נסיון כתיבה ב-#C, רק נסיון קריאה...)

    למרות הנ"ל, נראה לי ש-#C היא יותר שפת תכנות אמיתית לעומת JS שהיא שפת סקריפט...

    עכשיו יבוא דוד לעזרת #C...

    נ.ב. אני מבין שהשאלה היתה לענין פיתוח לסביבת שרת, אם היה מדובר בפיתוח דסקטופ בווינדוס בלי ספק הייתי ממליץ על #C

    📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

    תגובה 1 תגובה אחרונה
    8
    • שואףש מנותק
      שואףש מנותק
      שואף
      כתב ב נערך לאחרונה על ידי
      #3

      תודה @yossiz על התגובה המפורטת
      מה שמעצבן בNODE (אני לא יודע איך זה בC#), זה שכדי להתחיל לכתוב משהו פשוט, צריך המון המון קוד שאני בנתיים לא מבין.
      אני לומד איזה מדריך, והוא אומר תתקין כך וכך חבילות, תדביק כל מיני קבצים, ואז פה תרשום פונקציה.
      בPHP אני כותב חמש שורות ויש לי תוצאה. אין שום דבר מסביב.
      לא אומר שזה שיקול נגד NODE כל כך. רק זה מכביד את הלימוד ומרגיש שזה דבר מסורבל.

      ליצירת קשר: admin@i-call.me

      הידד! גישה למייל גם בלי מחשב ואינטרנט!

      תגובה 1 תגובה אחרונה
      0
      • yossizY מנותק
        yossizY מנותק
        yossiz
        כתב ב נערך לאחרונה על ידי yossiz
        #4

        @שואף אמר בC# או NODE.JS:

        אני לומד איזה מדריך, והוא אומר תתקין כך וכך חבילות, תדביק כל מיני קבצים, ואז פה תרשום פונקציה.

        גם ב-PHP יש חבילות אבל לא חייבים להשתמש בהם. אז ככה גם בנוד אפשר לכתוב שרת HTTP פשוט בלי שום חבילה חוץ מהמובנים. עיין במדריך של @dovid לדוגמה.
        אפשר לכתוב קובץ אחד, ולהריץ אותו ישירות על ידי node script.js ולא להשתמש ב-NPM.
        אבל בפועל אם רוצים להתקין חבילות צריך להשתמש ב-NPM (שזה מוסיף קובץ package.json ותיקיית node_modules). בפועל תמיד משתמשים ב-express, שזו חבילה אחת. איזה עוד חבילה אומרים לך להתקין?

        📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

        תגובה 1 תגובה אחרונה
        3
        • שואףש מנותק
          שואףש מנותק
          שואף
          כתב ב נערך לאחרונה על ידי שואף
          #5

          לכאורה אני לא צריך EXPRESS כי זה בשביל משימות שרצות על השרת, לא להציג אתר בדפדפן.
          התחלתי עם מדריך כבד לבניית אתר מכירות. זה באמת לא מתאים בשבילי כרגע (רק זה בצרפתית 😊 )
          עכשיו אני עובר על https://www.w3schools.com/nodejs/nodejs_filesystem.asp
          יש שם את הבסיס וזה בדיוק מה שחיפשתי.

          ליצירת קשר: admin@i-call.me

          הידד! גישה למייל גם בלי מחשב ואינטרנט!

          yossizY תגובה 1 תגובה אחרונה
          0
          • yossizY מנותק
            yossizY מנותק
            yossiz
            השיב לשואף ב נערך לאחרונה על ידי yossiz
            #6

            @שואף למה אתה בטוח שאי אפשר לעשות את זה ב-PHP?
            מה בדיוק הצרכים ואיזה מהם לא נתמך ב-PHP?

            📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

            תגובה 1 תגובה אחרונה
            0
            • שואףש מנותק
              שואףש מנותק
              שואף
              כתב ב נערך לאחרונה על ידי
              #7

              כמה משימות, שרצות כל הזמן, ובודקות נתונים ופועלות לפי זה.
              דוגמא, יש מסד נתונים עם הזמנות ממתינות, ולכל אחת יש תאריך מסוים, וברגע שמגיע התאריך שלה צריך לעשות פעולה.
              או פיזור הוצאת שיחות בין כמה מכונות, בודק כל הזמן כמה שיחות ממתינות להוצאה, וכמה כל מכונה יכולה לקבל (עשיתי על זה API מיוחד), ושליחה לכל מכונה לפי כמה שהיא מסוגלת לקבל.
              הבעייה שאין ממש אפשרות בPHP להריץ סקריפט ולתת לו להמשיך כל הזמן בלי הפסק.

              ואגב, אני מקווה להתקדם מספיק כדי גם להעביר את הAGI לשם, ולהרוויח את האנסינכרוני, שחסר לי בPHP.

              ליצירת קשר: admin@i-call.me

              הידד! גישה למייל גם בלי מחשב ואינטרנט!

              yossizY תגובה 1 תגובה אחרונה
              1
              • yossizY מנותק
                yossizY מנותק
                yossiz
                השיב לשואף ב נערך לאחרונה על ידי
                #8

                @שואף זה נשמע לי כמשימה כיפית ליכנס לנושא ולהוכיח לך שזה כן אפשרי ב-PHP אבל אין לי זמן לזה עכשיו...
                אבל האמת היא שלכאורה נוד יותר מתאים לזה.

                📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                תגובה 1 תגובה אחרונה
                3
                • שואףש מנותק
                  שואףש מנותק
                  שואף
                  כתב ב נערך לאחרונה על ידי
                  #9

                  אני יודע שזה אפשרי, כתבתי שאין "ממש" אפשרות כזו.
                  אפשר לבנות DAEMON ולהגדיר שירוץ ברקע כל הזמן.
                  ממה שהבנתי, ואשמח להווכח שהתבדתי, PHP לא כל כך מתאים לזה.

                  ליצירת קשר: admin@i-call.me

                  הידד! גישה למייל גם בלי מחשב ואינטרנט!

                  yossizY nigunN 2 תגובות תגובה אחרונה
                  0
                  • yossizY מנותק
                    yossizY מנותק
                    yossiz
                    השיב לשואף ב נערך לאחרונה על ידי yossiz
                    #10

                    @שואף PHP לא נבנתה מתחילה עבור שימוש כזה. אבל במשך חייה הארוכות PHP עברה כמה אבלוציות...
                    אני לא ממליץ על שימוש ב-PHP עבור, אבל בשקלול העלות/תועלת של האפשרויות קח בחשבון ש(לכאורה) זה אפשרי לגמרי ב-PHP.
                    תבדוק את זה:
                    https://amphp.org (עדיין לא פתוח בנטפרי, שלחתי בקשה לפתיחה)
                    https://reactphp.org (עדיין לא פתוח בנטפרי, שלחתי בקשה לפתיחה)
                    https://github.com/WyriHaximus/reactphp-cron

                    📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                    שואףש תגובה 1 תגובה אחרונה
                    4
                    • dovidD מחובר
                      dovidD מחובר
                      dovid ניהול
                      כתב ב נערך לאחרונה על ידי dovid
                      #11

                      קודם כל ספציפית איליך @שואף אני לא ממליץ כלום, מבחינתי אתה צריך להיות יותר אוהב תכנות ופחות ממוקד מטרה כדי להיות יכול לעבור פלטפורמה. בלי זה הכיוון שלך זה יותר איך למצוא את המקום שהכי הכי מוכן לעבודה כבר, ובזה אתה יכול להצליח אבל קשה לנו כמתכנתים (שאין להם דגש על ה"להכיר כמה שפחות מהר וכמה שפחות חומר") לכוון אותך.

                      באופן כללי, אני בהחלט ממליץ וכבר המלצתי על nodejs מבחינת שפה, בגלל השימושיות העצומה שיש היום לקוד JS.

                      מבחינת ארכיטקטורה, nodejs מאוד מאוד מתחיל מהקרשים, כל דבר מאוד מאוד "ידני" שמה, וזה מעלות וחסרונות, למי שPHP במקור זה למשל חיסרון בגלל שמעולם הוא לא התעסק עם המושג בקשה ותשובה וכו', הוא רוצה לגשת לבינזס קוד בלי שיפריעו לו עם עובדות בדרך.
                      בזה C# קצת יותר טוב, בגלל שבASP יש הפשטה לא רעה שמאפשרת טשטוש רב (אבל עדיין רחוק מPHP).

                      @yossiz אמר בC# או NODE.JS:

                      • שפת JS היא יותר high level. מה שאומר שאפשר להשיג יותר שימושיות בפחות קוד ו-boiler plate. (זה השיקול העיקרי נ"ל, אבל אולי אני טועה בזה כי אין לי נסיון כתיבה ב-#C, רק נסיון קריאה...)

                      אני ממש לא מסכים, תוכל לתת דוגמא? אני יכול לתת שפע של דוגמאות הפוכות. למשל המרות (למשל של תאריכים), עבודה עם אוספים, ועוד. הבעיה הזו אכן נמחקת עם שימוש בספריות, אבל קשה לי להבין איך הקערה מתהפכת לטובת JS.
                      אם אתה מתכוון לכמות התחביר הרבה של C#, כלומר טיפוסים מחלקות ובכלל כל הטיפוסיות הקשוחה, הגישה של המוגזמת של Exception handling, לזה אתה מתכוון? לא הייתי קורא לזה boiler plate אלא over-designed או over-engineered והשורה התחתונה של ריבוי קוד זה verbos (בגלל צורת העבודה של C# אני חושב שהיא תמיד תנצח את JS בזה - לJS יש "קבצים" (הן בכתיבה והן בשימוש) במקום מחלקות וזה יוצר הגבלות רבות על איפה ואיך לחלק את הקוד).

                      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                      בכל נושא אפשר ליצור קשר dovid@tchumim.com

                      שואףש yossizY 2 תגובות תגובה אחרונה
                      3
                      • nigunN מנותק
                        nigunN מנותק
                        nigun
                        השיב לשואף ב נערך לאחרונה על ידי
                        #12

                        @שואף
                        יש עוד חסרון בPHP במערכות VOIP
                        שאי אפשר להחזיק משתנים בזיכרון משותף לכל המופעים
                        ולפעמים שמירה פשוטה בזיכרון חוסכת הרבה כתיבות לדיסק.

                        מייל: nigun@duck.com

                        שואףש תגובה 1 תגובה אחרונה
                        3
                        • שואףש מנותק
                          שואףש מנותק
                          שואף
                          השיב לdovid ב נערך לאחרונה על ידי שואף
                          #13

                          @dovid אמר בC# או NODE.JS:

                          קודם כל ספציפית איליך @שואף אני לא ממליץ כלום, מבחינתי אתה צריך להיות אוהב תכנות כדי להיות יכול לעבור פלטפרומה. בלי זה אתה יכול להצליח אבל קשה לנו כמתכנתים לכוון אותך.

                          ככה לפני כולם ? 😕 😀
                          אוהב תיכנות זה הגדרה רחבה. יש כאלה שמקדישים את החיים שלהם לתיכנות, ושואפים לעולם הבא הצפון למתכנתים מששת ימי בראשית.
                          ויש כאלה שאוהבים את התחום ובחרו בו כהשתדלות לפרנסה שלהם, משתדלים לעשות מה שצריך כדי להביא לאכול הביתה, וממשיכים בחיים הרגילים שיש בחוץ (כלומר בפנים, תלוי מאיפה מסתכלים).
                          אני בהחלט נהנה לתכנת, אבל לא משוגע על זה ויש לי הרבה ערכים אחרים בחיים שקודמים לזה. מה שלא מקדם אותי למטרה שהיא להרוויח את הממון שהמשפחה שלי צריכה, לא אשקיע עליו הרבה מאמץ וזמן. כנראה שלא כולם חושבים ככה. זכותם. אבל כפורום של בני תורה אני חושב שזו ההשקפה של חלק גדול מהחברים. אולי אני טועה.

                          ליצירת קשר: admin@i-call.me

                          הידד! גישה למייל גם בלי מחשב ואינטרנט!

                          dovidD 2 תגובות תגובה אחרונה
                          9
                          • dovidD מחובר
                            dovidD מחובר
                            dovid ניהול
                            השיב לשואף ב נערך לאחרונה על ידי dovid
                            #14

                            @שואף אתה שם בפי מילים שכאילו גיניתי את המצב הזה וממילא מתרעם שאני אומר זאת לפני כולם.
                            יש אחד שעובד במשטרה כשוטר סיור. בערב הוא לומד תכנות או לומד בכולל ערב, כעבור כמה שנים לא תמצא אותו בדרך כלל מפקד תחנה אלא מתכנת או בן תורה. אפשר גם לתת דוגמאות פחות מחמיאות כמו עובד ניקיון (כמו נתניהו בשנות לימודיו באווארד כמדומני) שלא ייהפך להיות מנהל חברת אחזקה אלא ראש ממשלה.
                            אני חותם על כל מילה שאמרת, ומוסיף לזה עוד כמה מילים: במצב לגיטימי ונפלא כזה, קשה לעבור פלטפורמה, ועוד יותר קשה לייעץ לאיפה לעבור.

                            מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                            בכל נושא אפשר ליצור קשר dovid@tchumim.com

                            תגובה 1 תגובה אחרונה
                            3
                            • שואףש מנותק
                              שואףש מנותק
                              שואף
                              השיב לnigun ב נערך לאחרונה על ידי
                              #15

                              @nigun נקודה חשובה באמת. למרות שיש את החיסרון (שאני עדיין לא מספיק מבין לעומק) שבNODE אתה לא מריץ כל פעם את הסקריפט וממילא כשעושים שינוי צריך לעשות איזו הפעלה מחדש.

                              ליצירת קשר: admin@i-call.me

                              הידד! גישה למייל גם בלי מחשב ואינטרנט!

                              nigunN תגובה 1 תגובה אחרונה
                              4
                              • dovidD מחובר
                                dovidD מחובר
                                dovid ניהול
                                השיב לשואף ב נערך לאחרונה על ידי dovid
                                #16

                                @שואף אמר בC# או NODE.JS:

                                @dovid אמר בC# או NODE.JS:
                                אני בהחלט נהנה לתכנת, אבל לא משוגע על זה ויש לי הרבה ערכים אחרים בחיים שקודמים לזה. מה שלא מקדם אותי למטרה שהיא להרוויח את הממון שהמשפחה שלי צריכה, לא אשקיע עליו הרבה מאמץ וזמן. כנראה שלא כולם חושבים ככה. זכותם. אבל כפורום של בני תורה אני חושב שזו ההשקפה של חלק גדול מהחברים. אולי אני טועה.

                                אם כבר נימה אישית, אם "תבזבז" חצי מהזמן שבו אתה מתכנת כדי להבין יותר או להכיר יותר את העולם שאיתו אתה עובד, אני חושב שהיית מקבל אותו בחזרה עם ריבית. פרנסה משמיים, ואני חושב שמה שעושים צריך לעשות מקצועי.
                                המציאות היא שאתה שואל פה בפורום ולא מוצא את הזמן לעבור על התשובות. זה אומר שאתה במצב שאתה מאמין שככל שתקליד יותר הרבה/מהר על המקלדת ככה תרויח יותר כסף. רק שכשאני אומר להשקיע יותר, ישר אתה חושב שאני מתכוון לקצץ בזמן השמור לכולל...

                                מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                                בכל נושא אפשר ליצור קשר dovid@tchumim.com

                                תגובה 1 תגובה אחרונה
                                8
                                • שואףש מנותק
                                  שואףש מנותק
                                  שואף
                                  כתב ב נערך לאחרונה על ידי שואף
                                  #17

                                  @dovid איזה שפאכטל...

                                  @שואף אמר בשכן, שים לב אם אני חסר:

                                  אוקיי קיבלתי את התוכחה

                                  ליצירת קשר: admin@i-call.me

                                  הידד! גישה למייל גם בלי מחשב ואינטרנט!

                                  תגובה 1 תגובה אחרונה
                                  2
                                  • nigunN מנותק
                                    nigunN מנותק
                                    nigun
                                    השיב לשואף ב נערך לאחרונה על ידי nigun
                                    #18

                                    @שואף אמר בC# או NODE.JS:

                                    @nigun נקודה חשובה באמת. למרות שיש את החיסרון (שאני עדיין לא מספיק מבין לעומק) שבNODE אתה לא מריץ כל פעם את הסקריפט וממילא כשעושים שינוי צריך לעשות איזו הפעלה מחדש.

                                    אכן בעיה
                                    הפתרון הפשוט הוא לעבוד עם שתי סביבות עבודה
                                    ולעדכן את הסביבת פרודקשן בשעות שקטות.

                                    אם זה לא שייך, אפשר להתגבר על זה ע"י חלוקה למיקרוסרביס
                                    דהיינו לעשות שרת בנוד וכדו' שיהיה אחרי רק על שמירת נתונים בזיכרון וכדו'
                                    ואת שאר הקוד לשים בסקריפטים/שרת נפרד. (כשאני כותב "שרת" אני לא מתכוון למכונה נפרדת כמובן).

                                    מייל: nigun@duck.com

                                    תגובה 1 תגובה אחרונה
                                    2
                                    • שואףש מנותק
                                      שואףש מנותק
                                      שואף
                                      השיב לyossiz ב נערך לאחרונה על ידי
                                      #19

                                      @yossiz אמר בC# או NODE.JS:

                                      @שואף PHP לא נבנתה מתחילה עבור שימוש כזה. אבל במשך חייה הארוכות PHP עברה כמה אבלוציות...
                                      אני לא ממליץ על שימוש ב-PHP עבור, אבל בשקלול העלות/תועלת של האפשרויות קח בחשבון ש(לכאורה) זה אפשרי לגמרי ב-PHP.
                                      תבדוק את זה:
                                      https://amphp.org (עדיין לא פתוח בנטפרי, שלחתי בקשה לפתיחה)
                                      https://reactphp.org (עדיין לא פתוח בנטפרי, שלחתי בקשה לפתיחה)
                                      https://github.com/WyriHaximus/reactphp-cron

                                      תודה, נראה מעניין. אם תוכל לעדכן כשהאתרים ייפתחו.

                                      ליצירת קשר: admin@i-call.me

                                      הידד! גישה למייל גם בלי מחשב ואינטרנט!

                                      yossizY תגובה 1 תגובה אחרונה
                                      0
                                      • yossizY מנותק
                                        yossizY מנותק
                                        yossiz
                                        כתב ב נערך לאחרונה על ידי
                                        #20

                                        @שואף אמר בC# או NODE.JS:

                                        למרות שיש את החיסרון (שאני עדיין לא מספיק מבין לעומק) שבNODE אתה לא מריץ כל פעם את הסקריפט וממילא כשעושים שינוי צריך לעשות איזו הפעלה מחדש.

                                        לא הייתי אפילו לוקח את זה בחשבון.
                                        PM2 יכול לטפל בזה.
                                        בכל מקרה אני מקווה שאתה לא עובד ישירות על מכונת הפרודקשיין
                                        ואם כן בעת העלאה אתה מפעיל מחדש את השרת גם כן. אפשר לחבר סקריפט קטנצ'יק עבור עדכון השרת.

                                        אלא מאי אתה מתכוון שאז אתה מפסיד את ה-state הגלובלי שבזכרון?
                                        האם ב-PHP המצב יותר טוב? הרי שם אי אפשר בכלל לשמור על state גלובלי.

                                        @nigun אמר בC# או NODE.JS:

                                        דהיינו לעשות שרת בנוד וכדו' שיהיה אחרי רק על שמירת נתונים בזיכרון וכדו'

                                        לא צריך לממש בעצמך דברים שאחרים כבר מימשו. יש את redis, או ספריות שעושים את זה בתוך נוד.

                                        📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                                        nigunN תגובה 1 תגובה אחרונה
                                        1
                                        • nigunN מנותק
                                          nigunN מנותק
                                          nigun
                                          השיב לyossiz ב נערך לאחרונה על ידי nigun
                                          #21

                                          @yossiz אמר בC# או NODE.JS:

                                          לא צריך לממש בעצמך דברים שאחרים כבר מימשו. יש את redis, או ספריות שעושים את זה בתוך נוד.

                                          גם את redis צריך ללמוד😕
                                          אני מצאתי שיותר קל להשתמש בספריה מאשר ללמוד את הAPI של redis.

                                          @yossiz אמר בC# או NODE.JS:

                                          לא הייתי אפילו לוקח את זה בחשבון.
                                          PM2 יכול לטפל בזה.
                                          בכל מקרה אני מקווה שאתה לא עובד ישירות על מכונת הפרודקשיין
                                          ואם כן בעת העלאה אתה מפעיל מחדש את השרת גם כן. אפשר לחבר סקריפט קטנצ'יק עבור עדכון השרת.
                                          אלא מאי אתה מתכוון שאז אתה מפסיד את ה-state הגלובלי שבזכרון?
                                          האם ב-PHP המצב יותר טוב? הרי שם אי אפשר בכלל לשמור על state גלובלי.

                                          הבעיה היא שבהפעלה מחדש כל החיבורים נופלים
                                          ובשרת אסטריסק זה בעיה.

                                          מייל: nigun@duck.com

                                          תגובה 1 תגובה אחרונה
                                          3

                                          • 1
                                          • 2
                                          • 3
                                          בא תתחבר לדף היומי!
                                          • התחברות

                                          • אין לך חשבון עדיין? הרשמה

                                          • התחברו או הירשמו כדי לחפש.
                                          • פוסט ראשון
                                            פוסט אחרון
                                          0
                                          • דף הבית
                                          • קטגוריות
                                          • פוסטים אחרונים
                                          • משתמשים
                                          • חיפוש
                                          • חוקי הפורום