Message from @porco
Discord ID: 480359898790625282
Guess which autistic feature pornspider will have next
logging
No that's already there :DDDDD
Dunno why but the idea of <InterfaceShit, Shit> seems kinda weird to me
what do you mean?
the idea of having interfaces?
No not that
It's just that those interface you have, have such distinct names that they imply being used in only one thing
And one thing only
He's a wannabe coder now, so he has big opinions
>said the hamburger coder
The only thing I code is my insulin pump
in my case it's not the interfaces that are too distinct, it's the classes that are not distinct enough
Get it? The joke is that I'm diabetic because I'm fat
for example, my `WikiPageListRepository` could also be `MySQLWikiPageListRepository`
`VideoSearchEngine` could be `HttpVideoSearchEngine`
but in the end, all those interfaces expose a tiny bit of replaceable functionality
tbh I'd thought that since they all use Search part then linkin them to ISearch should be enough
But then again I'm not the one hosting porn indexing site
`ISearchQueryGenerator` generates search queries for the links
`SearchQueryGenerator` implementation does this, using the HTTP Request
soon, I will have a new implementation, that does this out of the request log
`IVideoSearchEngine` is a very simple interface
it allows you to search videos
the implementation of `IVideoSearchEngine` uses ElasticSearch
Now I could substitute this with an implementation running Lucene and use both at the same time if I was retarded
because I always only use `IVideoSearchEngine` and never the concrete implementation
that's the reason for having an interface for everything
also what you saw there is only the DI container
the DI container needs exactly ONE interface and the classes it passes through
```csharp
public interface IExample {
IExample Test(string name);
}```
This part from your code baffles me
But maybe because I haven't experienced much with interfaces at all
you can have a fluent interface
```csharp
something.WithThat().WithThis()```
that's what it is for
the implementation then returns itself