Avalonia solo in codice
Interfacce grafiche multipiattaforma in C#, tutte scritte in codice, senza XAML: una collana in dieci volumi dell'Ing. Roberto Arato per chi vuole costruire applicazioni vere che girano uguali su Windows, macOS e Linux, dal primo dotnet run fino al 3D, all'audio, al video e alla distribuzione sui computer degli utenti.
Volume 1Il linguaggio C#scritto
Volume 2Interfacce desktopscritto
Volume 3Grafica 2Dscritto
Volume 4Grafica 2D avanzatascritto
Volume 5Grafica 3Din scrittura
Volume 6Grafica 3D avanzatada scrivere
Volume 7Audioda scrivere
Volume 8Videoda scrivere
Volume 9Dispositivi, dati e reteda scrivere
Volume 10Sistema, distribuzione e qualitàda scrivere
Che cos'è
Quasi tutto quello che si trova su Avalonia descrive le finestre in XAML, un linguaggio a marcatori. Questa collana fa un'altra scelta: tutto è C#. Le finestre, i controlli, i temi, gli stili e le animazioni si scrivono nello stesso linguaggio del resto del programma, e il compilatore controlla ogni riga. Niente file da tenere allineati, niente errori che compaiono solo quando la finestra si apre.
- Si parte da zero. Il primo volume insegna il linguaggio C# dall'installazione dell'SDK fino a thread,
Taskeawait; le finestre cominciano nel secondo. - Niente detto, tutto misurato. Quando un capitolo dice quanto costa qualcosa (un disegno, un'animazione, un thread), un programma lo ha misurato, e la figura mostra il numero vero.
- Le figure vengono dai programmi. Ogni finestra nei libri è disegnata, o fotografata, dal programma del capitolo mentre gira: se il codice cambia, la figura cambia con lui. Qualche esempio nelle schermate.
- Solo librerie gratuite, utilizzabili anche nei programmi commerciali: .NET, la parte libera di Avalonia (MIT) e, argomento per argomento, le librerie spiegate con la loro licenza.
- Il codice è libero. Gli esempi dei libri e RAVAL, la piccola libreria della collana, hanno la licenza MIT: si scaricano dalla pagina Download.
Per chi è
Per chi non ha mai programmato e vuole cominciare da un linguaggio serio; per chi conosce un altro linguaggio e vuole C# fatto bene; per chi conosce già C# e vuole passare alle finestre senza XAML. Serve un computer con Windows, macOS o Linux, l'SDK di .NET 10 (gratuito) e un editor: i libri usano Visual Studio Code.
I dieci volumi
- Il linguaggio C#: tipi, oggetti, file, JSON e XML, architetture, thread e
async. - Interfacce desktop: Avalonia in codice, controlli, temi, architetture e thread dell'interfaccia.
- Grafica 2D: disegno e animazioni con Avalonia.
- Grafica 2D avanzata: Skia, Direct2D, immagini e progetti.
- Grafica 3D: il 3D da zero con OpenGL.
- Grafica 3D avanzata: Vulkan e Direct3D.
- Audio: il suono digitale nelle applicazioni Avalonia.
- Video: riprodurre, catturare ed elaborare video.
- Dispositivi, dati e rete: periferiche, file, database, rete e codice nativo.
- Sistema, distribuzione e qualità: dal computer dello sviluppatore a quello degli utenti.
I volumi da 1 a 4 sono scritti, il 5 è in scrittura, gli altri hanno l'indice e la copertina. Ogni volume ha la sua pagina con l'indice dei capitoli e lo stato: si parte da Volumi.
RAVAL, la libreria della collana
RAVAL (Roberto Avalonia Library) raccoglie le estensioni fluenti che rendono corto e leggibile un'interfaccia scritta in C#, i grafici disegnati a mano, le tabelle, i dialoghi, il registro, le impostazioni e un piccolo server JSON. È MIT, ha il suo sito, raval.aratoingegneria.it, e qui il tutorial e le schede e il riferimento delle classi.