PracticU

Referencing another Project

בלי כתוביותעם כתוביות
PracticU › קורס יסודות התכנות - שפת JAVA - קורס ג'אווה למתחילים › Referencing another Project
Referencing another Project

בשיעור זה לומדים אלטרנטיבה לשימוש בקובץ JAR כשכל הפרויקטים נמצאים באותה סביבת עבודה, יוצרים התייחסות מפרויקט אחד לפרויקט אחר שמתעדכנת אוטומטית, ומבינים מתי מתאים כל שיטה.
נושאי הסיכום המוצגים בשיעור:
1. הרעיון של הפרויקט המותייחס: אם לוקחים אפליקציה שבונים ורוצים לחלק אותה למספר פרויקטים אבל כולם נמצאים באותה סביבת עבודה, אפשר לעשות משהו קצת אחר ממה שעשינו עם קובץ ה-jar, וזה בעצם לעשות רפרנס מפרויקט אחד לפרויקט אחר, כאשר הפרויקט הבסיסי מייצר jar ואנחנו משתמשים אוטומטית עם ה-jar שלו, והיתרון הוא שאם נעשה שינויים בפרויקט הבסיסי אז הפרויקט שמשתמש יקבל אוטומטית את השינויים האלה.
2. הקמת פרויקט חדש להדגמה: בונים פרויקט חדש לחלוטין לצורך ההדגמה, נניח פרויקט עבור רואה חשבון, ובתוכו מחלקת תוכנית עם אותה חבילה מעטפת שהשתמשנו בה תמיד, יש בה פונקציית ראשית ורוצים לעשות רפרנס לפרויקט הקודם של פעולות המתמטיקה.
3. הוספת הרפרנס בהגדרות הבנייה: עושים זאת בלחיצה ימנית על הפרויקט החדש ופנייה להגדרות נתיב הבנייה, וכאן לא הולכים לספריות כי לא רוצים להוסיף קבצי jar חיצוניים, אלא הולכים לכרטיסיית הפרויקטים, וכאן רוצים להוסיף את אחד הפרויקטים שנמצאים פה, שזה מבחינתנו פרויקט פעולות המתמטיקה, מוסיפים, בוחרים בו, מאשרים, רואים פיזית את הפרויקט פה ומחילים וסוגרים.
4. השימוש במחלקות החשופות: עכשיו אנחנו גם יכולים להשתמש בכל מה שהפרויקט הזה חשף החוצה, כל מה שמוגדר כציבורי, שזה בעצם כרגע מחלקת פעולות המתמטיקה, ולוקחים אותה ורואים שיש לנו את פונקציית הסכום, נותנים את אותם מספרים כמו בסרטון הקודם, ולמעשה יש לנו כבר את הקוד הזה, כתבנו אותו פה איפשהו, אפשר רק להעתיק ולהדביק אותו כאן, ורצים את התוכנית מהפרויקט החדש ורואים שהוא עובד כמו שצריך.
5. ניקוי סביבת העבודה: היתרון שכעת יש לנו סביבת עבודה אחת שבה כמה פרויקטים, למעשה אנחנו כרגע לא משתמשים בפרויקט הפיננסי שהיה בתרגיל הקודם, ואותו אפשר האמת להעיף לגמרי, מוחקים אותו, ונשארנו עם המחלקה הבסיסית של פעולות המתמטיקה ועם הפרויקט שמשתמש בה.
6. שינויים בפרויקט הבסיסי: היתרון הוא שאם עכשיו יבצעו שינוי כלשהו בפרויקט הבסיסי, לדוגמה שפונקציית הסכום אמורה בכלל להחזיר מספר שלם ולא מספר עשרוני, וגם לבנות פונקציה אחרת שעושה משהו אחר, כמו פונקציה שמחזירה את הערך המקסימלי מבין שלושה ערכים שגם היא מחזירה מספר שלם, ובניית הלוגיקה של השוואות בין הערכים לבחירת המקסימלי, והנה יש לנו פונקציה נוספת שבנינו בפרויקט פעולות המתמטיקה.
7. מה קורה עם קבצי jar קיימים: כל פרויקט אחר שישתמש ב-jar שנוצר לא יקבל את העדכונים האלה, מפני שהעדכונים האלה אינם קיימים אוטומטית בכל הקבצים שיצרנו ושמנו במחשב, לדוגמה הקובץ שיצרנו באחד הסרטונים הקודמים לא מכיל עכשיו את השינויים האלה, ולכן אם פרויקט אחר משתמש בו הוא לא יקבל את השינויים, ואילו אם שמנו רפרנס לפרויקט הזה אנחנו אוטומטית רואים כאן את השינוי.
8. הבדיקה של העדכון האוטומטי: בפרויקט המשתמש לוקחים משתנה שלם שמקבל את תוצאת פונקציית המקסימום החדשה שבנינו בפרויקט הבסיסי, נותנים את אותם מספרים ומציגים את הערך המקסימלי, ומריצים ורואים שיש לנו גם את השינויים שביצענו בפרויקט הבסיסי, כלומר גם שינוי סוג ההחזרה וגם הפונקציה החדשה.
9. מתי כל אופציה מתאימה: מתי האופציה הראשונה של ייצור jar מתאימה ומתי האופציה הזאת מתאימה, אז קודם כל, אם רוצים לבנות פרויקט שהוא מאוד מאוד תשתיתי ושישרת אותנו בכל מיני פרויקטים עתידיים, גם כאלה שלא נמצאים לנו באותה סביבת עבודה כרגע, אז האופציה הראשונה מתאימה, מייצרים jar, יש לנו קובץ jar, ואם בהמשך נעדכן אותו צריך לעדכן את ה-jar, אבל כל פרויקט יכול להשתמש בו, וכנ"ל אם רוצים לשלוח את ה-jar למישהו, לפרסם אותו באינטרנט, להביא אותו לחברה או אפילו למכור אותו, אז מייצרים jar, ואם רוצים מערכת אחת שמחולקת לכמה פרויקטים וכולם נמצאים תחת אותה סביבת עבודה, אז אנחנו יכולים, ועדיף לנו, לבצע את הרפרנס הזה לפרויקט התשתיתי יותר, כך שאם נשנה את הפרויקט התשתיתי אוטומטית הרפרנס יקבל את השינויים, וכך יש לנו פה שתי אופציות, לייצר jar ולהשתמש בו או לעשות רפרנס לפרויקט ואוטומטית להשתמש עם ה-jar שהפרויקט התשתיתי יותר מייצר לנו.
סיכום:
בשיעור זה למדנו לחבר פרויקטים בתוך אותה סביבת עבודה בעזרת התייחסות ביניהם, ראינו שהפרויקט המשתמש מקבל אוטומטית את הג'אר של הפרויקט הבסיסי וכל שינוי בו משתקף מיד, בניגוד לקבצי jar מוקפאים שאינם מתעדכנים, תרגלנו להוסיף פונקציות חדשות לפרויקט הבסיסי ולראותן בפרויקט המשתמש, וסיכמנו מתי עדיף קובץ jar להפצה חיצונית ומתי עדיף רפרנס לפרויקט תשתיתי.
בשיעור הבא נעסוק בנושא הרצת קבצי JAR.
SR11169HE

פרקי ההרצאה: Referencing another Project

  1. 00:00

    רפרנס בין פרויקטים באותו Workspace

  2. 00:41

    פרויקט חדש שמשתמש בפרויקט הבסיסי

  3. 01:24

    הוספת פרויקט Math Operations לנתיב הבנייה

  4. 02:00

    שימוש בפונקציות שהפרויקט הבסיסי חושף

  5. 02:42

    שינוי בפרויקט הבסיסי והשפעתו על המשתמש

  6. 03:16

    הוספת פונקציית getMax לפרויקט הבסיסי

תמלול ההרצאה: Referencing another Project

הטקסט המלא של הדקות הראשונות בהרצאה «Referencing another Project» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:02

    אם אנחנו לוקחים אפליקציה אחת שאנחנו בונים ורוצים לחלק אותה למספר פרויקטים אבל כולם נמצאים באותו Workspace אנחנו יכולים לעשות משהו קצת אחר ממה שעשינו עם ה-jar file וזה בעצם לעשות רפרנס מפרויקט אחד לפרויקט אחר.

  2. 00:22

    הפרויקט הבסיסי מייצר jar ואנחנו משתמשים אוטומטית עם ה-jar שלו. היתרון הוא שאם נעשה שינויים בפרויקט הבסיסי אז הפרויקט שמשתמש אוטומטית יקבל את השינויים האלה.

  3. 00:33

    בואו נראה איך עושים את זה. נלך ל-file ונבנה פרויקט חדש לחלוטין. בואו נניח שאנחנו בונים פרויקט עבור רואה חשבון, אקאונטנט אפ.

  4. 00:46

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

  5. 01:09

    אוקיי, איך אנחנו עושים את זה? אנחנו הולכים לפרויקט שלנו, אקאונטנט אפ, מרכש ימני, והולכים שוב פעם ל-build path ו-configure build path.

  6. 01:24

    כאן אנחנו לא הולכים ל-libraries, כי אנחנו לא רוצים להוסיף external jars, אנחנו הולכים ל-projects. וכאן אנחנו רוצים להוסיף את אחד הפרויקטים שנמצאים פה, שזה מבחינתנו math operations.

  7. 01:38

    בואו נבצע add, נבחר ב-math operations, נבצע אוקיי, ונראה פיזית את הפרויקט פה, Apply and Close.

  8. 01:47

    עכשיו אנחנו גם כן יכולים להשתמש בכל מה שהפרויקט הזה חשף החוצה, כל מה שהוא מוגדר כ-Public, שזה בעצם כרגע Math Operations.

  9. 02:00

    בואו ניקח את Math Operations, והנה יש לנו עכשיו Get Summary, בואו ניתן 10, 22, 30. למעשה יש לנו כבר את הקוד הזה, כתבנו אותו פה איפשהו, אנחנו יכולים רק קופי פייסט איט או נעתיק ורק נדביק את זה כאן ואנחנו רוצים לבדוק את זה אוקיי אנחנו שוב אנחנו נמצאים כרגע באקאונטנט אפ פרוגרם קונטרול

  10. 02:32

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

  11. 02:53

    אנחנו משתמשים רק ב-Math Operations, זה היה הפרויקט הבסיסי יותר, וב-Account and App שמשתמשת ב-Math Operations. אבל היתרון הוא שאם עכשיו יבצעו שינוי כלשהו ב-Math Operations, בואו ניקח לדוגמה שאנחנו רוצים, אם אנחנו כבר כאן, הגט סאמי אמורה בכלל להחזיר אינטג'ר ולא דאבל,

  12. 03:19

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

  13. 03:31

    אם גם היא תחזיר int, getMax תקבל a, b ו-c, ואם a גדול מ-b וגם a גדול מ-c,

ההרצאה הקודמת: שימוש בקבצי JAR

ההרצאה הבאה: הרצת קבצי JAR

הרצאות קשורות מקורסים אחרים

  • Java Project
  • API Level Project
  • פרוייקט חדש - WinForm Project

קורסים נוספים במסלול

  • קורס מבוא ל-QA - מידע חשוב לבודק תוכנה
  • קורס פוסטמן - Postman - בדיקות לאתרי אינטרנט - API
  • קורס Robot Framework - בדיקות QA ממשק גרפי
  • קורס סלניום בסיסי - בדיקות אוטומטיות - Selenium
  • קורס סלניום מתקדם - CI/CD - Continues Integration
  • קורס מייבן - Maven