We're closing in on a version of CSLA .NET that works on iOS using the Xamarin tools.
This is the result of a lot of work by Stuart Bale, Kevin Ford, and myself, and Kevin is getting very close to where we can release a beta version - hopefully yet this week.
If you have Xamarin for iOS I hope you'll help us test this out, but we're very excited!!
This is really exciting. I had dismissed understanding Xamarin as it really only solved part of the problem before for us. So I do have a lot of questions, most probably naïve ones - because I've never used Xamarin before nor have I developed in iOS or Android.
Is there an e-book or anything that covers CSLA in conjunction with Xamarin?
I have used CSLA with only Silverlight and to a modest amount WinForms and ASP.Net - so speaking from the highest level -
I assume one needs to learn each UI platform (Android's & iOS')
I assume there isn't much similarity between those two UIs and XAML.
Is the concept of MVVM applicable in Android and/or iOS?
I assume there is not really the notion of property status, base view model's, etc - geared around supporting the UI like there is with Silverlight/WPF? If I'm correct in saying that, is it likely this may follow w.r.t. CSLA?
One other question - has anyone used Xamarin with CSLA before successfully with Android in a commercial sense? I don't mean this in a negative light but for some time iOS was listed as a supported OS for CSLA - clearly Android has had more attention since it didn't run into the same issue as iOS, but just wondering if someone has taken it past a sample app/hello world type application into a deployed lob implementation.
It is exciting, I agree!
No ebook, at least not yet. We haven't even got the code out :)
You do need to learn the UI concepts for each platform. Xamarin makes C# and most of the .NET BCL work, but XAML doesn't carry over. Android has its own XML language, and iOS uses Xcode.
We do have a data binding implementation for Android, and Kevin is trying to create one for iOS, though that's being more of a challenge than expected.
MVVM might apply, though Android and iOS have their own UI programming models. In particular, iOS is designed around the MVC model and there are lots of assumptions that you'll follow that model in an iOS app.
We do have UI helper assemblies for Android and iOS, similar to the Csla.Xaml assembly. So you shouldn't assume there isn't (or won't be) something like PropertyInfo or other helper controls - as appropriate for each platform.
The big focus thus far has been on allowing you to just recompile your business classes on each platform and have your business logic and the data portal work as expected without code changes. I think we've done a really good job in that regard, especially if you are using an app server so your data access code isn't running on the client device.
Copyright (c) Marimer LLC