עבור לתוכן

בניית תוכנה שמתעסקת עם קבצים

Featured Replies

פורסם

אני רוצה לבנות תוכנה שתתעסק עם קבצים.

עכשיו נשאלת השאלה: באיזה שפה להשתמש(Java או C# אני יותר מדי עצלן בשביל לבנות ממשק ב- c++ ואני שונא מזוויעים)?

למה אני שואל? כי יש יתרונות וחסרונות לכל אחת:

JAVA מומלצת, בעיקרון, לתוכנות ברמת הארגון. בנוסף ניתן להריץ אותה על כל מ"ה שקיימת (כמעט).

C# מומלצת לתוכנות קטנות בעיקר אבל אז אני יכול להריץ את רק על MS וכמובן שיש את הבעייה עם " .NET אוהב משאבי מערכת".

הבאסה היא שאני יודע C# יותר טוב משאני יודע JAVA...

דעתכם בבקשה.

פורסם

דבר ראשון אני לא מבין את ה"המלצות" שלך בנוגע ל#c ולjava. אין כל קשר ביניהן למציאות (חוץ מהקטע שאפשר להריץ את java גם על לינוקס.

מה הקשר בין תוכנות ברמת הארגון? ממתי #C מומלצת לתוכנות קטנות? ואם התוכנות שלך תופסות יותר מידי משאבי מערכת, זו כבר תקלה שלך, כי לא כתבת טוב את הקוד שלך.

אם אתה מכיר יותר טוב את #C, ואת המחלקות גישה שלה לקבצים, אז תעבוד איתה, אלא אם כן אתה רוצה להתעמק בjava יותר ע"י בניית עוד פרוייקט בשפה הזו.

פורסם

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

אגב, לדעתי - הרבה יותר קל לבנות ממשק משתמש ב-#C.

ואין בכלל סיבה לבנות ממשק ב-++C, בלי קשר לעצלנות.

פורסם
  • מחבר

נוחות בניית ממשק משתמש ב-Java - זה תלוי IDE, לא?

וממשק משתמש ב- C++ יכול להיות פרוייקט נהדר, בעיקר אם הוא מבוסס opengl

פורסם

עם כל הכבוד, דוט-נט כבר ממזמן לא מיועד למערכות "קטנות", ועם צאת גרסה 2.0 הוא עולה בביצועים של java (לא שזה כל כך קשה)

פורסם

וממשק משתמש ב- C++ יכול להיות פרוייקט נהדר, בעיקר אם הוא מבוסס opengl

אם בא לך לעשות כזה דבר, סבבה. אבל אם אתה רוצה לבנות ממשק משתמש בסיסי בסביבת windows, אין על #C.

פורסם
  • מחבר

אם בא לך לעשות כזה דבר, סבבה. אבל אם אתה רוצה לבנות ממשק משתמש בסיסי בסביבת windows, אין על #C.

נכון.

עם כל הכבוד, דוט-נט כבר ממזמן לא מיועד למערכות "קטנות", ועם צאת גרסה 2.0 הוא עולה בביצועים של java (לא שזה כל כך קשה)

שאלתי כמה אנשים שזו התעסוקה שלהם...

פורסם

זה הכל תלוי בהגדרה שלך ל"גודל" מערכת.

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

ה-IDE של visual studio 2005, לדוגמא, היא מערכת לא קטנה מבחינת דרישות, גודל קוד, וכו'. אבל ה-IDE רץ רק על מחשב אחד ומשתמש בו רק איש אחד. לכן זה תלוי בהגדרה שלך למה זה "גדול".

לדעתי, לדוגמא, זו לא מערכת גדולה במיוחד. מרכזייה ברשת טלפוניה היא מערכת גדולה. אני לא יודע אם יש אחת שכתובה ב-C#, אבל לא נראה לי סביר שיש.

פורסם
  • מחבר

גדולה: משמע הרבה משתמשים בו-זמנית, תוכנה ברמת הארגון. C# לא טובה לדברים האלה, צריך בשבילה שרתים חזקים מדי. מה גם שנהוג להשתמש במסד נתונים של Oracle עבור תוכנות כאלה ואלה רצים טוב יותר על Unix או MF שלשניהם יש יככולת להריץ JAVA.

פורסם

כפי שכבר צויין כאן, #C יותר יעילה ומהירה מ-Java. אבל כמו שאמרת, היא לא יכולה לרוץ על unix.

פורסם

גדולה: משמע הרבה משתמשים בו-זמנית, תוכנה ברמת הארגון. C# לא טובה לדברים האלה, צריך בשבילה שרתים חזקים מדי. מה גם שנהוג להשתמש במסד נתונים של Oracle עבור תוכנות כאלה ואלה רצים טוב יותר על Unix או MF שלשניהם יש יככולת להריץ JAVA.

נכון, תוכנות שכתובת בדוטנט לא רצות על לינוקס (למרות שאפשר להשתמש בmono, אבל זה עדיין לא טוב)

ונכון עדיף להריץ אורקל על לינוקס/יוניקס.

אבל אתה בחיים לא תריץ גם את האפליקציה וגם את הDB באותו שרת!

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

להריץ עוד אפליקציה על שרת כזה, זה פשוט טעות נוראית.

אגב, אני לא רואה בעיה לעבוד עם microsoft SQL server2005, הוא מאוד חזק, ונותן תחרות לאורקל.

חוץ מזה, על MF משתמשים בDB2 ודומיו, שהם דברים יעודיים לארכיטקטורה שלו.

ולא, לא צריך שרתים חזקים מידי בשביל c#. כאיש תשתיות של פרוייקטים שכתובים אומנם בעיקר בj2ee, יש לנו כמה שרתים שמריצים אפליקציות שכתובות בc#, ובאמת שאין שום איטיות מיוחדת, או שהם שרתים חזקים במיוחד. האיטיות של האפליקציה כיום תלויה בעיקר באיך פיתחו אותה מאשר בתשתית הטכנולוגית.

למרות שמבחינת ניטור זמן אמת לאפליקציות, יותר נוח לעבוד מול אפליקציות שכתובות בjava (גם j2ee וכו'), כי כלים כמו hp diagnostincs יודעים להוציא ממנה יותר מידע, לעומת שפות דוטנט ששם מיקרוסופט לא פתחו יותר מידי מקום לניטור של האובייקטים בזכרון וכו'.

פורסם

שניצל - אפשר קישורים לדברים שמגבים את זה ש C# מהירה מג'אווה?

דבר שני, במה עולה VS על NETBEANS למשל בבניית ממשק משתמש?

פורסם

אני רק אמרתי שכבר אמרו כאן את זה :)

עם כל הכבוד, דוט-נט כבר ממזמן לא מיועד למערכות "קטנות", ועם צאת גרסה 2.0 הוא עולה בביצועים של java (לא שזה כל כך קשה)

חוץ מזה, ה-.NET Framework בנוי ככה שהוא חלק מווינדוז, בניגוד ל-JVM.

פורסם

זה לא ממש מדוייק. .net framework בהחלט בנוי _סביב_ windows, אבל הוא לא ממש חלק ממנו. ובכל מקרה אני הייתי קורה לזה חסרון בשפה שאמורה להיות general purpose.

פורסם

http://en.wikipedia.org/wiki/Comparison_of_the_Java_and_.NET_platforms

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

זליג, מיקרוסופט לא אמורה מתישהו שויסטה עצמה משתמשת בדוטנט פריימוורק?

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

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים