I need somewhere to list my frustrations moving from xcode 3 to what is supposed to be the a move forward. Here is that place. Let me start by saying I don’t even see xcode 4 as an improvement just yet; while they seem to have finally understood people don’t want to manage 10,000 windows while working on a project, they still haven’t understood that one layout doesn’t suit all, and have in my opinion made some very bad design choices.
It has only been a few days though, so I’m willing to give things time to set in. Here are problems that make the current preview quite unusable:
- “Navigate to Counterpart” shortcut combination no longer works (cmd-opt-up).
- Designating shortcut keys gives no feedback if there are multiple assignments of the same key. It just chooses the first in the list and uses it.
- You have to manually open new tabs! This leads me to believe that apple don’t understand how tabs are supposed to work, which baffles me as they usually understand user interface paradigms. Is the xcode team a bit out of touch?
- Trying to bind “New Tab” to cmd-t fails. It seems there is a shortcut hard-wired to this key.
- Project bookmarks are gone. In the migration guide it mentions their presence in the Organizer, but following instructions only gives help document bookmarks, not project bookmarks.
- There is even less feedback while building (used to see “x of x files compiled”, now it’s just a progress bar). This is quite an annoyance for large projects.
- Has problems saving project file to disk. Should at least give an option to overwrite.
- I can’t seem to find where the colour scheme configurations are stored. Have yet to take the time to manually recreate my pastels-on-dark theme because of this.
- Auto-completion of overrides no longer works correctly in classes which inherit; it seems to only show overrides from the base (NSObject/NSView) class. This is a real hit, and actually makes working in the current build of xcode 4 a chore.
Then there are things I think should be added in order to bring xcode into the 21st century, which have still not been addressed:
- There is still no automated handling of IBOutlets in a way that generates code-behind. Microsoft have mastered this over the years, and while that may be an unfair comparison, MonoTouch also provides this functionality on the iPhone platform via their MonoDevelop IDE!
- There is still no automated/shortcut method of making an instance variable, property, and @synthesize in one go.
- The handling of linking delegates/outlets in the “interface builder” mode is still as painfully ugly as ever.
- Files are still not automatically sorted alphabetically in project navigation pane. I honestly don’t understand this.
- Light-on-dark anti-aliased text still looks horrible. Okay, so this is an OS-level problem, but it’s my one biggest gripe so I had to tag it on .
I will be updating this post as I find more issues. If anyone has an obvious solution which I have overlooked to any, please fill me in!