I asked ChatGPT to Compare Xamarin.Forms Shell Navigation and Uno Platform Navigation

We wanted to put ChatGPT to a small test; to compare Xamarin.Forms Navigation and comparable offering from Uno Platform, the recently released Extensions package, which contains Navigation, among other things.

So I asked ChatGPT to compare Xamarin.Forms Shell Navigation and Uno Platform Navigation. Check out the results and commentary below.

First, let’s see how it did, and after you read the ChatGPT version, look for our commentary on its results.

ChatGPT

Introduction

Mobile application development has been revolutionized with cross-platform development frameworks such as Xamarin and Uno Platform. Xamarin Forms Shell Navigation and Uno Platform Extensions Navigation are two of the most popular navigation frameworks for building cross-platform mobile applications. Both of these frameworks provide powerful navigation features, but there are some key differences between them that make them better suited for different types of applications. In this blog post, we will compare Xamarin Forms Shell Navigation and Uno Platform Extensions Navigation and see how they differ.


Xamarin Forms Shell Navigation


Xamarin Forms Shell Navigation is a navigation framework introduced in Xamarin Forms 4.0. It provides a new way to structure and navigate your Xamarin Forms applications. Xamarin Forms Shell Navigation offers several benefits, such as reducing boilerplate code, providing a consistent UI, and making it easier to navigate between pages.


Xamarin Forms Shell Navigation is based on the concept of a Shell, which is a container that holds all of the pages in your application. The Shell provides several built-in features, such as a flyout menu, a bottom tab bar, and a top tab bar. To use Xamarin Forms Shell Navigation, you simply define your pages in XAML and use the Shell.Current.GoToAsync method to navigate between pages.


The following code example shows how to use Xamarin Forms Shell Navigation to navigate between pages in a Xamarin Forms application.

Uno Platform Extensions Navigation

Uno Platform Extensions Navigation is a navigation framework for the Uno Platform. It provides a consistent way to navigate between pages in an Uno Platform application. Unlike Xamarin Forms Shell Navigation, Uno Platform Extensions Navigation is not built into the framework and must be added as a NuGet package.

Uno Platform Extensions Navigation provides several features, such as a navigation stack, navigation parameters, and a navigation service. The navigation stack is used to keep track of all of the pages that have been visited, and navigation parameters are used to pass data between pages. The navigation service provides an API for navigating between pages and is responsible for managing the navigation stack.

The following code example shows how to use Uno Platform Extensions Navigation to navigate between pages in an Uno Platform application.

Conclusion

In conclusion, Xamarin Forms Shell Navigation and Uno Platform Extensions Navigation are great navigation frameworks for building cross-platform mobile applications. Xamarin Forms Shell Navigation provides a built-in navigation framework that reduces boilerplate code and provides a consistent UI. Uno Platform Extensions Navigation provides a flexible navigation framework that can be customized to fit the needs of your application. Both frameworks offer features that make navigating between pages in your application easier. Ultimately, the choice between Xamarin Forms Shell Navigation and Uno Platform Extensions Navigation will depend on the specific needs of your application.

How did ChatGPT do comparing Xamarin.Forms Shell and Uno Platform Navigation?

  1. Having worked with “Ghost Writers” outside many of my organizations, I know this is probably about an average job you can get from a tech writer who is somewhat familiar with tech stacks or features being written on.

  2. For the most part, the post’s content is accurate, providing a high-level description of both Xamarin.Forms and the Navigation Extensions for the Uno Platform. However, there isn’t really enough depth to allow for an accurate comparison of each. As a result, ChatGPT stayed on ‘the safe side,’ not leaning towards making any recommendations.

  3. The sample code didn’t tie back to the content particularly well in the case of Xamarin.Forms, the sample code illustrated the XAML and C# for creating an application with a flyout but didn’t point to how this allowed for navigation in the application and how it related to the GoToAsync method covered in the post. For the Uno Platform Navigation extensions, the sample code was utterly meaningless as it’s the opening tag for a page. This is potentially the most significant finding. Often, as you read about ChatGPT coding capabilities, you may assume the produced code is accurate if you are an outsider to the topic. It may not be, so beware of that.

  4. The quality of content and examples provided by ChatGPT reflect the availability and accessibility of content for the topic. The Navigation Extensions is a subset of the larger Extensions offered by the Uno Platform team. Hence, documentation and coverage in blog posts have a similar weight to other topics such as the Figma plugin, VS Code extensions etc. When Shell was introduced to Xamarin.Forms, and even now with .NET Maui, Microsoft decided to promote it as the recommended way to structure applications.

  5. There’s no call to action where the reader can go for more information on the content covered. Microsoft pointed to this challenge in their recent announcement around Bing and Edge integration with AI. It showcased a new offering that would provide references for where content has been sourced. This is important to verify the validity of the content and allow the reader to find more information on a particular topic.

About Uno Platform

For those new to the Uno Platform, it allows for creating pixel-perfect, single-source C# and XAML apps that run natively on Windows, iOS, Android, macOS, Linux and Web via WebAssembly. In addition, it offers Figma integration for design-development handoff and a set of extensions to bootstrap your projects. Uno Platform is free, open-source (Apache 2.0), and available on GitHub.

Lastly, let’s be good humans;

Tags:

Tune in Today at 12 PM EST for our free Uno Platform 5.0 Live Webinar
Watch Here