> We have an iPhone app developed in Objective-C (though I haven't been too 
> much involved in that), and during this week I am shipping my first iPad MT 
> app for "production" to the first customers of that specific app. So I have 
> been using the last months developing with MonoTouch - and must say I'm not 
> keen at going "back" to Objective-C. So I thank you for you offer to compile 
> the app, but already have ipad, macbook and MT license so that should not 
> pose a problem.
>

Ah, ok, thats good - it's a lot harder to do it if you have no
experience with iOS development

> The reason I thought up the idea of compiling a c# dll with MT was that 
> someone (I think maybe you) have mentioned in another thread that Apple 
> usually demands apps submitted to app store to be built with the latest SDK. 
> As MT will never get there when we switch to IOS 5, I thought a IOS4 library 
> built with MT could be utilized by a IOS5 Obj-C app, and that way reach 
> AppStore as built with IOS5 SDK. Not a pretty solution, but I would really 
> hate to have to do the business logic once again.
>

Yes, they usually do require the latest, but they NEVER EVER support
the beta ones, so at the moment, MT 4.0.3 with iOS 4.3 SDK is correct
- I'd assume up until iOS 5 is released. Even then, it may work - I
know ChrisNTR has the twitter stuff working in MT 4.0.3 (he did the
bindings himself), so it might be possible to do it with 4.0.3 if you
had to.

> Right now it's just hard to convince management that Xamarin is stable, and 
> doesn’t burn out like MT has just done. Somehow coding the app in Objective-C 
> seems like the most sure bet. But I am also convinced that development time 
> will be not only doubled as we need to implement the logic again. More 
> looking at 3-4-5 times I would guess.
>

I usually go with about 5-10x at the moment, tho if I knew more Obj-c
it would be shorter (I'd guess 2-3x). But that said, Xamarin have most
of the same people working their, it's a second generation product so
they get to fix the core issues they had before (but were too hard to
fix in a released codebase, not that I can think of something which
was broken that much), they are funded and the two people at the top
(Nat and Miguel) have done this before - Ximian was built and funded
this way until they got bought by Novell (
http://en.wikipedia.org/wiki/Ximian ). Despite having zero resources
to advertise and promote it, MT/MD was doing quite well (so I'm told),
 and they were going to split off from Novell before the Attachmate
acquision happened.

So really, aside from the state of MT at the moment, this is pretty
much what would have happened anyway.

Personally, I think it's quite a strong case:

1. Use you code you have, build the front end, and bet on Xamarin to
come thru (at worst, it might be a month or so after iOS 5 comes out).
If it all goes bad, you STILL have to rewrite your backend in obj-c,
but you can reuse a lot of the front end, as it's all CocoaTouch -
just translate it to Obj-C.

2. Go with Obj-C, and budget to rewrite the back end AND the front end
from day 1.

To me, #2 is a lower risk, but a lot, LOT higher cost. #1 isn't high
risk - but it is higher than #2 - and if (when) Xamarin release .NET
for iPhone, you get massive reuse of your code - from winforms, thru
iOS, Android and WP7. The value of not having to recode those
backends, assuming they are complex, is _huge_.

> Hopefully things are much clearer when my summer holidays are over - and the 
> folks at Xamarin are getting ready to boot up a release party.
>
> For now, my bets are on MT/Xamarin - but I'm not sure management are 
> convinced yet. Even though I'm sure it's the fastest path to market for the 
> new app.

What stage are you with the app? Why not prototype it with MT, and
then, if it's still too high a risk once you have it done, move to
Obj-C. You can port the front end over quickly (same API calls to
CocoaTouch), and you then have to just do the backend.



> -----Original Message-----
> From: Nic Wise [mailto:[email protected]]
> Sent: 29. juni 2011 11:20
> To: Anders Kjærgaard Hansen
> Cc: [email protected]
> Subject: Re: [MonoTouch] Should I use MonoTouch, Xamarin or Objective-C for 
> my next iPad project?
>
> All IMO (In My Opinion) of course:
>
> [damnit, I replied, not reply-all - sorry Anders for the double-up!]
>
>> My current situation is that we have a full  C# winforms application that
>> has a pretty big Business Logic Layer and service interface with a
>> webserver. I need to port this application to iPad as well.
>
> So this is a large, "new" iOS app? Have you done any iOS stuff before?
>
>> Since I have this large codebase in c# MT seemed an obvious choice. I would
>> just need to create a new data and view layer. But, being unsure if MT will
>> ever make it to IOS5, and unsure if current MT will be able to build to IOS5
>> (though some forum posts seems to indicate that it might will) I am not sure
>> MT would be the right way.
>
> You have a point there. Except if you pick MT, you can (so we are
> told, and I don't see why not) move to .NET for iPhone (ie
> XamarinTouch) with a recompile.
>
> So you choices are really Objective-C or .NET. MonoTouch is now
> effectively unsupported from Novell/Attachmate, so might as well be
> dead (tho they are still selling it, and if you buy it I'm told you
> CAN get a license). .NET for iPhone is "coming", but not released yet,
> tho once it is, I expect the usual fanatical level of support and
> product quality that Novell (ie, Miguel, Joseph, Geoff and all the
> others) gave for MT. Same people. Same attitude.
>
>> I probably need a prototype somewhere around september – so just wating for
>> Xamarin doesn’t seem valid either. Though development first will start in a
>> month or so.
>>
>
> OK, it's July now (almost), and I assume you've not started yet? If
> you have _no_ iOS experience, then you are also going to be learning
> the frameworks, which is not a trivial thing. A basic prototype by
> september - the end of september - might be reasonable...
>
> Oh, and depending on what you app does, consider using
> MonoTouch.Dialog - if you have lists (lots of lists), then you'll save
> literally WEEKS using it, rather than using the stock UITableView
> stuff.
>
>> Is it possible to take a C#/.Net dll, use MT 2.4.2 to compile this to an
>> Objective-C library that is then usable from an Xcode/Objective-C app?
>
> Yes, from what I know you can do this, however I can't find an example
> of it, so maybe I imagined it :(
>
> But why would you want to? You are then dependant on MonoTouch
> _anyway_, so you might as well do the rest of the app in it, as you
> are then working in a language and framework you know.
>
>> That way I might get best of both worlds as the state is right now. I will
>> be able to reuse my c# logic, but not be dependent on MonoTouch or Xamarin
>> to support IOS5 before my deadline.
>
> I suggest you do the following:
>
> 1. If you must, do a spike[1] and see if you can call C# from obj-c.
> If you can, and you really want to do this, do it. I dont recommend
> it, personally. Objective-C is a "nicer" language than it used to be,
> but it's not (IMO) as nice as c#, especially if are already familiar
> with C#!
>
> [1]: http://blog.agilebuddy.com/2009/11/what-is-a-spike-in-scrum.html
>
> 2. Get the MonoTouch 4.0.3 (latest) trial [
> http://monotouch.net/DownloadTrial ] and the current iOS SDK (4.x, NOT
> 5.x). Start writing your app in the simulator. You will loose nothing
> by doing this, as the simulator is fine for everything except the
> final push to get the app "finished", and .NET for iPhone is designed
> to be 100% (or very very close) source-compatible with MonoTouch.
>
> 3. Read up on the iOS5 API changes you might need, and either do the
> bindings yourself, or just "learn" then (maybe write some obj-c code
> if you need to, so you know how to use the api's)
>
> 4. If you get to the point where you want to put your app on a device,
> email me or ask on the list. I'll happily take you code and the UDID
> of your iPad(s), compile it up for you, and send you over the compiled
> application. Not ideal, but it would get it on the device (obviously,
> all of it would be under NDA). If I can work out how to do it in a
> sane manner, I may even open up my Mac Mini to SSH, so you can log in,
> pull the code down, compile and take the .app yourself. Since I got an
> AppleTV, my Mac Mini (which used to be my media center) is feeling a
> little lonely.
>
> 5. Buy .NET for iPhone (from Xamarin) when they release it. and get on
> the betas. As Miguel pointed out yesterday [
> http://tirania.org/blog/archive/2011/Jun-28.html ], they are making
> excellent progress on it, so having it _released_ by the end of
> summer, which is officially the end of August, sounds doable. It's
> already compiling complex apps (Tweetstation is not a trivial app), so
> it's well down the path.
>
> "There is still a lot of polish left to do. We are working as hard as
> we can to have Preview releases in your hands, but we feel confident
> that we will have a great product for sale by the end of the summer.
> We hope you will all max out your credit cards buying it."
>
> Either way, based on what he's said, I'd expect a beta / preview by
> the end of July for release in September. (That said, I don't work for
> Xamarin, not do I know anything outside of what's been said publicly,
> but I have been working with their product - and by extension, them -
> for 12 months, and they have been fantastic) As .NET for iPhone is
> targeting iOS5 from the start, they might have to wait until iOS 5 is
> RTM before they can actually start selling it (NDA and all that), but
> from what'd been said in public, I don't have any doubt they will be
> on track with it.
>
>
>
>
> Hope that makes some sense.
>
> N
>



-- 
Nic Wise
t.  +44 7788 592 806 | @fastchicken | http://www.linkedin.com/in/nicwise
b. http://www.fastchicken.co.nz/ | http://www.flickr.com/photos/nicwise

mobileAgent (for FreeAgent): get your accounts in your pocket.
http://goo.gl/IuBU
Trip Wallet: Keep track of your budget on the go: http://goo.gl/ePhKa
London Bike App: Find the nearest Boris Bike, and get riding! http://goo.gl/Icp2
_______________________________________________
MonoTouch mailing list
[email protected]
http://lists.ximian.com/mailman/listinfo/monotouch

Reply via email to