ממה תוכנה מורכבת?
-
ככה, ב"ה אני בשלבי למידת אסמבלי, ואני נחשף להמון המון מושגים בתכנות של שפת סף.
לדוגמא: ארגונמט, פונקציה, קריאה לפונקציה, אוגר, מחסנית, כתובת זיכרון, סגמנט, אופסט
(זה פחות אבל עדיין) וכוליה והשאלה שלי:
איך נוצרת תוכנה נושמת ועובדת מסבך של שלל פקודות מוזרות.
כלומר, איך בעצם נוצרת תוכנה שעובדת עם ממשק והכול מכל הבסיס שהזכרתי.
קצת מוזר לחשוב על זה, איך בעצם נוצרת תוכנה: למשל: דפדפן.
(זה אמנם לא כתוב אסמבלי אבל בכללי בתכנות)
מסבך של פונקציות מחרוזות וכוליה וכוליה ואיך זה קשור לתכנות בעצם?מקווה שהייתי מובן אשמח לתשובותיכם.
-
מ מעלה ומוריד פרסם את הנושא הזה בפרסום צולב ב- על הפורום
-
נראה לי שכן הבנתי את השאלה
והתשובה שלי היא שאתה לומד על אטומים ואתה שואל איך עובד מנוע קיטור. באמת ההתנהגות של מנוע קיטור כולו נגזר מכללי ההתנהגות של האטומים שמרכיבים אותו, אבל קשה לראות את התמונה השלימה כאשר אתה מסתכל מנקודת מבט של אטומים ומולקולות.
המושגים שאתה מזכיר (ארגונמט, פונקציה, קריאה לפונקציה, אוגר, מחסנית, כתובת זיכרון, סגמנט, אופסט) הם אבני לגו, או תאים, או אטומים או איזה משל שתרצה לבחור לך. אתה צריך לעבור לשכבות הגבוהות יותר כדי לקבל הבנה על איך תוכנה עובדת
שכבות לדוגמה שכדאי לעשות איתם הכירות:- פרדיגמות של תכנות, למשל OOP (צורה לבנות תוכנות יותר מסובכות, לא מוסכם על כולם, אבל נחל הצלחה רבה)
- מערכת ההפעלה, איזה שירותים הוא נותן לתוכנות
- ספריות גרפיקה, ספריות רכיבי ממשקים, וכדומה,
למשל דפדפן כרום (כרומיום) משתמשת בספריית skia עבור גרפיקה, זה ספרייה שנותנת API נוח להרבה פעולות גרפיקה,
חוץ מזה הוא משתמש בשירותים של מערכת ההפעלה כדי להציג חלונות, לרנדר טקסט, לקבל קלט משתמשים, לגשת לקבצים ולרשת,
וגם ספריות צד שלישי עבור דברים כמו TLS, ועוד
הדוגמה של דפדפן היא למעשה דוגמה של תוכנה סופר סופר מסובכת...בשלב כלשהו יהיה כדאי להסתכל פעם בקוד המקור של תוכנה כזאת כדי לקבל מושג איך זה בנוי
שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.
נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.
בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗
הרשמה התחברות