4 ms·
This is Xamarin forms with a new name.
by ghuntley 6y ago
This is Xamarin forms with a new name.
- wvenable 6y agoYes! But also with desktop targets instead of just mobile targets.
- ghuntley 6y agoXamarin Forms was not good tech.... :-)
- Mertax 6y agoHopefully a chance for them to take what they learned through years of experience and cut away from the cruft/technical debt that built up with Xamarin.Forms. I think there is potential for redemption here -- although I do worry the native widget binding approach still comes with a lot of friction that adds unavoidable complexity. However, Maui's new "handler" pattern for native widgets seems like it could be adapted to support Skia/manually rendered widgets if someone wanted to invest in that non-trivial effort. From my experience the native widget binding is both the strength and the weakness of the approach. You get to take advantage of battle tested native controls that are fully featured. But if the platforms don't have enough similarity between them to create a cohesive interface then you're battling multiple platforms trying to take advantage of the native features layered in another opinionated model that sometimes can be detrimental to the native performance you're hoping to leverage.
- JamesSwift 6y agoI'd love if this could be a step forward but from my fly-on-the-wall perspective following the github, I'm not optimistic that the team has internalized what exactly this new thing should be, and how it should differ from Xamarin. I'm hopeful though.
- datavirtue 6y agoThat's why it exploded in popularity then? Literally exploded and was releasing on a rapid cadence to a fervorous developer base. The current non-MAUI Xamarin is very refined and complete from a performance and feature perspective. It is literally the only viable serious cross-platform and mobile development platform.
- JamesSwift 6y agoIts important to distinguish between Xamarin.Forms and Xamarin.Native (which Forms is built on top of). Xamarin.Native is quite nice and is the best abstraction available today (in my opinion). Xamarin.Forms is indeed not great. It is an OK solution for a subset of problems, but even for those I'm left wondering if the pain is worth it rather than rolling my own native frontends in Xamarin.Native.
- wsc981 6y agoXamarin.Forms might not be great if you want to create a beautiful app that performs very smoothly, but it’s pretty sweet for making multiplatform business apps for use in-house (as in: not sold on app stores) imo.
- JamesSwift 6y agoRight, internal apps are the sort of thing I think fall in the 'subset of problems' its good for, but as soon as you have a design guide to adhere to (i.e. you aren't just shipping the out-of-the-box configurations) its buggy and painful.
- nbevans 6y agoHuh? Xamarin Forms is huge in line of business applications. Huge.
- Xevi 6y agoLinux is not officially supported though. :(
- nxc18 6y agoXamarin.Forms also had desktop targets, including WPF and UWP, although I think only UWP was officially supported. Support is perhaps too strong a word...
- wvenable 6y agoWell UWP was also supposed to be a mobile target...
- octopoc 6y agoYes, but this time: - They're going to support MVVM and MVU (MVU is similar to JSX with React). - You'll be able to target all these platforms from a single C# project. With .NET 5 and earlier, Xamarin required you to have a separate project for each target. This will result in a simpler codebase.
- sumnuyungi 6y agoAs it says right at the top of their README: "Evolution of Xamarin.Forms"
- jayd16 6y agoThey do have a whole section for differences. https://github.com/dotnet/maui#xamarinforms-vs-net-maui https://github.com/dotnet/maui#xamarinforms-vs-net-maui If it turns out to be XamarinFroms done well, I can dig it.
- dt3ft 6y agoAnd Xamarin forms was never really finished, it is still lacking on every front. Just look at the open issues and feature requests. I would not be surprised if MAUI also gets abandoned halfway through development.
- drawkbox 6y agoXamarin.Forms was like an abstraction helper though, underneath all Renderers. You can/could make CustomRenderers for any custom controls or to access any native needs on iOS, Android and UWP directly. That is how most apps ended up. Xamarin.Forms was great for getting prototypes going to get things running then going in and taking areas you need to customize, or all controls, and making them platform specific to the targets. You can still have a shared library that does Content/Pages and most of the work shared. I don't know if Xamarin.Forms was ever meant to be a full solution but it is ok for prototypes and enterprise, for actual consumer shipped apps more customization was needed and CustomRenderers. The Shared [1][2] setup this way is similar to the handler approach in MAUI where underneath the shared abstraction controls are converted into platform specific but you can do custom ones to override or combine controls. [1] https://docs.microsoft.com/en-us/xamarin/cross-platform/app-fundamentals/code-sharing https://docs.microsoft.com/en-us/xamarin/cross-platform/app-... [2] https://docs.microsoft.com/en-us/xamarin/cross-platform/app-fundamentals/shared-projects?tabs=macos https://docs.microsoft.com/en-us/xamarin/cross-platform/app-...