Pair Programming, parliamone!

Pair Programming, parliamone!

Negli ultimi mesi, sto lavorando con un’azienda che predilige l’uso della metodologia “Pair Programming“, chenon mi era mai capitato di utilizzare in modo costante. Certo, è successo a tutti di sedersi con un collega per discutere di un problema o guardare insieme un...
Caricare plugin in applicazioni .NET

Caricare plugin in applicazioni .NET

Durante lo sviluppo del nostro CMS WebRight, è nata l’esigenza di permettere a persone esterne al team di sviluppare componenti aggiuntive. Ho pensato potesse essere interessante raccontarvi come abbiamo affrontato il problema, mostrandovi come sviluppare un sistema a...
Sicurezza in ASP.NET Core con Policy e Claim

Sicurezza in ASP.NET Core con Policy e Claim

Quando si parla di sicurezza in un’applicazione, viene sempre da pensare a qualcosa di indispensabile ma non sempre facile da implementare. Negli anni, mi è capitato di utilizzare diversi modelli di autorizzazione: dal classico Role-Based alle autorizzazioni custom...
Interrompere i Job asincroni di Quartz 3

Interrompere i Job asincroni di Quartz 3

Durante il consueto refactoring su un progetto di un nostro cliente, abbiamo convertito il precedente codice sincrono in una versione asincrona, sfruttando i Task e il pattern async-await del framework .NET. Sull’argomento vi consiglio di leggere...
Cache distribuita in Asp.NET Core

Cache distribuita in Asp.NET Core

Nel precedente articolo vi ho parlato di come gestire il caching in un’applicazione Asp.Net Core utilizzando in-memory caching. L’utilizzo di questo tipo di caching funziona quando la vostra applicazione è ospitata su un singolo server. Quali sono,...