Condividi tramite


Condivisione del codice su più piattaforme

Questi articoli illustrano le diverse opzioni disponibili per la condivisione del codice tra piattaforme, tra cui Windows, Android, iOS e altro ancora.

Panoramica della condivisione del codice

Informazioni sulle diverse opzioni di condivisione del codice disponibili per i progetti Xamarin, incluse librerie .NET Standard e progetti condivisi. Sono supportate anche librerie di classi portabili, ma sono considerate deprecate a favore di .NET Standard.

.NET Standard

.NET Standard è l'opzione preferita per la condivisione del codice tra piattaforme. Il codice è basato su una versione specifica (2.0 offre la migliore compatibilità api con il codice .NET Framework esistente) e può quindi essere utilizzato da altri progetti che supportano tale livello o superiore. I progetti .NET Standard sono supportati sia in Visual Studio 2019 che in Visual Studio 2019 per Mac.

Progetti condivisi

Progetti condivisi consente di scrivere codice comune a cui fa riferimento un numero di progetti di applicazione diversi. Il codice viene compilato come parte di ogni progetto di riferimento e può includere direttive del compilatore per incorporare funzionalità specifiche della piattaforma nella codebase condivisa. Questo articolo illustra come funzionano i progetti condivisi e come crearli e usarli con progetti Xamarin.

Librerie di classi portabili

I progetti della libreria di classi portabile consentono di compilare e distribuire assembly contenenti codice condiviso da eseguire su più piattaforme. Per creare una libreria di classi portabile (o "PCL") è prima necessario selezionare le piattaforme di destinazione, quindi scrivere codice in un sottoinsieme di .NET Framework disponibile nel profilo definito per tali piattaforme. Le licenze CAL vengono considerate deprecate nelle versioni più recenti di Visual Studio; Gli sviluppatori sono invitati a usare invece .NET Standard 2.0.

Progetti NuGet: librerie multipiattaforma per la condivisione del codice

I pacchetti NuGet possono essere generati automaticamente da progetti PCL o .NET Standard; e Progetti condivisi possono essere inseriti in pacchetti NuGet "esca e switch" usando il tipo di progetto NuGet separato. Questa sezione illustra come creare pacchetti NuGet per ogni scenario di condivisione del codice.

Creazione manuale di pacchetti NuGet per Xamarin

Suggerimenti per la creazione di pacchetti NuGet che funzionano con la piattaforma Xamarin.

Usare librerie C/C++ nei progetti Xamarin multipiattaforma

Questa tecnica consente di disaccoppiare l'evoluzione delle librerie C/C++, un'associazione C# in un'applicazione NuGet e le applicazioni Xamarin. La funzionalità è fornita dalla libreria C/C++ della piattaforma nativa, ma tutto il codice specifico della piattaforma è isolato dalle applicazioni Xamarin finali, consentendo le prestazioni più elevate senza duplicazione del codice.