Mobile frameworks - Comparing the big guns: Ionic, Electron, React Native, Flutter and .NET MAUI

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
if you need to build an app that's going to run on iOS Android Mac OS and windows you can build four apps or you can build one the best way to go is cross-platform I'm Matt Goldman let's get into it most of us build web apps these days we're used to building single page applications in angular or react or any other kind of spa framework these are great but sometimes you just need to build a native installable app this can be for a lot of reasons for example might be performance you might need multi-threading could be encryption you don't get encryption with a web app you might build building an advanced sophisticated app that takes advantage of platform features like augmented reality if you need to do these things you can't do them with a web app once you've made the decision to build an installable native binary application rather than a web app a single page application your app needs to run on Android iOS Mac OS and windows you can build four apps or you can build one app now you definitely definitely want to go cross-platform and build one app rather than four the reason is if you build four different apps you've got four different code bases to maintain not to mention building them in the first place you can then get fragmentation there's new features come out on different platforms that could be an advantage but we'll see how you can use that anyway with cross-platform we have a raw here on ssw rules says do you build cross-platform apps and this links to this other rule about dry because what you don't want to do is repeat yourself and build the same app over and over again and then have to maintain all those different code bases if you want to build a cross-platform app there's a few different ways you can go if you've already got a web app a single page application the easiest way might be to take that application and wrap it in a web wrapper that you can then export and package and bundle as an installable application there's a few different options that let you do this a popular one is ionic ionic was originally built for angular it now supports uh react and view as well this is a great choice for getting up and running quickly as is electron electron is a very popular choice also supports all these Frameworks like react View and angular the most popular single page application Frameworks it's used by Microsoft for Microsoft teams and for visual studio code both of these are great options the pros are they can get you up and running really quickly especially if you've already got the web app there are some downsides though the downside is the technical side of how they work and that is that they get a web View and they render and run and execute your application using the command executor in that webview now that's not necessarily a bad thing but it does mean that you only get a single process you only get single threading if performance is a concern that may be an issue for you in particular with ionic another problem is that you don't get first party support for Native platform apis so if you're not doing anything particularly sophisticated this may not be a problem for you however if you want to take advantage of device or platform features like contacts accelerometer or GPS it can be a bit trickier you have to bring in external third-party plugins The Next Step Up is to look at something like react native now if you're already a react team and you already have a react app this will be a smooth transition for you you can write your code in react you can write your UI in react you can use JavaScript you can use typescript but it's got a major advantage over ionic or electron and that is react native is a cross compiler so rather than running in a webview it actually Builds an executable native application that runs on the native platform apis another popular cross compiler is flutter flutter is built and maintained by Google it also gives you a cross-platform application it cross-compiles it builds to the native platform uses multi-threading uses the platform apis and it lets you write your views once and render across different platforms it uses scare to render the views so you get a Pixel Perfect UI on every platform but if you're a net developer and you have a full stack.net solution that you need to add a cross-platform UI to the best option for you is net Maui .net Maui is also a cross compiler it compiles down to Native binary executable packages it gives you 100 platform API access from day one where new platform apis become available and you can write your UI in C sharp and if you've got a full stack solution you can share code across your stack you can even share code across your whole enterprise.net Maui is the way to go if you're a net developer or you're a.net team that needs to build a net cross-platform UI now one of the other advantages of web apps that we haven't spoken about is that you might want to use your favorite UI Library you might be particularly fond of bootstrap or Tailwind what if I told you you could have your cake and eat it with net Maui hybrid Blazer apps you can write your uim Blazer Blazer is a c-sharp single page application so you can build your UI in HTML and CSS using your favorite CSS UI libraries and you can run it as a native executable app it may seem like a web wrapper but it isn't because it's only the UI that's rendered in a webview all of the code is run as.net managed code on the device depending on the platform you can do aot compilation you get multi-threading all of the platform apis it's literally the best of all worlds so if you're a net developer or on a.net team and you need to build a cross-platform UI application.net Maui is the way to go for you I'm Matt Goldman for ssw TV thank you [Music]
Info
Channel: SSW TV | Videos for developers, by developers
Views: 6,318
Rating: undefined out of 5
Keywords: ssw, software, industry, cutting edge, latest, developments, development, dev, design, functionality, microsoft, windows, computing, computer, advanced, expert, information, knowledge, dotnet, .net, angular, developers
Id: WlqTSOSLFJA
Channel Id: undefined
Length: 6min 49sec (409 seconds)
Published: Thu Dec 08 2022
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.