Testtäckningen är sedan sist “tillräckligt bra”[TM] så vi fokuserar nu på att nå i mål med projektet med hjälp av den sista pusselbiten: Clean Architecture
Lärdomar
- När filer låses av .Net Core Host måste man slå ihjäl processen för att kunna kompilera igen
- Det går att göra en hel stream utan att Visual Studio hänger sig
- Magkänslan är påtagligt bättre efter det här avsnittet
Clean Architecture
Före
Efter
‘nuff said
Dependency injection
static async Task Main(string[] args)
{
var serviceProvider = SetupDependencies();
var fileParser = serviceProvider.GetService<AsyncFileParser>();
var result = await fileParser.ParseFiles(@"data");
result.ForEach(r => Console.WriteLine($"{r.timestamp}: {r.csvValue}"));
}
private static IServiceProvider SetupDependencies()
{
var serviceProvider = new ServiceCollection()
.AddSingleton<ICsvRowParser, SpanRowParser>()
.AddSingleton<IFileRetriever, FileRetriever>()
.AddSingleton<AsyncFileParser>()
.BuildServiceProvider();
return serviceProvider;
}
Med hjälp av er tittare och den här sidan fick vi tillslut ihop den sista pusselbiten.