<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>Gabriele Romanato</title>
        <link>https://gabrieleromanato.com/</link>
        <description>Io, sviluppatore web</description>

        
        <item>
            <title>Il testing automatico con xUnit in C#</title>
            <link>https://gabrieleromanato.com/2026/08/il-testing-automatico-con-xunit-in-csharp</link>
            <description>Nell&#39;ecosistema .NET, xUnit è uno dei framework di test più diffusi. In questo articolo impariamo a scrivere test unitari, a strutturarli correttamente e a isolare il codice dalle sue dipendenze, mettendo a frutto la dependency injection studiata in precedenza.</description>
        </item>
        
        <item>
            <title>Accesso ai dati con Entity Framework Core</title>
            <link>https://gabrieleromanato.com/2026/08/accesso-ai-dati-con-entity-framework-core</link>
            <description>Le applicazioni reali hanno bisogno di persistenza, tipicamente tramite un database. Entity Framework Core, abbreviato in EF Core, è l&#39;ORM ufficiale di .NET: un Object-Relational Mapper che permette di lavorare con il database usando oggetti C# anziché scrivere query SQL a mano.</description>
        </item>
        
        <item>
            <title>Creare una Web API con ASP.NET Core</title>
            <link>https://gabrieleromanato.com/2026/08/creare-una-web-api-con-aspnet-core</link>
            <description>In questo articolo costruiamo una semplice Web API REST, esplorando il routing, i verbi HTTP, il binding dei dati e la restituzione delle risposte. </description>
        </item>
        
        <item>
            <title>La dependency injection in C# e .NET</title>
            <link>https://gabrieleromanato.com/2026/08/la-dependency-injection-in-csharp-e-net</link>
            <description>La dependency injection, spesso abbreviata in DI, è la tecnica che mette in pratica questo principio: invece di creare da sé le proprie dipendenze, una classe le riceve dall&#39;esterno. La piattaforma .NET include un contenitore di dependency injection integrato, ormai centrale in quasi ogni applicazione moderna.</description>
        </item>
        
        <item>
            <title>Principi SOLID e design pattern in C#</title>
            <link>https://gabrieleromanato.com/2026/08/principi-solid-e-design-pattern-in-csharp</link>
            <description>Conoscere la sintassi di un linguaggio è solo il primo passo: scrivere software di qualità richiede di organizzare il codice in modo che sia comprensibile, manutenibile ed estensibile nel tempo. I principi SOLID e i design pattern offrono una guida collaudata per raggiungere questi obiettivi.</description>
        </item>
        
        <item>
            <title>I metodi di estensione in C#</title>
            <link>https://gabrieleromanato.com/2026/08/i-metodi-di-estensione-in-csharp</link>
            <description>In questo articolo capiamo come funzionano, come scriverne di propri e quali sono le buone pratiche per usarli con giudizio.</description>
        </item>
        
        <item>
            <title>Nullable reference types e sicurezza sui null in C#</title>
            <link>https://gabrieleromanato.com/2026/08/nullable-reference-types-e-sicurezza-sui-null-in-csharp</link>
            <description>Apriamo la terza serie, di livello avanzato, affrontando uno dei problemi più diffusi nello sviluppo software: i riferimenti nulli.</description>
        </item>
        
        <item>
            <title>Lavorare con i file e l&#39;input/output in C#</title>
            <link>https://gabrieleromanato.com/2026/08/lavorare-con-i-file-e-input-output-in-csharp</link>
            <description>In questo articolo, che conclude la serie intermedia, vediamo come leggere e scrivere file, come gestire i percorsi e le cartelle e come applicare le tecniche di gestione delle risorse e asincronia apprese in precedenza.</description>
        </item>
        
        <item>
            <title>Enumerazioni, struct e tuple in C#</title>
            <link>https://gabrieleromanato.com/2026/08/enumerazioni-struct-e-tuple-in-csharp</link>
            <description>In questo articolo esploriamo le enumerazioni per rappresentare insiemi finiti di valori, le struct per aggregare dati leggeri e le tuple per raggruppare valori senza definire un tipo dedicato.</description>
        </item>
        
        <item>
            <title>Programmazione asincrona con async e await in C#</title>
            <link>https://gabrieleromanato.com/2026/08/programmazione-asincrona-con-async-e-await-in-csharp</link>
            <description>La programmazione asincrona libera il thread durante l&#39;attesa, restituendogli il controllo affinché possa svolgere altro lavoro.</description>
        </item>
        

    </channel>
</rss>