I'm not against code signing as a concept, but I very much despise the way Apple implemented it by trusting itself and no one else whatsoever. There are no provisions made for people who don't trust Apple.
Let me self-sign my apps like it's done on Android. Let me as a user add signing certificates used by developers I trust, let me make my own decisions and take my own responsibility.