calibre is huge, almost a million lines of code, you will find an example of pretty much every design pattern somewhere in its codebase.
On the other hand, no calibre developers I know of use formal design patterns when writing calibre code. So there is no easy list of
X uses Y pattern
to create.
The primary guiding principle of code design in calibre is modularity. code must be as modular as possible, with well defined interfaces that should be as stable as possible over time.
|