"שאלתו של מתחיל"

p k a k

New member
"שאלתו של מתחיל"

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

inbal76

New member
תשובה

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

inbal76

New member
אגב, לגבי האלגוריתם

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

עידו פ

New member
אני לא בטוח שיש הרבה מן המשותף

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