3 ms·
There are also architecture principles (e.g. onion architecture) which make the core of applications free of dependencies because there are the essence of your
by oaiey 4y ago
There are also architecture principles (e.g. onion architecture) which make the core of applications free of dependencies because there are the essence of your business logic.
Without having read anything here with uBlock, this could be the url matching and the calculation if a block is applicable. Then you build your hosting, UI, testing, database, etc.. as layers around it which consume the exposed interfaces of the internal domain model.
This produces highly portable modules. I have for example implemented a communication protocol against a stream interface. With this architecture we bound it later in 3 applications (Service, Cordova App, Windows App) to up to 3 different IO methods (USB, BT, TCP/IP) in even 3 programming languages (C++, .NET and JavaScript) doing communication with the same device. And 3-4 years ago, we even played with WebAssembly ... but that was not yet ready.