PracticU

Documenting a Function

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

בשיעור זה לומדים את השיטה המיוחדת לתיעוד פונקציות ב-Java, רואים איך התיעוד מוצג ישירות בעת הקריאה לפונקציה, ומכירים את היכולת לייצר ממנו אוטומטית אתר תיעוד מסוג Java Docs לשימוש מתכנתים אחרים.
נושאי הסיכום המוצגים בשיעור:
1. סוגי תיעוד שכבר הכרנו: ראינו בעבר שיטות לתעד את הקוד, והן מאוד חשובות, יש תיעוד בשורה אחת בלבד, ויש תיעוד של מספר שורות שמתחיל ונגמר בסימנים מיוחדים, ושניהם אינם חובה אלא כלי עזר למתכנת.
2. הפונקציות שמתעדים: לצורך ההדגמה בונים שתי פונקציות, אחת שמקבלת מסר ומדפיסה אותו, ואחת שמחזירה את המספר המקסימלי מבין שני מספרים בעזרת ביטוי תנאי, ואותן נתעד.
3. פתיחת בלוק תיעוד: השיטה המיוחדת היא לכתוב סלאש ושני כוכביות מעל הפונקציה וללחוץ אנטר, ואז נפתח לנו בלוק תיעוד מובנה, שבו השורה הראשונה נועדה לתיעוד שם הפונקציה, כלומר מה בעצם אנחנו רוצים שהפונקציה תעשה או איזה משפט לתאר על כלל הפונקציה.
4. תיעוד הפרמטרים והערך המוחזר: אחרי השורה הראשונה מופיעות שורות תיעוד לכל פרמטר, למשל לפרמטר של ההודעה כותבים שזו ההודעה להדפסה, ובפונקציה השנייה מתעדים שהיא מקבלת שני מספרים לבדיקה ומה היא מחזירה, את המספר המקסימלי, וכך נוצר תיעוד מלא לפונקציה.
5. מוסכמה שכולם מכירים: התיעוד הזה מיוחד כי הוא נותן מוסכמה איך לתעד פונקציות, מתכנתים אחרים יודעים לאן לפנות כדי לראות את שם הפונקציה ואת התיעוד לגבי המשתנים השונים, והרבה ארגונים עובדים עם המוסכמה הזאת, וכך מתכנת לא צריך לחפש את התיעוד אלא הוא יודע בדיוק איך הפורמט הנכון לבצע.
6. התיעוד מופיע בעת הקריאה: כשקוראים לפונקציה, פותחים סוגריים ולוחצים על צירוף הקשים המקובל, נפתח בצד התיעוד ורואים מה הפונקציה עושה ואת הפרמטרים שלה, ובפונקציה השנייה רואים את כל התיעוד כולל מה הפרמטרים מקבלים ומה התיעוד לגבי הערך המוחזר, וכך מתכנת אחר שעובד איתנו יודע בדיוק מה הפונקציה עושה כשהוא קורא לה ולא צריך לעלות ולהסתכל על התיעוד בתוך הפונקציה.
7. הרצת בדיקה: אחרי תיקון סוג הפרמטר בקריאה מריצים את הקוד ורואים שהכל עובד כמו שצריך.
8. למה כדאי לחשוף פונקציות: ייתכן שנרצה לפרסם את הפרויקט ולהשתמש בו בפרויקטים אחרים, ואז כדאי שהפונקציות יהיו בעלות הרשאת גישה ציבורית, מושג שנלמד במודול התכנות מונחה העצמים, ומשמעותו שחושפים את הפונקציות כך שהן יהיו ניתנות לשימוש גם מתוך מערכות ופרויקטים וספריות אחרות.
9. Java Docs: אם רוצים לתת למתכנתים אחרים במערכות אחרות את התיעוד בצורה נוחה יותר, זה נקרא Java Docs, התיעוד לגבי Java עצמה, וכשכותבים ב-Java אפשר לשלב תיעוד כזה במסמך שנקרא Java Docs, שהוא בעצם סוג של אתר אינטרנט שאפשר לבנות אוטומטית והוא יכיל את כל התיעוד הזה.
10. הפקת האתר: כדי לייצר את המסמך עושים מספר פעולות, קודם מריצים ומוודאים שהכל עובד, ואחר כך נכנסים להגדרות הפרויקט ובוחרים את האפשרות ליצור את התיעוד, ושם מגדירים את קובץ ההפעלה של כלי התיעוד שיוצר את אתר האינטרנט, שנמצא בתיקיית ההתקנה של ערכת הפיתוח של Java בתוך תיקיית ההרצה.
11. האתר שנוצר: אחרי אישור ההגדרות הכלי מייצר תיקייה שבה יש אתר אינטרנט עם קבצי HTML, וקובץ האינדקס הוא הקובץ הראשי שפותחים בדפדפן, ורואים אתר שמציג את כל התיעוד של התוכנה שלנו, רק את התיעוד ששייך למה שבנינו.
12. הניווט באתר: באתר רואים את כל הקלאסים של הפרויקט, נכנסים לקלאס ורואים את הפונקציות שלה, יש קישורים שמביאים לכל פונקציה, ובכל פונקציה רואים בדיוק את התיעוד שלה, את התיאור, את הפרמטרים ואת הערך המוחזר, והאתר הזה מייצג את כל הפרויקט כדי שמתכנתים אחרים ולפעמים גם אנחנו נוכל במבט אחד לראות מה יש לנו, אילו פונקציות ואילו קלאסים.
13. הערך המעשי: אפשר לייצר את כל האתר הזה בכמה קליקים, להעלות אותו לאוויר, לפרסם אותו ולשלוח אותו למתכנת אחר, והוא יוכל לראות את התיעוד לגבי כל האתר שלנו בבת אחת.
סיכום:
בשיעור זה למדנו לתעד פונקציות בפורמט המיוחד של Java, שבו בלוק התיעוד כולל תיאור כללי, פרמטרים וערך מוחזר, ראינו שהתיעוד מופיע אוטומטית בעת הקריאה לפונקציה וחוסך ממתכנתים אחרים לקרוא את הקוד, דנו בהרשאת הגישה הציבורית שמאפשרת שימוש בפונקציות מפרויקטים וספריות אחרות, והפקנו בפועל אתר Java Docs שמציג את כל התיעוד של הפרויקט בניווט נוח, ובשיעור הבא נעסוק בכללי העשה ואל תעשה של פונקציות.
בשיעור הבא נעסוק בנושא פונקציות - עשה ואל תעשה.
מילון מושגים:
Java – שפת תכנות עילית ומונחית עצמים, הרצה על מכונה וירטואלית (JVM) ומשמשת לפיתוח מגוון יישומים.
תנאי – ביטוי לוגי בקוד שתוצאתו אמת או שקר, וקובע אילו פקודות יתבצעו בהתאם לערכו.
פרמטר – ערך שמועבר לפונקציה או לפקודה כקלט, ומשפיע על אופן פעולתן ועל התוצאה שהן מחזירות.
סכמה – המבנה הלוגי של מסד נתונים: הגדרת הטבלאות, העמודות, הסוגים והקשרים ביניהם.
אתר אינטרנט – אוסף של דפים ומשאבים מקושרים המתארחים תחת כתובת אחת ומוגשים דרך דפדפן.
HTML – שפת הסימון שבה בונים את מבנה ותוכן דפי האינטרנט, באמצעות תגיות שמגדירות כותרות, פסקאות, קישורים ועוד.
אינדקס – מבנה במסד נתונים שמאיץ חיפוש ושליפה; גם מספר המציין מיקום של איבר במערך.
דפדפן – תוכנה שמציגה דפי אינטרנט ומריצה את הקוד שבהם, ומאפשרת לגלוש בין אתרים, למשל Chrome או Firefox.
SR11152HE

פרקי ההרצאה: Documenting a Function

  1. 00:00

    סוגי תיעוד בקוד: שורה ומספר שורות

  2. 01:36

    תיעוד פונקציה בעזרת /** */

  3. 02:16

    תיעוד הפרמטרים של הפונקציה

  4. 02:57

    תיעוד הערך המוחזר והמוסכמה לתיעוד

  5. 03:33

    הצגת התיעוד בעזרת Control Space

  6. 05:08

    פונקציות public לשימוש בפרויקטים אחרים

  7. 05:45

    Java Docs: תיעוד נוח למתכנתים אחרים

תמלול ההרצאה: Documenting a Function

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

  1. 00:04

    ראינו בעבר כל מיני שיטות לתעד את הקוד שלנו וראינו גם שזה מאוד חשוב לתעד את הקוד. יש שיטה מאוד מיוחדת לתעד פונקציות. קודם כל, איזה סוגי תיעוד כבר ראינו? אז אנחנו יכולים לעשות דבר כזה וזה בעצם לבצע תיעוד בשורה אחת בלבד comment בשורה אחת This is our main method ואנחנו יכולים לכתוב דבר כזה

  2. 00:35

    ואז לתעד מספר שורות קוד This is a comment in several lines. כמובן שאלה לא חובה, מספיק בהתחלה אחד כזה ובסוף אחד כזה ויש לנו פה אפשרות לתעד מספר שורות.

  3. 00:55

    אבל איך אנחנו יכולים לעשות תיעוד מאוד מעניין לפונקציות? בואו ניקח פה פונקציה static void print something ונשלח לה int message בואו נקרא לזה print message.

  4. 01:15

    והנה יש לנו פה את המסאג', זה אמור להיות סטטיק. ובואו ניקח עוד פונקציה, והפונקציה הזאת תחזיר לנו את המספר המקסימלי מבין שני מספרים, int a, int b, ונחזיר את a גדול מ-b סימן שאלה, נחזיר את a, אחרת את b. איך אנחנו יכולים לתעד פונקציה בצורה ממש מעניינת?

  5. 01:43

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

  6. 01:56

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

  7. 02:07

    Printing some message on the console. השורה הבאה זה הפרמטרים השונים. השורות הבאות זה הפרמטרים. Message זה הפרמטר Message. בואו נתעד אותו.

  8. 02:20

    The message to print. בואו נבצע את אותו הדבר על הפונקציה. סלאש כוכבית כוכבית enter והפונקציה עצמה מה שהיא עושה זה Getting the maximum number among two arguments A the first number to check B the second number to check ומה אנחנו מחזירים Returns the max number ויש לנו כרגע תיעוד כזה.

  9. 03:06

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

  10. 03:31

    יש לכם את התיעוד בפנים בחוץ הוא יודע בדיוק איך הפורמט הנכון לבצע. דבר שני כאשר אנחנו קוראים לפונקציה כזאת בואו נקרא לפונקציה הראשונה printMessage, פותחים סוגריים ולוחצים על Control Space, נפתח לנו כאן בצד את התיעוד ואנחנו רואים מה הפונקציה עושה Printing Some Message on the Console ואת הפרמטרים של ה-Message, The Message to Print.

  11. 04:01

    בואו נשלח כאן איזשהו מסג' Hello, בואו נקרא לפונקציה השנייה Max, Get Max, פותחים סוגריים, Control Space ואנחנו רואים כאן את כל התיעוד לגבי זה, כולל מה הפרמטרים מקבלים, מה התיעוד לגביהם, כולל התיעוד לגבי הערך

  12. 04:22

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

  13. 04:32

    אז זה דבר מאוד מעניין. בואו נגדיר את זה בצורה כזאת. נדפיס. למה יש לי שגיאה על printMessage?

  14. 04:45

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

  15. 05:17

    כדאי שהן יהיו בעלות הרשאת גישה public. מה זה בדיוק הרשאת גישה? אפשר ללמוד את זה במודול Object Oriented Programming, תכנות מונחה עצמים, אבל זה אומר שאנחנו חושפים את הפונקציות האלה כך שהן יהיו ניתנות לשימוש גם מתוך מערכות אחרות, פרויקטים אחרים,

  16. 05:39

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

  17. 06:00

    זה נקרא Java Docs, הדוקומנטציה לגבי Java עצמה, וכמובן אנחנו כותבים Java, אנחנו יכולים לשלב

לקורס המלא: קורס ג'אווה למתחילים אונליין

ההרצאה הקודמת: The varargs Argument

ההרצאה הבאה: פונקציות - עשה ואל תעשה

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

  • פונקציה - Function
  • Stored Procedure vs Function
  • Asynchronous - xxxAsync Function
  • מצביעה לפונקציה - Function Pointer

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

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