המלצה - לימוד Java בהנאה

  • פותח הנושא ID3D
  • פורסם בתאריך

neko

New member
לא מבין למה לא עשית פשוט

SYSTEM.GC)( בקטעים לא קריטיים
 
מנומס - אך לא מדויק

איטיות - עובדות יבשות? מי עושה מה פי 1000 - תהיה יותר ספציפי? חוסר שליטה - כן דווקא יש לי נסיון בפרויקטים "רציניים" והם דווקא עבדו ועובדים ללא בעיות ביצועים. אם בפרויקטים שלך ה-GC גרם לך כל כך הרבה בעיות אז הייתי בודק את הקוד ומחפש אוביקטים לא נחוצים שנשארים בזכרון ללא צורך (זליגת זכרון יכולה לקרות גם ב-Java אם לא יודעים מה עושים). למעט מערכות Hard RealTime לא צריכה להיות בעיה עם GC (אם הקוד שלך תקין, כמובן). דוגמא למערכת "קטנה" (שכתובה ב-Java כמובן) ומשרתת מספר "קטן" של משתמשים ויש לה ביצועים "לא רעים" - אתר Ebay - כן, האתר וכל האופרציה המורכבת מאחוריו כתובים ב- J2EE.
 

אלדד28

New member
עוד קצת ודי.

GC הוא רק דוגמה אחת. JAVA עוטפת את כל הקוד שלך בכל מיני דברים שהיא עושה ברקע, כל מיני דברים שמפקיעים ממך את השליטה. זה לא שה-GC ספציפית גרם לבעיות. פשוט האפליקציות היו כבדות מדי. לא ייתכן שהאינטראקציה עם המשתמש תיקח כל כך הרבה זמן. זה מאוד נחמד ל-EBAY, אם באמת הכל כתוב שם ב-JAVA, אבל זה לא המצב ב-GOOGLE, נכון? נכון. כי ב-EBAY זה לא נורא אם תמתין 10 שניות ולא 10 מילי-שניות. EBAY הוא אתר רגיל, שלא צריך להתמודד עם אילוצי זמן רציניים. אפליקציית DESKTOP ממוצעת לא יכולה לתת זמני תגובה כל כך נוראיים ל-USER-ים שלה, וכך גם כל שרת נורמלי. אגב, EBAY עובדת עם שרת WEB שכתוב, קרוב לוודאי, ב-C. זה החלק שאמור לעבוד תחת לחץ. הוא זה שעושה את כל עבודת ה-BUFFER-יאדה שעומדת על האתר. לא ה-JAVA, שמקבלת בניחותא את העסק. אתה מכיר מערכת הפעלה רצינית שכתובה ב-JAVA? אתה מכיר שרת רציני שעומד בעומסים רציניים שכתוב ב-JAVA? אתה מכיר אפליקציית DESKTOP רצינית שכתובה ב-JAVA ועובדת מהר (כלומר, אינטראקטיבית ברמה סבירה)? סתם עוד דוגמה, יש לנו פה איזושהי אפליקציה שמאפשרת תקשורת SNMP. התוכנה הזו כתובה ב-JAVA. כשטוענים אותה לזכרון - זהו. המחשב עומד מלכת. אם אתה מנסה להריץ לצידה עוד משהו, זה הופך לזוועה. האפליקציה עצמה נחמדה מאוד, אבל ה-JAVA שמורצת מאחוריה היא כל כך תובענית, שלא נשארים משאבים למחשב.
 

zeevb

New member
נכון בחלקו

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

zeevb

New member
עוד קצת אי דיוקים והגזמות

" JAVA עוטפת את כל הקוד שלך בכל מיני דברים שהיא עושה ברקע " - כמו מה למשל? "EBAY הוא אתר רגיל, שלא צריך להתמודד עם אילוצי זמן רציניים" - EBAY הוא אחד האתרים העמוסים ביותר באינטרנט (מאות מליוני גישות ביום). EBAY היה כתוב כולו כ-C++ ISAPI DLL (בגודל 3.3 מליוני שורות קוד) והוא הוחלף כולו (כולל החלק של הפרזנטציה) ב-J2EE. נראה לי שאתה מכיר את Java דרך כמה התנסויות אישיות לא מוצלחות ואתה משליך מהם על כל העולם. ישנן הרבה דוגמאות לאליקציות Java שעומדות בעומסים ומספקות ביצועים מצויינים - ראה לינק מצורף.
 

barakbl

New member
אלדד,

בקשר לישומי דסקטופ זה לא חכמה.... המבנה של awt/swing הופך את העניין ללא ממש שמיש. עכשיו עם swt, ככל שהזמן יעבור אתה תראה יותר ישומי דסקטופ שרצים עם ג'אווה, בעיקר כשהעסק יתייצב. אז אולי את הנגן מולטימדיה ימשיכו לכתוב ב C או ++C, אבל עורכי קוד, IDEים, כל מיני תוכנות גואי פשוטות וכו', לא תהיה שום בעיה לכתוב בג'אווה (אקפליפס הוא סנונית ראשונה). בקשר לאתרי אינטרנט - אכן, מרבית השרתים כתובים ב ++C, וב C, אבל הישומי ג'אווה שאתה מפעיל אינם משהו מסכן כמו שאתה מתאר אותו.... אתר web גדול, שבוא כל עמוד מבוסס על ג'אווה, דורש שכל צפיה בעמוד תפעיל את האפליקצית ג'אווה, זה לא משהו שאפשר לזלזל בזה. בכלל, 99 אחוז מהאינטרנט, מבוסס על ASP/PHP/JSP/CGI (כשמרבית ה CGI כתובים בפרל), לא משהו שאפשר לזלזל בו. אלדד, אתה ממש אובססיבי נגד ג'אווה, ויש מאחורי טיעוניך לא מעט הגיון, ולא מעט ידע, אבל אתה בדרך מחמיץ את זה שג'אווה היא לא רק שפה לגיטימית, יש לה גם יכולות מוכחות, הן ברמת הביצועים והן ברמת הגמישות והנוחות בפיתוח, עבור לא מעט דברים ומקרים. מדובר ביופי של שפה, שעושה יופי של דברים, ומצד שני זה על חשבון דברים מסוימים. לא סתם לא כותבים מערכות הפעלה בג'אווה, או לא כותבים בד"כ סרוורים בג'אווה, אבל להרבה דברים אחרים, זה יופי של דבר. והייתי כבר בטוח שהפורום נגמל מהדיון ג'אווה כן או לא
 

אלדד28

New member
שום אובססיה נגד JAVA,

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

למה אתר EBAY תמיד עובד לי כ"כ לאט
עכשיו כשאני חושב על זה, האם גם תפוז כתוב בג'אווה
 

ID3D

New member
אחחח, לא!

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