מהם המרכיבים של אדריכלות ג'אווה?



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

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

המצביעים שלהלן יהיו נושאי הדיון שלנו:





נתחיל בהבנה מהי בדיוק אדריכלות ג'אווה?



מהי Java Architecture?

כאן, אסביר לך את ארכיטקטורת Java בצעדים פשוטים.

  • בג'אווה יש תהליך של קומפילציה ופרשנות.
  • הקוד שנכתב ב , מומר לקודי בתים אשר נעשה על ידי מהדר Java.
  • קודי בתים מומרים לקוד מכונה על ידי JVM.
  • קוד המכונה מבוצע ישירות על ידי המכונה.

תרשים זה ממחיש את העבודה הפנימית של קוד Java, או במדויק, Java Architecture!



JVM - אדריכלות געכשיו, הבה נתעמק בארכיטקטורת Java ונשוחח על שונות .

כיצד להתקין את PHP 7

רכיבי אדריכלות ג'אווה

ישנם שלושה מרכיבים עיקריים בשפת Java: JVM, JRE ו- JDK .

Java Virtual Machine, Java Runtime Environment ו- Java Development Kit בהתאמה.

תן לי לפרט כל אחד מהם בזה אחר זה:

מכונה וירטואלית של Java:

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

אז בקצרה, JVM מבצעת את הפונקציות הבאות:

  • טוען את הקוד
  • מאמת את הקוד
  • מבצע את הקוד
  • מספק סביבת זמן ריצה

עכשיו, תן לי להראות לך את ארכיטקטורת JVM. הנה זה בא!

הֶסבֵּר:

מטעין כיתות : מטעין מחלקה הוא תת-מערכת של JVM. הוא משמש לטעינת קבצי כיתה. בכל פעם שאנחנו מריצים את תוכנית java, מטעין הכיתה טוען אותה תחילה.

אזור שיטת כיתה : זהו אחד מאזור הנתונים ב- JVM, בו יאוחסנו נתוני מחלקה. משתנים סטטיים, בלוקים סטטיים, שיטות סטטיות, שיטות מופע מאוחסנים באזור זה.

ערימה : ערימה נוצרת כאשר ה- JVM מופעל. זה עשוי להגדיל או להקטין את הגודל בזמן שהאפליקציה פועלת.

לַעֲרוֹם : מחסנית JVM ידועה כמחסנית חוטים. זהו אזור נתונים בזיכרון JVM אשר נוצר עבור שרשור ביצוע יחיד. ערימת ה- JVM של השרשור משמשת את השרשור לאחסון אלמנטים שונים כלומר משתנים מקומיים, תוצאות חלקיות ונתונים לצורך שיטת קריאה ומחזירה.

ערימה ילידית : זה מכניס את כל השיטות המקוריות המשמשות ביישום שלך.

מנוע ביצוע:

  • מהדר JIT
  • אוסף זבל

מהדר JIT: ה מהדר Just-In-Time (JIT) הוא חלק מסביבת זמן הריצה. זה עוזר בשיפור הביצועים של יישומי Java על ידי קומפילציה של קודי בתים לקוד המחשב בזמן הריצה. מהדר JIT מופעל כברירת מחדל. כאשר קובץ שיטה, ה- JVM קורא ישירות לקוד המהולל של אותה שיטה. מהדר ה- JIT מרכיב את קוד הביס של אותה שיטה לקוד מכונה, ומרכיב אותו 'בדיוק בזמן' להפעלה.

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

  • סמן - זה המקום בו אספן הזבל מזהה איזה פיסת זיכרון נמצא בשימוש ואילו לא
  • לטאטא - זה מסיר אובייקטים שזוהו בשלב ה'סימון '.

סביבת הרצה של ג'אבה:

תוכנת JRE בונה סביבת זמן ריצה בה ניתן לבצע תוכניות ג'אווה. ה- JRE היא מערכת הדיסק שלוקחת את קוד ה- Java שלך, משלבת אותו עם הספריות הדרושות ומתחילה את ה- JVM לביצועו. ה- JRE מכיל ספריות ותוכנות הדרושות לתוכניות Java שלך להפעלה. JRE הוא חלק מ- JDK (אותו נלמד בהמשך) אך ניתן להוריד אותו בנפרד.

ערכת פיתוח ג'אווה:

ערכת הפיתוח של Java (JDK) היא סביבת פיתוח תוכנה המשמשת לפיתוח יישומי יישומונים ו- Java. הוא מכיל JRE ומספר כלי פיתוח, מתורגמן / מטעין (java), מהדר (javac), ארכיב (jar), מחולל תיעוד (javadoc) מלווה בכלי אחר.

השטח הכחול שמוצג בתרשים הוא JDK. עכשיו, הרשו לי לפרט את כלי הפיתוח לכולכם.

ג'אווה : זה משגר עבור כל יישומי Java.
ג'אוואק : תואם שפות התכנות של Java.
javadoc : זהו מחולל תיעוד ה- API.
קַנקַן : יוצר ומנהל את כל קבצי ה- JAR.

אם נעבור קדימה עם ארכיטקטורת Java, הבה נבין כיצד פלטפורמת Java היא עצמאית?

איך פלטפורמת Java עצמאית?

מתי נקראת שפת תכנות כלשהי כעצמאית? ובכן, אם ורק אם הוא יכול לפעול בכל מערכות ההפעלה הזמינות ביחס לפיתוחו ולהידורו.
עַכשָׁיו, ג'אווה אינו תלוי בפלטפורמה רק בגלל קוד הביץ '. תן לי להגיד לך מה זה בעצם קוד בתים? במילים פשוטות,
Bytecode הוא קוד של JVM שניתן להבין אותו במכונה.
ביצוע Bytecode בג'אווה מוכיח שזו שפה שאינה תלויה בפלטפורמה.
כאן, אני אראה לך את השלבים המעורבים בתהליך ביצוע Java bytecode.

להלן הסבר השלבים המעורבים:

sample.java → javac (sample. class) → JVM (sample.obj) → פלט סופי

קוד המקור הראשון משמש מהדר Java ומומר בקובץ .class. קוד קובץ המחלקה הוא בצורת קוד בתים וקובץ המחלקה הזה משמש JVM להמרה לקובץ אובייקט. לאחר מכן, תוכל לראות את הפלט הסופי על המסך.

קדימה במאמר אדריכלות ג'אווה, תן לנו להבין את הרעיון של JIT בג'אווה .

JIT בג'אווה

מהדר Just In Time הידוע בכינויו JIT, אחראי בעצם על אופטימיזציה לביצועים של יישומים מבוססי Java בזמן הריצה. הביצועים של יישום תלויים במהדר.
להלן תרשים פשוט המציג את התהליך הפנימי שמתרחש.

מהדר JIT - אדריכלות ג

מהדר JIT מחבר את קוד הבתים של השיטה לקוד מכונה, ומרכיב אותו 'בדיוק בזמן' להפעלה. כאשר קובץ שיטה, ה- JVM קורא ישירות לקוד המהולל של אותה שיטה.
בואו ונצלול עמוק יותר:
יש לפרש או לקבוע את קוד בתים להוראות מכונה מתאימות בהתאם לסט ההוראות המסופק. כמו כן, ניתן לבצע אותן ישירות אם ארכיטקטורת ההוראות מבוססת קוד בתים. פרשנות קוד בתים משפיעה על מהירות הביצוע.
על מנת לשפר את הביצועים, מהדרי JIT מתקשרים עם מכונת ה- Java Virtual Java (JVM) בזמן הריצה ומקבצים רצפי קוד-byt מתאימים לקוד מכונה מקורי (כפי שמוצג בתרשים). בעת שימוש במהדר JIT, החומרה מסוגלת לבצע את הקוד המקורי, בהשוואה לכך שה- JVM יפרש את אותו רצף של קוד-byt שוב ושוב ויתקבל תקורה לתהליך התרגום.

עם זאת הגעתי לקראת סוף מאמר זה בנושא Java Architecture. אני מקווה שהנושאים שנדונו לעיל הוסיפו ערך לידע שלך ב- Java. הישאר מעודכן למאמרים נוספים!

עכשיו שהבנתם את היסודות של ג'אווה, עיינו ב מאת אדוריקה, חברת למידה מקוונת מהימנה עם רשת של יותר מ -250,000 לומדים מרוצים הפרוסים ברחבי העולם. קורס ההכשרה וההסמכה של Java J2EE ו- SOA של אדוריקה מיועד לסטודנטים ואנשי מקצוע שרוצים להיות מפתח Java. הקורס נועד לתת לך יתרון לתכנות ג'אווה ולהכשיר אותך למושגי ג'אווה מרכזיים ומתקדמים יחד עם מסגרות ג'אווה שונות כמו Hibernate & Spring.

הדרכה

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