aeroflot wrote:
So there's room for Apple to do it better then I suppose? :)
Apple is doing it better. Apple requires that all Mac App Store apps be self contained. They can't store files anywhere other than their containers. Apple is also changing requirements of apps outside of the Mac App Store. In some cases, Apple is just "encouraging" developer to bundle things like login items inside the app. In other cases, Apple is actively deprecating old technologies, like kernel extensions, in favour of new ones, like System Extensions, that must reside inside the app bundle.
However, none of this changes the fact that Apple still relies on the app's bundle ID to associate apps with their containers or their system extensions. So when some "app cleaner" deletes "metadata" files, it is likely deleting files that Apple created to help the app run. When those files are unceremoniously removed, bad things can happen. There is non way to really know what those bad things are because those aren't tested.
The case of the new System Extensions is the one that I've encountered most recently. The only way to remove a system extension is to drag the app to the trash. If you use an "app cleaner", or even if the developer has a custom uninstaller, it will leave the system extension running, doing who knows what, out of control.
Essentially, Apple has dictated that the appropriate way to uninstall apps is to drag them to the trash. Developers who don't follow that model are likely to have problems. Or rather, their people who use their apps are likely to have problems. Apple has so many users that it can just let these old apps and their users die by natural selection. But if you are using some 4th party software to go in and delete some other app's file, then you are effectively selecting yourself out of the market. In this case, it isn't Apple's problem because they've already fix it. it isn't the developer's problem because they didn't do anything wrong. The user is left holding the bag wondering why their system is having problems.