Learning a new language can be a rewarding experience, if for no reason but to view the coding world in different way. Another way to enrich this experience is through the environment that a company creates to actually write programs. Visual Studio and Eclipse have spoiled me rotten, which is why I grit my teeth at times when developing for the iPhone/iPad with XCode, Apple's integrated development environment (IDE) for writing apps on the iOS platform. A few quick rants:
- Why do I have to @synthesize everything by hand? Why can't I click a button and XCode write not only the boiler-plate code for doing that, but do me a favor and also release those variables in the dealloc method?
- A lot of classes that I end up creating myself end up needing to be serialized so that I can either send them to a web service or store them to the file system. When I specify that my class will implement the NSCoding and NSCopying protocols why can't XCode generate the methods, use a little reflection, and generate the assignments necessary to comply with those interfaces? The whole point of an IDE is to take the drudgery out of development so you can focus your efforts on the meat of what the code is suppose to.
Now back to work in XCode.