General
mobile app platforms
J2ME vs Android
Cell Phone Stuff (J2ME)
iPhone
Developer Resources
Apple's iPhone Dev Center
Books
http://www.amazon.com/iPhone-SDK-Development-Pragmatic-Programmers/dp/1934356255
Notes from a teacher about iPhone app dev'ment
Apple's SDK is free, you can write and load to your own device or publish to iTunes (right now, $99) or an in-house enterprise account (again bypassing iTunes) for hundreds of devices. Objective C is an amalgam (superset C, syntax SmallTalk80) from the 80s and was used by Jobs at NeXT computer. Never made it mainstream, but their biggest buyers were U.S. Intelligence (CIA, NSA) and Wall Street analysts. They loved the stuff (remember, this was before even Visual Basic was around). It's now the main language for the iOS for all Apple's mobile devices as well as the Mac machine line. When Apple was ready to release the iPhone, it first updated the language to 2.0, incorporating a feature directed at heritage (i.e., us old) programmers. Instead of just SmallTalk80 syntax, you could now use dot referencing as well. The compiler takes either. Yes, it's a tightly controlled development environment but that too has its + and - sides. I can write once and expect that 99% of standard iPhones will run my App (the mere presence of over 300,000 apps in iTunes would indicate vetting problems are heavily overrated). That's not true of Android (and it's also not Google's doing, though you could lay blame there). Eric Schmidt, Chairman/CEO of Google used to sit on Apple's Board of Directors and just happened to leave right around iPhone and Android announcement time. Android is iOS, about 12-18 months behind the curve. For all its faults, the Apple iOS SDK is a really beautifully thought out paradigm for programming (take a look at the Touch and Finger Objects)... so is Android since it copied so much (I'm not referring to the business model here). It's good. But it's also Java mostly, and, it's "open" with its + and - sides as well. Now that Java is owned by Oracle ("iron grip", def.: Larry Ellison's picture) and has been on the decline as a language for the past few years, it'll be interesting to see what happens. In a peculiar way, the language, the cell phone makers and cell phone marketers are just as controlling, albeit in a proxied fashion, as Apple is accused of being (and they are). In any event, in 5 years, neither language/platform may be around, who knows? What will be around is what we can imagine, design and accomplish with these items. That's what's paramount to teach our students. Pick a platform and go.
Java ME (J2ME)
csteachlearn.com/cellphone/cellphone.shtml
mobile.processing.org - includes phone emulator so students don't need Java-enabled phones and can export programs as applets to be posted at this website
Mr. Simon's Cell Phone Pong game assignment
Windows 7
Microsoft Windows 7 Development
Alfred Thompson's blog
Notes from a teacher regarding XNA Game Studio and C# development for apps and games on the PC, Xbox 360, Zune, and now Windows Phone 7
1. All the dev tools are free (Visual Studio Express and XNA Game Studio)
2. The access to put apps on the marketplace is free for students ($99 value) through Microsoft's Dreamspark program (https://www.dreamspark.com/default.aspx)
3. Free, and more importantly, excellent e-books have been written by a funny guy (Rob Miles)
https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8119&Login=
https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8729&Login=
4. Java and C# syntax is very similar... so no extra learning of a language is required for AP students and knowledge transfer to an AP class is almost seamless
5. Deployment to a Windows Phone 7 or Zune is handled through the IDE.. it is actually just a couple clicks, and voila! Two more steps and you can stick it on an Xbox!
6. A variety of peripherals can be used... Xbox gamepads, Guitar Hero controller, dance pad, steering wheels, and soon... Kinect! (just a rumor right now...)
7. XNA is a category in a national and international competition dedicated to solving global issues. http://www.imaginecup.com/
8. Standards-based tests, quizzes, labs, powerpoints, video tutorials, and lesson plans have been and are being created specifically for educators, not just hobbyists
9. The XNA framework is easy to get into and still provides layers of challenge depending on what you want to do.
Symbian
Aaron's 2010 presentation
BlackBerry
Ben's 2010 presentation