JavaRush /בלוג Java /Random-HE /יתרונות השימוש באביב
Alex
רָמָה

יתרונות השימוש באביב

פורסם בקבוצה
מפתחים מתחילים רבים נתקלים במוקדם או במאוחר ב- Spring , מסגרת פופולרית לפיתוח יישומים ב-Java. הדבר העיקרי ש-Spring מאפשר לכם לעשות הוא לפשט את הפיתוח של אפליקציות J2EE עבור המפתח. להלן היתרונות העיקריים שמקבל מפתח בעת שימוש ב-Spring:
יתרונות השימוש באביב - 1
  • אביב מספק מסגרת ליישום העתידי שלך, אם אתה רוצה "ריק" עבור היישום העתידי שלך. יחד עם זאת, המסגרת מכתיבה לכם את הכללים לבניית האפליקציה – ישנה ארכיטקטורת אפליקציה מסוימת שלתוכה אתם צריכים לבנות את הפונקציונליות שלכם. פונקציונליות זו תהיה למעשה ההיגיון העסקי של האפליקציה שלך. אביב כולל תת-פרויקטים רבים המותאמים לפונקציונליות ספציפית (SpringMVC, Spring Security, SpringData ועוד. ניתן לראות את הרשימה המלאה בכתובת https://spring.io/projects ), מתוכם יכול היזם לבחור את המתאים ביותר עבורו, וכן אל תשתמש בשאר - זהו עיקרון מודולרי של בניית אפליקציה;

  • ביישום מבוסס Spring, אובייקטים מחוברים באופן רופף באמצעות הזרקת תלות. אחת המטרות של אביב הייתה לשבור את התלות של חפצים מסוימים באחרים. מהי התמכרות? זה כאשר Object1 משתמש בשיטות של Object2 אחר, כלומר Object1 תלוי ב-Object2, שבשיטות שלו הוא משתמש. למה הוא תלוי? אבל מכיוון שעד שהאובייקט Object2 נוצר, Object1 לא יוכל ליישם את הפונקציונליות שלו. איך לשבור את ההתמכרות? "הזרקת" הפניה לאובייקט Object2 לאובייקט Object1 באמצעות בנאי או קובע. תהליך זה הוא למעשה הזרקת תלות. חשוב לזכור כי ב-Spring יש לבנות אובייקטים על בסיס ממשקים, כך שיוזרקו תלות בצורת ממשק להחלפה אפשרית בהמשך של המימוש.

  • אינך צריך ליצור אובייקטים באופן ידני באמצעות האופרטור החדש. פונקציה זו הועברה למיכל האביב. זהו היפוך שליטה (IoC) - העברת הפונקציה של מופע של התלות (אובייקטים) הדרושים לקונטיינר. מה תפקידו של היזם בכל זה אתם שואלים? הכריז על הרכיב כך שייכנס להקשר האביב. ההקשר של אביב, במילים פשוטות, הוא מפה שבה כל הפולים נמצאים. כשאומרים שעועית היא בהקשר של אביב, קחו בחשבון שהשעועית נמצאת במפה, ואביב יודע את המפתח לקבל אותה מהמפה. כל מה שמסומן כשעועית בתצורת ה-xml או במחלקות עם הערות @Component מוזמן וממוקם במפה של הטופס Map<key,bean> map, כלומר. למיכל יש מפה שבה הוא "מאחסן" את כל הפולים (המושג המרכזי ב-Spring הוא שעועית, זו ישות המנוהלת על ידי המיכל. כדי ששעועית (מחלקה רגילה) תהפוך למנוהלת, היא חייבת ליפול לתוך ההקשר של אביב.) ובמידת הצורך יישום, המיכל עושה משהו כזה: map.get(key), המפתח הוא סוג השדה;

  • האביב משחרר אותך לא רק מהצורך ליצור חפצים, אלא גם לשייך אותם. לדוגמה, ההערה @Autowired מאפשרת לך לחבר רכיבים באופן אוטומטי. ניתן לתאר את הערת הקפיץ @Autowired בפשטות כך: חבר יקר, מיכל קפיץ, אנא הסתכל במפה שלך עם שעועית כדי לראות אם יש לך את המופע של הכיתה של מה שאני עומד מולו. אם יש, תן לי קישור בשדה שלפניו אני מוכרז. קישור אוטומטי מאפשר לך להפחית את כמות הקוד בעת קביעת התלות ברכיבים;

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


    • יכולת בדיקה משופרת. כאשר מחלקות מתוכננות על סמך DI וממשקים, ניתן להחליף בקלות תלות (עם יישומים מזויפים) במהלך הבדיקה;

    • היכולת לתכנת בסגנון הצהרתי באמצעות הערות מפחיתה את כמות הקוד באפליקציה;

    • תמיכה ואינטגרציה טובה עם טכנולוגיות גישה לנתונים, עסקאות, AOP מפשטת את הפיתוח;

    • תיעוד טוב עוזר מאוד בעת איתור באגים ביישום;
למי שרוצה להבין את אביב אני ממליץ לקרוא את ק' קירות. אביב בפעולה - מהדורה שלישית וכמובן התיעוד הרשמי.
הערות
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION