Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Milyen előnyei vannak a Microsoft.Extensions.Logging MVVMCross korábbi naplózási rendszerének.


Milyen előnyei vannak a Microsoft.Extensions.Logging MVVMCross korábbi naplózási rendszerének.


A Microsoft.Extensions.Logging az MVVMCross korábbi naplózási rendszere több előnyt kínál:

1. Rugalmasság és kiterjeszthetőség: Microsoft.Extensions.Logging olyan absztrakciós réteget biztosít, amely lehetővé teszi a fejlesztők számára, hogy különféle naplózási szolgáltatókat, például Serilog, NLOG -t vagy Log4Net -t használjanak. Ez a rugalmasság azt jelenti, hogy a fakitermelési keret a projekt igényeitől függően könnyen kicserélhető, a mögöttes kód megváltoztatása nélkül. Ezzel szemben az MVVMCross korábbi rendszere merevebb volt, és speciális megvalósításokat igényelt a különböző szolgáltatók számára [1] [2].

2. Függőségi injekciós támogatás: Microsoft.Extensions.Logging jól integrálódik a függőségi injekciós keretekhez, megkönnyítve a naplók beinjektálását az osztályokba. Ez különösen hasznos az egységteszteléshez, mivel lehetővé teszi a fakitermelők létrehozását a fakitermelési viselkedés ellenőrzése érdekében [7]. Az MVVMCross támogatja a naplózás függőségi befecskendezését is, de a Microsoft.Extensions.logging használata egy szabványosabb megközelítést biztosít a különböző keretek között [2].

3. Stabilitás és közösségi támogatás: Microsoft.Extensions.Logging egy széles körben elfogadott és stabil API, amelyet a Microsoft és a szélesebb .NET közösség támogat. Ez a stabilitás biztosítja, hogy továbbra is fennmaradjon és frissüljön, és hosszú távú megbízhatóságot biztosítson a projektekhez [2] [9].

4. Egyszerűsített konfiguráció: A Microsoft.extensions.logging segítségével a konfigurációt az AppSettings.json vagy más konfigurációs fájlok segítségével lehet kezelni, ami egyszerűsíti a beállítási folyamatot, összehasonlítva más naplózási keretekkel. Ez különösen akkor hasznos, ha olyan szolgáltatókat használ, mint a Serilog vagy a NLOG, amelyek a JSON segítségével konfigurálhatók [7].

5. A szállítói bekerülés elkerülése: olyan absztrakciós réteg használatával, mint a Microsoft.Extensions.Logging, a fejlesztők elkerülik a kódot egy adott naplózási kerethez. Ez megkönnyíti a váltást a különböző naplózási szolgáltatók között, jelentős kódváltozások nélkül, csökkentve az eladó beépítését és növeli a projekt rugalmasságát [9].

6. Skálázhatóság és teljesítmény: Microsoft.Extensions.Logging célja a nagy teljesítményű naplózási forgatókönyvek hatékony kezelése. Támogatja az aszinkron fakitermelést, és optimalizálható a különböző környezetekhez, így alkalmas nagyszabású alkalmazásokhoz [9].

Összefoglalva: a Microsoft.Extensions.Logging rugalmas, méretezhető és széles körben támogatott naplózási megoldást kínál, amely jól integrálódik a függőségi injekcióhoz és a különféle naplózási szolgáltatókhoz, így kiváló választás az MVVMCross korábbi naplózási rendszeréhez képest sok fejlesztési forgatókönyvnél.

Idézetek:
[1] https://developer.vonage.com/en/blog/adaptive-library-logging-with-microsoft-extensions-logging-dr.
[2] https://www.mvvmcross.com/documentation/fundamentals/logging-new
[3] https://stackoverflow.com/questions/46483019/logging-from-static-members-with-microsoft-extensions-logging
[4] https://learn.microsoft.com/en-us/ef/core/logging-events-diagnostics/extensions-logging
[5] https://www.mvvmcross.com/documentation/upgrading/upgrade-to-mvvmcross-60
[6] https://stackoverflow.com/questions/42356802/how-does-microsoft-extensions-logging-work-for-fatl-det-framework
[7] https://stackoverflow.com/questions/58209076/microsoft-extensions-logging-vs-nlog
[8] https://stackoverflow.com/questions/68075159/mvvm-cross-logging setup-class
[9] https://blog.stephencleary.com/2018/05/Microsoft-extensions-logging-Part-1-introduction.html
[10] https://www.mvvmcross.com/documentation/fundamentals/viewmodel-lifecycle
[11] https://www.reddit.com/r/dotnet/comments/142fs0y/serilog_vs_microsoft_logger_ilogger/
[12] https://github.com/mvvmcross/mvvmcross/issues/2936