Live data from Hacker News

Developing on WP7 vs Android vs iPhone

blog.edwinevans.me

41–46 of 46 posts

Re: Developing on WP7 vs Android vs iPhone

#41
post #35

The author says Marketplace approval is usually quick at about 2 days. Except when you are one of the many developers whose apps get stuck in the marketplace, that never get approved or rejected because of lousy infrastructure on Microsofts side. A developer I highly respect wrote about his ongoing struggle getting his Google Voice client out for WP7. If he wasn't already known from his MVP work, it's unlikely he wou…

I started reading your comment and was getting ready to find Koush's frustrated tweets. Looks like a really nice product but it's been in holding for 26 days now for his latest big huge update. A damn shame when the WP7 marketplace is so far behind (relatively).

Re: Developing on WP7 vs Android vs iPhone

#42

IMO the comparison between these platforms is only interesting when you take alternate languages into account. We know Java, C#, and Objective C are all way behind, so how do more advanced languages fare on these platforms?

For WP7, the officially supported languages are C# and VB.NET. That being said, because it is just running Silverlight, you can try running any .NET language. For example, there are a few people running F# on Windows Phone 7. I haven't tried it myself, but here is a link to templates for game development with F# on WP7: http://sharp-gamedev.blogspot.com/2010/12/project-templates-... Here's an article on building a WP…

Exactly what I'm talking about; thanks for the links.

Re: Developing on WP7 vs Android vs iPhone

#43

>Android is better for being able to develop on your platform of choice (though I suspect developing on Mac is best supported)... Quickly like to point out that Eclipse on OS X is atrocious.

I think it should be mentioned that you most definitely don't need to use Eclipse to develop for Android. If you don't like Eclipse, both of the other major Java IDE's (NetBeans and Intellij) have Android plugins. And, since all the important tools can be run from the command line, really any text editor will do. I wrote my first Android app entirely in Emacs. If you're an OSX user, TextMate would probably be a great choice for Android development.

Also, as I believe the article points out, with Android (or MP7) you can run your development environment in a VM of our choice on top of whatever you normally use as your desktop OS (I do my Android development in an Ubuntu VM on my Windows XP laptop). That's not practical for iPhone development. Putting together a "FrankenMac" is very cumbersome, the resulting VM tends to be unstable and fragile, not to mention that it's against the license agreement for OSX.

Re: Developing on WP7 vs Android vs iPhone

#44
post #39
post #9

Earlier quoted context omitted.

I actually was just wishing c# had as terse of a null check syntax as ObjC. I love the fact that I can type if(!object) [[Do something]about it] vs if(object == null) DoSomething.Aboutit I know its a small thing, but my typenames are usually lengthy so in practice C# statements can get character heavy.

This is actually really easy to do in c#: public static bool operator true(Class c) { return c != null; } public static bool operator false(Class c) { return c == null; } To avoid redoing this for each class you can just derive from a base class that implements these.

well I know that it is possible, I was thinking of trying to write a similar type function with an extension method, but I just like how its included out of the box in ObjC. Really I think for a general purpose language C# is more flexible and while leveraging .NET you have more tools available to develop rapidly.

Part of me feels that Im not "really programming" when I write managed code though. I like writing C and ObjC because I feel like Im actually flipping switches on the CPU. It is silly I know(and all in my head), but being lower level seems to excite me more.

In reality I think its all about the right tool for the job, and choice is good.

Re: Developing on WP7 vs Android vs iPhone

#45
post #12

Earlier quoted context omitted.

I meant it doesn't complain when sending a message to a nil object though this is probably not what you intended and makes tracking down bugs harder... or maybe I just have C++ mindset.

I think when many people hear about ObjC's nil semantics, they use it as a pretext for dropping all their null checks. This is a mistake, and you're right, it will make debugging exceptionally difficult when nils start falling through five levels of functions and propagated through ivars. The trick is to use null checks almost like you're writing C++, but drop them when they are unnecessary and inelegant. Convince yo…

The worst offender is the comparison methods:

    NSString *myString = nil;
    if ([myString compare:@"something"] == NSOrderedSame) {
        ...
    }

Re: Developing on WP7 vs Android vs iPhone

#46
post #26

My main concern with WP7 is that it can run only managed code (see http://social.msdn.microsoft.com/Forums/en-US/windowsphone7s... for example). This means that existing non-.NET code has to be rewritten from scratch to be ported to WP7, while on iPhone and Android it is possible to link native code. If a developer wants to write the same application on iPhone or Android and WP7, basically no code can be shared. Is i…

Native code can be shared on all platforms except for WP7 if written properly.

Yes that was my point, Android and iPhone can share code, WP7 can't
Post reply on HN