3 ms·
Circular dependencies ARE a problem with your architecture. You've got two modules that are strongly coupled. They should either be in one module or you should
by williamcotton 13y ago
Circular dependencies ARE a problem with your architecture. You've got two modules that are strongly coupled. They should either be in one module or you should rethink things. It is impossible to need one without the other in that case, so including one without the other makes no sense, so just merge them.
- pawrvx 13y agoIn large projects, and especially legacy ports, you don't have that luxury. Hence, careful selection of projects to work on is key.
- anaptdemise 13y ago> Circular dependencies ARE a problem with your architecture This whole thread reminds me of the PHP days before namespaces. If you have circular dependencies within your own codebase, you have an architecture problem. If they are introduced by third-party libraries, maybe the usage of the library should be questioned.
- delambo 13y agoHere's a trivial example: I have a Modal class which depends on some utilities in a Utility class, but the Utility class depends on the Modal class because there are some utilities that show Modals. This is not a broken architecture and is handled just fine by other programming languages/dependency handlers.
- williamcotton 13y agoThe concept of a "Utility Class" is normally a sign that there is something else going on! What are the utilities contained in this module?
- tretiy3 13y agoYou want to use inversion of control in your Utility class. Just pass function, which will operate on Modal class instance (not Modal class instance itself but function) as argument to its utilities that show Modals.