1 / 30

עבודה עם Eclipse

עבודה עם Eclipse. מבוא לתכנות מערכות. IDE – סביבת פיתוח. בניגוד לכלים שראינו עד עכשיו סביבת פיתוח היא תוכנה המנסה לאגד מספר כלים תחת מנשק אחיד. למשל: Turbo C++ , Dev C++ ו- Visual Studio הן סביבות פיתוח לתכנות ב- C/C++ (בין השאר). סביבות פיתוח. מכילות קיצורים .

Download Presentation

עבודה עם Eclipse

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. עבודה עם Eclipse מבוא לתכנות מערכות מבוא לתכנות מערכות

  2. IDE – סביבת פיתוח • בניגוד לכלים שראינו עד עכשיו סביבת פיתוח היא תוכנה המנסה לאגד מספר כלים תחת מנשק אחיד. • למשל: Turbo C++, Dev C++ ו-Visual Studio הן סביבות פיתוח לתכנות ב-C/C++ (בין השאר). מבוא לתכנות מערכות

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

  4. Eclipse • Eclipse היא סביבת עבודה לתכנות בשפות שונות. • לאורך הקורס נשתמש ב-Eclipse CDT. • תוספת המאפשרת כתיבת תוכניות C/C++. מבוא לתכנות מערכות

  5. התקנה • ניתן להוריד את Eclipse CDT ישירות מאתר הקורס. (גרסה זו הינה עבור Windows) • גרסה זו כוללת בתוכה כלים נוספים שבד"כ דורשים התקנה נפרדת: • גרסה של gcc ל-Windows • גרסה של gdb ל-Windows • לאחר ההורדה צריך פשוט לפתוח את הקובץ המכווץ לתיקיה כלשהי. • אין צורך בהתקנה. • ניתן להוריד גרסאות אחרות של Eclipse באתר הרשמי: http://www.eclipse.org/ מבוא לתכנות מערכות

  6. הפעלה ראשונית • בהפעלה הראשונית של Eclipse תדרשו לבחור תיקיה (directory) שתשמש כ-workspace. • ה-workspace יכיל בתוכו את כל הפרוייקטים וההגדרות המותאמות אישית. • ניתן לגבות את ספריה זו או להעבירה בין מחשבים בקלות. מבוא לתכנות מערכות

  7. יצירת פרוייקט • בכדי לכתוב קוד ולהריץ אותו עלינו ליצור פרוייקט תחילה. • פרוייקט מכיל: • קבצי המקור של הקוד • הגדרות עבור הפרוייקט (למשל דגלי הקומפילציה הדרושים) • קבצים נוספים מבוא לתכנות מערכות

  8. יצירת פרוייקט • על מנת ליצור פרוייקט נבחר בתפריט File, ובו נבחר New, C Project. • אם סוג הפרוייקט אינו מופיע יש לבחור ב-Project… ולבחור בסוג המתאים בחלון שיופיע. • ניתן לפרוייקט שם ונבחר ב-executable, empty project. מבוא לתכנות מערכות

  9. הוספת קבצים • נוסיף עכשיו קובץ ראשון לפרוייקט. • נבחר ב-File,New ולבסוף ב-Source File (עבור קובץ c) או Header File (עבור קובץ h). • עבור מערכת הבנק שלנו נוסיף את הקבצים הבאים: • account.h קובץ מנשק המגדיר את העצם Account. • account.c קובץ קוד מקור המממש את Account. • main.c קובץ זה יכיל את ניתוח הפקודות ועיבוד מאגר הנתונים. מבוא לתכנות מערכות

  10. הוספת הקבצים • הקבצים יופיעו בחלון ה-Project Explorer עתה. • לחיצה כפולה על קובץ קיים תפתח אותו בעורך הטקסט במרכז המסך. • כעת אנו יכולים להתחיל לרשום את התכנית שלנו. מבוא לתכנות מערכות

  11. בניית הפרוייקט • לפני ההרצה הראשונית של הפרוייקט עלינו לבנות אותו. • בנייה מכילה את שלב הקומפילציה, אך בפרוייקטים גדולים ייתכן ותכיל עוד פעולות מכינות (של קבצי נתונים הדרושים לתוכנה למשל) • כדי לבנות את הפרוייקט יש לבחור ב-Project, Build Project. • ניתן לבחור גם ב-Build All אשר יגרום לבניית כל הפרוייקטים הפתוחים. לפעולה זו קיים גם מקש קיצור Ctrl+B. • במקרה הטוב: לאחר הבנייה יתווסף קובץ בינארי חדש אותו נוכל להריץ. • במקרה הרע: נצטרך לטפל בשגיאות קומפילציה קודם. מבוא לתכנות מערכות

  12. תצוגת שגיאות קומפילציה • ניתן לראות את כל הפקודות שהורצו ע"י Eclipse והפלט של הקומפיילר בחלון ה-Console • לכל שגיאה או אזהרה יוצג סימון בקוד בשורה המתאימה. • בנוסף יוצג סימון ליד פס הגלילה של הקובץ המראה את כל השגיאות שנמצאו בו. • לחיצה על סימון זה תקפוץ לשגיאה המתאימה מבוא לתכנות מערכות

  13. תצוגת שגיאות קומפילציה • בכדי לנווט בקלות בין השגיאות ניתן להשתמש בחלון ה-Problems. • בחלון זה ניתן לראות את כל השגיאות והאזהרות הידועות ולקפוץ לכל אחת ע"י לחיצה כפולה. • אם חלון זה אינו פתוח ניתן לפתוח אותו בעזרת Window, Show View, ולבחורב-General, Problems. מבוא לתכנות מערכות

  14. הרצה • לאחר הבנייה הראשונית נוכל להריץ את התכנית שלנו ע"י בחירה ב-Run, Run as, Local C/C++ Application • אם התבצעו שינויים בקוד התכנית תקומפל מחדש. • הקלט והפלט של התכנית יופנו לחלוןה-Console. • קלט יופיע בצבע טורקיז. • פלט יופיע בצבע שחור. • פלט לערוץ השגיאות יופיע באדום. מבוא לתכנות מערכות

  15. הרצה • ניתן לעצור את ההרצה ע"י כפתור העצירה ( (בחלון ה-Console. • ניתן להריץ את התכנית האחרונה שהורצה ע"י בחירה בתפריט Run ובו בחירה ב-Run או ע"י לחיצה על Ctrl+F11. • בגלל הגבלה של מערכת ההפעלה Windows פעולות הפלט אינן מתבצעות ישירות לחלון ה-Console ברגע ביצוען, ניתן לפתור בעיה זו ע"י הוספה זמנית של שורות אלה בתחילת התכנית: setvbuf(stdout, NULL, _IONBF, 0); setvbuf(stderr, NULL, _IONBF, 0); מבוא לתכנות מערכות

  16. הרצה • בד"כ נרצה לשלוט בפרמטרים עבור הרצת התכנית. • למשל תכנית הבנק שלנו צריכה לקבל בשורת הפקודה את שם קובץ מאגר הנתונים: • לכל הרצה של פרוייקט Eclipse שומר קונפיגורציה בה ניתן להגדיר פרמטרים כאלו. • כאשר בחרנו ב-Run As נוצרה קונפיגורציה כזו באופן אוטומטי. • כדי לערוך קונפיגורציות נבחרב-Run, Run Configurations. • בחלון זה מוצגות בצד כל הקונפיגורציות הקיימות. • לאחר בחירה בקונפיגורציה ניתן לערוך את ערכיה. • למשל בחירה ב-Arguments תאפשר הוספת הפרמטר להרצת התכנית. > bank.exe database.txt מבוא לתכנות מערכות

  17. מאפייני הפרוייקט • ניתן לשנות מאפיינים שונים של הפרוייקט ע"י בחירה ב-Project, Properties. • למשל שליטה בדגלי הקומפילציה שבהם נשתמש. • כדי לגרום לקומפילציה בהתאם לכללים בקורס נצטרך לעשות את הדברים הבאים: • בחירה ב-C/C++ Build, Settings. • תחת GCC C Compiler, Warnings: • נסמן את Werror • נסמן את pedantirc-errors • אם Wall אינו מסומן, נסמן גם אותו. • תחת Miscellaneous: • נוסיף ב-other flags: “-std=c99” מבוא לתכנות מערכות

  18. מאפייני הפרוייקט • אפשרות חשובה נוספת היא ספריות, קבצי object, לתהליך הקישור. • כדי להוסיף קבצי object נבחר ב-Linker, Miscellaneous. • תחת Other Object בחרו הוספה. • בחרו את הקובץ המתאים. • הערה: אם מופיעות בעיות קישור, שימו את קובץה-object בספרית הפרוייקט הראשית ופשוט כתבו את שמו בחלון הוספת הקובץ. מבוא לתכנות מערכות

  19. השלמה אוטומטית • Content Assist • מופעלת בעזרת Ctrl+Space (ואוטומטית במקרים מסוימים) • מנסה להשלים את הביטוי הנוכחי בצורה הגיונית: • שמות משתנים המוגדרים בבלוק, שמות פונקציות, שמות קבצי h בפקודות #include וכו'... • לא תמיד מצליחה – גם אם ההצעה שאתם מחפשים לא מופיעה עדיין ייתכן שהקוד שלכם תקין. • מציגה את התוצאות בחלון צף (בחירת אפשרות עם מקשי החצים ו-Enter או העכבר) • אם יש אפשרות יחידה משלימה את המילה אוטומטית. מבוא לתכנות מערכות

  20. השלמה אוטומטית • Word Completion:משלימה מילים ללא הקשר. • מופעלת בעזרת Alt+/ • משלימה את המילה לפי המילה המתאימה האחרונה שנצפתה בטקסט • לחיצות נוספות על Alt+/ יחליפו את המילה המושלמת • עובדת תמיד (גם בהערות או מאקרו למשל) מבוא לתכנות מערכות

  21. סימון התייחסויות • הבאת סמן עריכת הטקסט למילה מסוימת יאיר את כל ההתייחסויות לאותה מילה. • רק התייחסויות אשר אכן מתייחסות לאותה ישות בקוד. • למשל משתנה מקומי יואר רק בפונקציה המתאימה. • בנוסף כל ההתייחסויות בקובץ יסומנו בריבועים אפורים מימין לציר הגלילה האנכי. • תכונה זו מאפשרת מעקב אחרי הקוד. • למשל מציאה קלה של השורות בהן משתמשים שמתנה המקומי. • בנוסף Eclipse מסוגלת לנתח את הקוד ולצבוע מילים בקוד לפי הגדרתם. • ערכים קבועים למשל יופיעו בצבע כחול מוטה. • שמות טיפוסים מוכרים יופיעו בגוון ירוק. • אם המילה אינה מופיעה בצבע המתאים כנראה שקיימת טעות כתיב או שגיאה כלשהי. מבוא לתכנות מערכות

  22. סימון מטלות בקוד • במקרים רבים נהוג לרשום הערות בקוד עבור דברים שיתבצעו מאוחר יותר • למשל מחיקת קוד זמני לפני הגשת תרגיל • ע"י רישום המילים TODO או FIXME ניתן לסמן הערה כמטלה. • Eclipse עוקבת אחרי המטלות הפרוייקט: • מטלות יסומנו בצידי הקובץ בכחול. • ניתן לראות את רשימת כל המטלות בפרוייקט בחלון Tasks ולקפוץ אליהן. • ניתן להוסיף תגיות נוספות ע"י בחירה ב-Window, Preferences ושם בחירה ב-C/C++, Task Tags. מבוא לתכנות מערכות

  23. ניווט בקוד • חלון ה-Outline מראה את מיתאר הקובץ הנוכחי ומאפשר ניווט נוח בו. • אם הוא אינו מופיע ניתן להחזירו ע"י Window, Show view ובחירה ב-General, Outline. • לחיצה על פריט בחלון תקפוץ לחלק המתאים בקובץ. • לחיצה על כפתור ימני תפתח תפריט עם אפשרויות נוספות לפריט זה. • ניתן לסדר מחדש את הפריטים בקובץ ע"י גרירתם בחלון זה. • לאחר שמתרגלים לקפוץ להקשרים שונים ב-Eclipse כדאי לדעת גם את הקיצור Alt+←שחוזר להקשר הקודם (כמו back בדפדפן) מבוא לתכנות מערכות

  24. קפיצה להכרזה • אפשרות מועילה במיוחד ביכולות הניווט היא קפיצה להכרזה. • ע"י בחירת משתנה, פונקציה, טיפוס וכו' ובחירה ב-Open Declaration ניתן לקפוץ אל המקום בוא הוא הוגדר לראשונה • ניתן לבצע פעולה זו במספר רב של דרכים, שתיים חשובות הן: • לחיצה על כפתור ימני על הטקסט ובחירה ב-Open Declaration. • החזקת מקש ה-Ctrlולחיצה עם העכבר על המילה המתאימה.בזמן שמקש ה-Ctrl מוחזק כל מילה שניתן לקפוץ ממנה תיראה כמו קישור מתחת לסמן העכבר. מבוא לתכנות מערכות

  25. עיצוב אוטומטי של הקוד • כדי לשמור על קוד קריא נהוג לבצע הזחות ולמקם סוגריים ומילים בצורה עקבית. • לכללים מסוג זה וכללים נוספים המגבילים את סגנון קוראים גם Code Conventions. • לחיצה על Ctrl+Shift+F תגרום ל-Eclipse לפרמט מחדש את כל הטקסט הנבחר. • שבירת שורות ארוכות. • מיקום סוגריים מסולסלים {,}. • עיצוב לולאות ומשפטי תנאי בצורה אחידה. מבוא לתכנות מערכות

  26. עיצוב אוטומטי של הקוד • ניתן לבחור סגנון מוכן מראש. • ניתן לערוך סגנון מותאם אישית. • ניתן לבחור את הכללים לפיהם הקוד יעוצבמ-Window, Preferences ובחירה ב-C/C++,Code Style. מבוא לתכנות מערכות

  27. הוספת קו אנכי • מומלץ להימנע משורות ארוכות מדי בקוד. • הסיבה העיקרית: מפריעות לקריאות. • לכן על אורך שורה בקורס לא לעלות על 80 תווים. • המספר 80 מהווה פשרה נוחה וגם מבטיח ששורת קוד לא תישבר בהדפסה. • ניתן להוסיף קו אנכי בעורך הטקסט אשר יסמן מתי שורה חורגת מ-80 תווים. • בוחרים ב-Window, Preferences ובחירה ב-General, Editors, Text Editors. • יש לסמן את Show print margin ולוודא שערכו של Print margin column הוא 80. מבוא לתכנות מערכות

  28. היררכית קריאות - Call Hierarchy • מציגה בעץ את קשרי קריאת הפונקציות. • בעזרת תצוגה זו ניתן לראות בקלות מהיכן נקראת כל פונקציה. • לאתר פונקציות שאינן בשימוש. • למצוא את ההשפעה של שינויים. • כדי להגיע לחלון זה יש לבחור שם של פונקציה, ללחוץ על כפתור ימני ולבחור ב- Open Call Hierarchy מבוא לתכנות מערכות

  29. Refactoring • Refactoring הוא שם כולל לטכניקות של עריכת קוד לשם שיפורו. • Eclipse תומכת במספר פקודות הנועדו לשימושים כאלה. • פקודות אלו מנתחות את הקוד הקיים ומבצעות בו שינויים. מבוא לתכנות מערכות

  30. Refactoring • Rename: • משנה שם של משתנה/פונקציה/טיפוס בקוד. • משנה אותו בכל קבצי הפרוייקט. • לא מתבלבלת (למשל שם משתנה מקומי ישתנה רק בפונקציה המתאימה) • ניתנת להפעלה מתפריט Refactor. • Rename in file: • גרסה זו של הפקודה משנה רק את ההתייחסויות לשם זה בקובץ הנוכחי. • יתרונה באפשרות עריכה "חיה". • מופעלת ע"י Ctrl+1 ובחירהב-Rename in file • קיימות אפשרויות נוספות ל-Refactoring בתפריט ה-Refactor אך הן נותנות תוצאות טובות רק ב-++C. • אתם מוזמנים לנסות אותן לאחר שנלמד ++C. מבוא לתכנות מערכות

More Related