September 20, 2024

Brekende wijzigingen en API-stabiliteit

Brekende wijzigingen en API-stabiliteit

eind vorige maand, Avalonia-gebruikersinterface Het team heeft een aankondiging gedaan met betrekking tot versie 11. Het team heeft onthuld dat de eerste versie beschikbaar is Kandidaatvrijgave (RC) Dit is een belangrijke uitgave. In hun officiële post benadrukten ze het belang van deze prestatie, aangezien het een cruciale stap voorwaarts betekent voor het project. De primaire focus van deze RC ligt op het installeren van de API, die de definitieve versie van v11 dichter bij voltooiing brengt.

Avalonia UI is een open source, platformonafhankelijk gebruikersinterfaceframework voor .NET-ontwikkelaars, ontworpen om het gemakkelijk te maken om desktopapplicaties te ontwikkelen die kunnen worden uitgevoerd op Windows, macOS, Linux, iOS, Android en WebAssembly. Vorige maand hield InfoQ daarentegen ook een interview met Mike James, de huidige CEO van het bedrijf, dat lezers kunnen lezen en meer inzicht krijgen in het Avalonia UI-platform.

Avalonia UI v11 heeft een sterke focus op onderhoudbaarheid en bevat de meest fundamentele wijzigingen in de API in zijn geschiedenis, waardoor een veelbelovende toekomst voor het project wordt gegarandeerd. Zoals opgemerkt in de releasepost, is er uitgebreid nagedacht, tijd en middelen geïnvesteerd om ervoor te zorgen dat de veranderingen de weg vrijmaken voor een robuustere en betrouwbaardere Avalonia-gebruikersinterface. Hoewel deze release de belangrijkste keerpuntveranderingen tot nu toe introduceert, verwacht het team achter Avalonia UI dat toekomstige grote releases veel minder API-tweaks zullen bevatten.

Het officiële bericht voor de release luidt:

Deze RC is een belangrijke mijlpaal voor ons omdat het de API stabiliseert. Het was een reis van intensief werken, leren en samenwerken. En nu kunnen we met vertrouwen zeggen dat we dichter dan ooit bij de definitieve release van v11

Als onderdeel van deze plotselinge veranderingen zijn enkele voorheen algemene categorieën verplaatst naar een “interne” classificatie. De mod is gemaakt om de integriteit van de apps te beschermen door wijzigingen in de apps toe te staan ​​zonder dringende wijzigingen in de toekomst. Hoewel er enkele maatregelen zijn genomen om een ​​soepele overgang te waarborgen, wordt erkend dat er gevallen kunnen zijn waarin kritieke categorieën niet langer zichtbaar zijn. In dergelijke gevallen worden ontwikkelaars sterk aangemoedigd om contact op te nemen met het Avalonia UI-team voor assistentie. Ze staan ​​open voor dialoog over de mogelijkheid om de publieke zichtbaarheid van bepaalde categorieën te herstellen op basis van waardevolle gebruikersfeedback.

Naast deze Avalonia UI v11 Release Candidate kunnen zowel ontwikkelaars als gebruikers veel feedback van de community en waardevolle inzichten over het project vinden. GitHub-discussiepagina. Ontwikkelaars deelden hun ervaringen, deden suggesties en vroegen om hulp bij migratie en probleemoplossing met betrekking tot de RC-versie. Om een ​​breed begrip te krijgen van de verschillende gezichtspunten rond de Avalonia UI v11 RC-release, wordt het ten zeerste aanbevolen voor gebruikers om in het commentaargedeelte van de genoemde GitHub-discussiepagina te duiken.

Samen met de GitHub-discussiepagina wordt de GitHub-wikipagina genoemd Avalonia 11 Portinggids. Deze migratiegids biedt stapsgewijze instructies en aanbevelingen voor het aanpassen van bestaande codebases om te profiteren van de nieuwe functies en verbeteringen die zijn geïntroduceerd in versie 11. Het behandelt verschillende aspecten van het migratieproces, waaronder het wijzigen van onderbrekingen, API-aanpassingen en best practices voor een vlotte overgang.

Volgens de porteringsgids zijn de volgende wijzigingen aangebracht, het heeft zijn eigen raamwerk verwijderd Vertrouwen op System.Reactive. Voor ontwikkelaars die interactieve functies gebruiken, is het noodzakelijk om de pakketreferentie op te nemen naar System.Reactive bij uw project. Ook , IStyleable De interface is verouderdOntwikkelaars kunnen er meer over lezen op Gerelateerd github-probleem. in aanvulling op, weergeven in het formulier .axaml/.axaml.cs (of .xaml / .xaml.cs) paren worden nu geleverd met automatisch gegenereerde C#-code.

In aanvulling op, controles En de categorieën die ervan zijn afgeleid, zoals Keuzelijst En vak bewerken Het is nu eigenaar van zowel de eigenschap Items als ItemsSource, vergelijkbaar met het WPF/UWP-framework. Bovendien is de IAssetLoader De interface is niet meer beschikbaar en vast gebruik wordt geadviseerd AssetLoader categorie in plaats daarvan. Ook virtueel AvaloniaObject.OnPropertyChanged De methode is aangepast om niet-openbaar te zijn.

Andere opvallende wijzigingen zijn aangebracht met bouwelementen zoals evenementenEn PlanningEn concentrerenEn visuele boomEn bellen En nog veel meer, dus het is ten zeerste aan te raden om het bovenstaande eens te bekijken Avalonia 11 Portinggids.

Het Avalonia UI-team nodigt alle gebruikers uit om RC uit te proberen, feedback te geven en bij te dragen om Avalonia UI v11 zo goed mogelijk te maken. Ze betuigen hun oprechte dank aan hun gebruikers, bijdragers en de hele Avalonia-gemeenschap voor hun voortdurende steun.

Ten slotte kunnen gebruikers dit doen om aan de slag te gaan met Avalonia UI v11 RC Download het Nuget-pakket Geïnteresseerde lezers kunnen ook meer te weten komen over de gebruikersinterface van Avalonia en beginnen met verkennen Officiële documenten En de belangrijkste Avalonia GitHub-repository.