מה חדש ב- Microsoft .Net Framework 4.8

מיקרוסופט פרסמה את .Net Framework 4.8, הגרסה האחרונה של מסגרת פיתוח היישומים של החברה עבור Windows. העדכון מביא מספר תיקוני באגים, תיקוני אבטחה ושיפורים ב- Common Language Runtime, ASP.Net, Windows Forms, Windows Presentation Foundation ו- Windows Communication Foundation. 

היכן ניתן להוריד את .Net Framework 4.8

ניתן להוריד את מהדורת ההפקה של .Net Framework מאתר ה- NET של מיקרוסופט. 

גרסה נוכחית: התכונות החדשות ב- .Net Framework 4.8

פורסם ב- 18 באפריל 2019, .Net Framework 4.8 כולל את התכונות והשיפורים החדשים הבאים:

  • עבור NGEN (מחולל תמונות מקומיות), לתמונות במסגרת .Net כבר אין קטעים הניתנים לכתב וניתנים להפעלה. זה מצמצם את שטח הפנים הזמין להתקפות המנסות לבצע קוד שרירותי על ידי שינוי כתובות זיכרון NGEN.
  • סריקה נגד תוכנות זדוניות מתחילה כעת לכל המכלולים, בין אם נטענים מהדיסק או מהרשת. בעבר, זמן הריצה של .Net יזם רק סריקות (על ידי Windows Defender ותוכנות אנטי-תוכנות זדוניות של צד שלישי המיישמות את ממשק סריקת Antimalware) של מכלולים שנטענו מהדיסק. 
  • מהדר ה- NET Framework 4.8 JIT מבוסס על .Net Core 2.1. תיקוני באגים וביצוע אופטימיזציות מבוססות קוד מ- .Net Core 2.1 זמינים כעת ב-. Net Framework.
  • ב- BCL (ספריית מחלקת הבסיס) שופרה ספריית הדחיסה החיצונית של Zlib, הצטמצם מספר גימורי האובייקט כתוצאה משימוש ב- X509Certificate2 ובסוגים קשורים, ונוסף ממשק API להשגת טביעות אצבע עם המתקשר- אלגוריתם העיכול שצוין.
  • בנוסף, ה- BCL ב- .Net Framework 4.8 מקטין את ההשפעה של FIPS (תקני עיבוד מידע פדרלי) על הצפנה. מאז .Net Framework 2.0, שיעורי ספקי הצפנה הטילו חריג כאשר ספריות הצפנה מוגדרות במצב FIPS. עם .Net 4.8, חריגים אלה כבר לא יושלכו כברירת מחדל.
  • שיפורי נגישות מוצעים עבור Windows Forms, כדי לשפר את התקשורת של נתוני היישומים ללקויי ראייה.
  • ב- ASP.Net תוקנה בעיה הכוללת טיפול בכותרות HTTP רב-ערכיות שעשויות להשפיע על עיבוד נתונים מרובי-חלקים.
  • תוקנו בעיות CLR (Common Language Runtime) בהן נשלחו ערכים שגויים כ- EventListeners.
  • תוויות מופעלות בטפסים של Windows מעובדות כעת תמיד באמצעות צבע טקסט בעל ניגודיות גבוהה כאשר מצב ניגודיות גבוה מופעל. זה משפיע על יישומים שמורכבים מחדש למיקוד .Net Framework 4.8.
  • אלגוריתם הגיבוב המשמש ליצירת בדיקות קבצי XOML בעת בניית פרויקטים עם קבצי XOML שונה. מפתחים עדיין יכולים להשתמש באלגוריתם הקודם.
  • אלגוריתם הגיבוב לחישוב מפתחות למטמון זיכרון פנימי שונה. מפתחים עדיין יכולים להשתמש באלגוריתם הקודם.
  • תוקנה דליפת זיכרון שהשפיעה על HttpWebRequest בעת תקשורת עם שרת HTTPS באמצעות פרוקסי.
  • ב- Windows Presentation Foundation, תוקנה דליפת זיכרון שנוצרה בעת הסרת פריטי נתונים מאוספי האב בעת שהייתה UIAutomation.
  • Windows Presentation Foundation הוסיפה תמיכה במודעות DPI ל- Per-Monitor V2 וב- DPI במצב מעורב.
  • ב- Windows Communication Foundation, תוקנה בעיית נגישות שגרמה לפסי שגוי של ComboBox לפי נושאים שגויים בניגודיות גבוהה.
  • ב- Windows Communication Foundation, ServiceHealthBehavior מוצג כהתנהגות שירות שנוספה לאוסף ServiceDescription.Behaviors. זה יכול להחזיר את מצב בריאות השירות עם קודי תגובת HTTP ולאפשר פרסום של בריאות השירות. 

גרסה קודמת: התכונות החדשות ב- .Net Framework 4.7.2

כבר פופולרי בטכנולוגיות כמו Spring Framework, הזרקת תלות מאפשרת לאובייקט אחד לספק תלות של אובייקט אחר. .Net Framework 4.7.2 מקל על השימוש ביכולת זו בטפסים מקוונים של ASP.net. הזרקה מבוססת מגדיר, ממשק ובנייה נתמכת, וניתן לחבר מסגרות הזרקת תלות אחרות.

תכונות חדשות אחרות ב- .Net Framework 4.7.2 כוללות:

  • SameSiteהרכוש מתווסף במסגרת האינטרנט ASP.Net, לטעון כי עוגייה שאסור תישלח עם בקשות בין אתרים. מטרת SameSiteהתכונה היא להפחית את דליפת המידע ולהגן מפני התקפות זיוף חוצות אתרים. הנכס נוסף ב HttpCookieType. זה מופיע גם בעוגיות FormsAuthentication ו- SessionState.
  • כדי לשפר את האבטחה והתאימות, אימות Active Directory של Azure נתמך באמצעות מילת מפתח לאימות אינטראקטיבי שנוספה לאימות רב-גורמים. זוהי הרחבה של מחרוזת החיבור SqlClient.
  • ממשקי API מתווספים לסוגי אוספים סטנדרטיים, ומאפשרים פונקציונליות חדשה כגון בוני HashSet המאפשרים בניית HashSets עם קיבולת. זה מציע יתרון ביצועים כאשר ידוע מה גודל ה- HashSet.
  • שיפורים בקריפטוגרפיה מפשטים יצירה של אובייקטים RSA ו- DSA ושיחות ImportParameters.
  • Windows Presentation Foundation (WPF) הוסיף את StaticResourceתכונת ההפניות המאפשרת להודיע ​​על כך לעוזר אבחון כאשר StaticResourceנפתרת הפניה. לדוגמא, עוזר אבחון כגון מתקן עריכה והמשך של Visual Studio עשוי לרצות לעדכן את השימוש במשאב כאשר הוא משתנה או מחליף ערך במילון משאבים.
  • WorkflowDesignerColorsבכיתה נוספה כדי לשפר את חוויית ממשק משתמש במצב ניגודיות גבוהה.
  • באמצעות שחרור דחיסה של Zlib, השתפר התפוקה לצורך דחיסת ארכיוני Zip באמצעות יישום מקורי של Zip.
  • עומסי העבודה של .Net Framework יכולים כעת ליצור בקשות לחתימת אישורים, ומאפשרים לייצר בקשות לכלים קיימים.
  • תמיכה לכל צג נוספה ליישומי Windows Presentation Foundation וליישומי VSTO (Visual Studio Tools for Office) המודעים ל- HDPI שנפרסו באמצעות ClickOnce.
  • התמיכה משופרת עבור .Net Standard 2.0.
  • עוזרי אבחון יכולים לאתר מילוני ResourceDiction שנוצרו מתוך URI ממקור נתון.

גרסה קודמת: מה חדש ב- .Net Framework 4.7.1

עם שחרורו של מיקרוסופט את .Net Framework 4.7.1 באמצע אוקטובר 2017, זכתה פלטפורמת הפיתוח לשיפורים קריטיים באיסוף האשפה, האבטחה ותצורת היישומים. 

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

העדכון מוסיף גם אפשרויות חשיש מאובטחות לאימות טפסים של ASP.Net, כולל SHA-2 (אלגוריתם Hash מאובטח), היורש החזק יותר ל- SHA-1. לשם תאימות, SHA-1 היא עדיין אפשרות ברירת המחדל. SHA-2 נתמך גם עבור Message.HashAlgorithm, המציין את אלגוריתם הגיבוב המשמש בתור הודעות בעת אימות. 

בוני תצורה חדשים ב- .Net 4.7.1 מאפשרים למפתחים להזרים ולבנות תצורה עבור יישומים בזמן הריצה. ניתן לקחת את נתוני התצורה ממקורות שמעבר לקובץ התצורה; בגרסאות קודמות של .Net, התצורה היא סטטית. באמצעות בוני תצורה, יישומים מסוגלים להחיל קבוצה מוגדרת בהתאמה אישית של בונים על קטע תצורה. בונים יכולים לשנות את נתוני התצורה הכלולים בקטע תצורה או לבנות אותם מאפס, אפילו לצייר נתונים חדשים ממקורות שאינם קבצים סטטיים.

תכונות אחרות של השדרוג כוללות:

  • תמיכה במפרט .Net Standard 2.0, הכולל קבוצה של ממשקי API המשותפים למספר יישומי .Net.
  • שיפורי נגישות ב- WPF (Windows Presentation Foundation) וב- Windows Forms, כולל שיפורי ניגודיות גבוהה, דפוסי ממשק משתמש משופרים וחוויות משופרות בכלים כגון Narrator.
  • תמיכה באבחון חזותי ב- WPF, המאפשרת שימוש בכלים לניתוח עצים חזותיים של XAML.
  • תמיכה במהדר ReadOnlyReferences בשפה C # 7.2, להעברת משתנים בהתייחסות אך ללא חשיפת נתונים לשינויים.
  • ממשק API לזיהוי תכונות זמן ריצה כדי לקבוע אם זמן ריצה תומך בתכונה מסוימת.
  • SystemValueTupleסוגים ניתנים לסידור , אשר אמורים להקל על המעבר  System.Tuple לתחביר הדו-צדדי החדש ב- C # 7.0 וב- Visual Basic 15.5.
  • ממשק API של ASP.Net המספק דרך סטנדרטית לבניית HttpCookieאובייקט ממחרוזת ולכידת מאפייני קובצי cookie כגון תאריך תפוגה ונתיב.
  • תכונה של שלב ביצוע ב- ASP.Net, הנקראת ExecutionStepInvoker, המאפשרת למפתחים להריץ שלבי ביצוע בתוך הקוד שלהם, ולא בצינור שהוגדר מראש של ASP.Net. תכונה זו מיועדת לספריות העוסקות בזרימת ביצוע היישומים.