פורסם 2006 בספטמבר 1719 שנים באיזה שפות כתובות מערכות הפעלה ותוכנות יציבות בעלות שם??אני מעוניין לדעת באיזה שפת תכנות כתובות התוכנות : windows vista, windows XP, Linux, firefox, openoffice, office 2003, Zone Alarm
פורסם 2006 בספטמבר 1719 שנים חלק מהתוכנות בC חלק מהתוכנות בC++, אני מאמין שהVISTA כתובה בC#(חלק מהליבה אולי באסמבלי), יש הרבה תוכנות שכתובות בJAVA(כמו azaurus). תערבב הרבה ביחד ויצא משהו טעים.
פורסם 2006 בספטמבר 1719 שנים הרקע שלי בתכנות קצת מוגבל אבל מה שאני כן יודע שנכון להיום, התוכנות כתובות במספר רב של שפות, תחשוב שאתה מתחיל לכתוב עם C, אחרי קטע ממשיך עם סוג אחר ואז כותב קצת עם אסמבלי ומה לא... בסוף זה יוצר הרבה זבל ותוכנות איטיות (כיום זה מכה...) אבל התכנות די פשוט... התוכנות היעילות ביותר גם יקרות מאוד (כי לרוב מדובר בתכנת יחיד או מספר קטן של מתכנתים) אבל לוקחות מעט זיכרון בכל המובנים ועובדות הכי מהר. כל מתכנת יודע שתוכנה שכתובה לגמרי באסמבלי פועלת בשיא המהירות וגם לוקחת כמות זיכרון מזערית לעומת תוכנה שכתובה ב-C, בטח לעומת תוכנה שכתובה במספר שפות תכנות....
פורסם 2006 בספטמבר 1719 שנים אני מאמין שהVISTA כתובה בC#(חלק מהליבה אולי באסמבלי)ואתה כנראה טועה... C# היא לא שפה מספיק low-level בשביל לכתוב בה מערכת הפעלה.Windows כתובה רובה ב-C.כל מתכנת יודע שתוכנה שכתובה לגמרי באסמבלי פועלת בשיא המהירות וגם לוקחת כמות זיכרון מזערית לעומת תוכנה שכתובה ב-Cאל תגזים.C היא שפה די קרובה לשפת מכונה, ודי יעילה בפני עצמה. בניגוד לשפות OOP, ובמיוחד בניגוד לשפות Managed (כגון C# ו-Java), תכנית ב-C מחזיקה מעט מאוד זכרון Overhead מעבר לכמה שנצרך באסמבלי, ככה שתכנית באסמבלי לא באמת תתפוס הרבה פחות זכרון.
פורסם 2006 בספטמבר 1719 שנים בדרך כלל כותבים רק קטעים מהקוד באסמבלי כשרוצים שיהיו יעילים במיוחד. בדרך כלל עדיף לתת לקומפיילר של הC לחשוב מה יותר יעיל והוא יעשה את זה יותר טוב.אני מאמין שרוב התוכנות שציינת כתובות ב c ו ++C שזאת שפה יותר עילית אבל בכל זאת יעילה למדי ואפשר להכניס בה בקלות קטעים ב c טהור.UNIX כתובה ב C באמת וwindows זה בטח שילוב של C ו ++Cשפות כמו #C ו JAVA בדרך כלל לא משמשות לכתיבת דברים כמו מערכות הפעלה ושאר תוכנות שצריכות לעבוד קרוב לחומרה כי הם פשוט יותר מדי high level
פורסם 2006 בספטמבר 1719 שנים ^^ צודקביותר פשטות הדברים שחשוב שהם יהיו מהירים כתובים בשפות דור שני (אולי חלק אפילו בדור ראשון שזה שפת מכונה)ושאר הדברים כתובים בשפות של הדור השלישי (אני לא יודע וזה גם לא משנה איזה שפה בדיוק)ד"אלמי שלא יודעדור ראשון שפת מכונה/בינארית (10010011101)דור שני שפת סף (MOV AX BX....)דור שלישי שפות פרוצדוראליות( (readlin(XYZ)דור רביעי (מכולל ישומיים)ככל שאתה כותב בשפה יותר פשוטה (כמה שיותר קרובה לשפה בינארית) ככה התוכנה עובדת יותר מהרןלכן כמעט ולא עם בכלל משתמשים בשפות כמו c# במערכות הפעלה (C# דור רביעי)
פורסם 2006 בספטמבר 1719 שנים לאו דווקא באסמבלי. יש שפות יותר עיליות שמאפשרות לתכנת אותם בצורה יעילה למדי.
פורסם 2006 בספטמבר 1719 שנים למה לא יכולים פשוט לעשות מהדרים יעילים??עושים. עם הקומפיילרים של היום עדיף בדרך כלל להשאיר לקומפיילר את ההחלטות איך לתרגם לשפת מכונה מאשר לכתוב קוד באסמבלי.אבל, במקרים נדירים כשיש משהו מדוייק מאוד שאתה רוצה לעשות בצורה מאוד מסויימת אתה תרצה להכניס קוד באסמבלי.כמו מה למשל? אני יודע שלפעמים כותבים בC או בכל מיני שפות אחרות שמאוד דומות לC אבל מכילות כמה מבנים שונים. אני לא זוכר בדיוק שמות אבל חברה שלי מתעסקת בזה והיא הראתה לי פעם איך נראה קוד כזה.
פורסם 2006 בספטמבר 1819 שנים כל מתכנת יודע שתוכנה שכתובה לגמרי באסמבלי פועלת בשיא המהירות וגם לוקחת כמות זיכרון מזערית לעומת תוכנה שכתובה ב-Cזהו ש... כל מתכנת יודע שמה שכתבת הוא לא נכון...נכון, תיאורטית, כל מה שאפשר לכתוב ב-C אפשר לכתוב באסמבלי (כי לזה זה הרי מתורגם בסוף, או למקביל של זה - שפת מכונה) ולעומת זאת ניתן לבצע אופטימיזציות באסמבלי שלא ניתן לבצע ב-C. אבל...1) C מאוד קרובה לאסמבלי בגמישות של מה שניתן לעשות, מה גם שניתן לשלב קטעי אסמבלי באזורים "קריטיים".2) כתיבה ב-C היא הרבה יותר נוחה וברורה למתכנת - וזה אומר, הרבה פחות סיכוי לטעויות בתכנון - יעילות גדולה יותר.מאותה סיבה, אגב, לפעמים תוכנה שכתובה ב-C++ יעילה הרבה יותר ממקבילה ב-C, רק בגלל שכתיבה ב-C הרבה יותר קשה "לעקוב" ולהביא אותה למצב יעיל.כל זה, תלוי בסדר הגודל והמורכבות של התוכנה. ככל שהתוכנה מורכבת יותר, כך יהיה יעיל יותר לעבוד בכלים מתקדמים, ולוותר על "יעילות תיאורטית" לטובת יעילות בפועל...
פורסם 2006 בספטמבר 1819 שנים חשוב להעמיד את היעילות מול מדדים אחרים ומטרות אחרות של התוכנה.כמה אתה מוכן לשלם על יעילות (נניח בביצועים וזכרון)? אם אפשר להגיע ל-50% יעילות ב-10% מהמחיר, זה מספיק טוב?למה בכלל יעילות חשובה לך? ובאיזה חלק? אם אתה כותב משחק שחמט, האם זה חשוב אם מה שמצייר את הלוח יהיה מהיר?באפליקציה שמנהלת קשרי לקוחות, האם זה משנה אם שאילתא תרוץ 10 מילישניות או 50 מילישניות? במיוחד כאשר הרשת איטית פי 5?ישנם אפליקציות שבהן יעילות (ביצועים, זכרון, גודל קוד וכו') חשובות מאוד: רוב מערכות הפעלה לדוגמא.ישנן אפליקציות בהן הביצועים לא חשובים, אבל הנכונות של הקוד חשובה - לדוגמא בנקים.
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.