You need to redesign your code architecture to fit the UI or you wont get a world class UI. That isn't what happens though, instead they hook in UI interactions so it looks like the designs but doesn't really work as well as you'd wish. I've never seen a developer who gladly did the architectural redesigns needed to make UI truly great.