What are some great iPhone questions for exercise? [closed]
Things every iOS developer should know about:
- Categories (how to extend existing classes with newfunctionality)
- Delegation pattern (how to implement your own delegates using eithera formal or informal protocol)
- Blocks (often an improvement on delegation in case ofasynchronous calls, also useful in many other ways)
- Passing NSErrors through indirection pointers.
- NSInvocationOperation / NSOperationQueue for easy / clean threading code.
With the arrival of iOS 5 soon, one might want to learn about:
- Storyboarding with Xcode 4.2 / iOS SDK 5.0
- ARC
As a iPhone developer I will set these topics as a 10 minutes presentation.
Beginner level, may be useless if you are already developed in Obj-C but quite useful to integrate a C++ dev in your team
- C++ vs Objective-C, Objective-C 2.0, Objective-C++
- Memory management in Obj-C (retain, release, autorelease)
- MVC design pattern
- IB outlets
- Design patterns in Obj-C
- Use Stack Overflow before Google (not specifically iOS)
Medium/Advanced level
- ** Instruments ** (how to use it) (very important)
- Comment code (even if selectors are expressive? a line or two is always better)
- Automated tests (Who test their app anyway ? :))
- Image manipulation + memory warnings
- Code review of past apps (what is good, what is bad)
- Code abstraction (see what module you have copied/pasted many times on yours apps and way to make it like a framework)
- OpenGL ES (basics, only useful if you makes games)
- Maps integration (with custom callouts, pins ...)
- App Store submission (things to check before sending the app)
- In-app Purchases
- Push notifications
- Core Data
- SQLlite
- Web service integration
- Game Kit
- Reducing loading times in the app by preloading
- XMLParser (DOM and SAX)
- Bonjour
- Networking (checking that the iPhone can connect to the server)
- Social network integration (FB, twitter, 4square ...)
- Using GoogleMaps webservices
- JSON
- Core Animation (very long presentation)
- Using UIAcceloremeter
- Custom Views
- Creating IB outlets
- Creating Frameworks
- Using Core Audio
- Geolocalisation
- Using C++ frameworks with iOS Projects
Things I don't know :
- Calendar
- Using iTunes library
- CoreTelephony
- Messing with Address Book
- iAd
- Video