0
votes

so I have been recently trying to get into mobile development with Xamarin, however, I am having a bit of trouble understanding how the cross-platform development works with forms.

Some older tutorials show an option called "UI Technolagy" and "PLC" but I understand those features are now deprecated.

As I learned it so far this was the old way: Shared C# Logic and separate UI code for each platform

And the new way: enter image description here

So my question is why was the old way removed? I understand Xamarin forms was not as good previously as it is now. How so? Does Xamarin Forms have the ability to make native UI components and run at native speed, and is that why the old features were removed?

2

2 Answers

0
votes

THe "old" way is basically the same: you put your ui and logic in one shared project and then you have the platforms project (iOS, Android, UWP, ecc...) where you can put custom renderers, effects, ecc..

The concepts are the same but now you use .NETStandard project instead of PCL for your shared code

Both PCL and .NET Standard are quite similar but .NET Standard has a few advantages:

1 - .NETStandard is set of APIs that are carefully selected and known to be interchangeable, while PCLs are just a simple intersections of different .NET Platforms

2 - .NET Standard is versioned and is backward compatible. PCL Profiles are just representations of different platforms

0
votes

PCL projects do not have full access to the .Net Framework. You need to select the platforms you want to support. These platforms don’t have the same access to the .Net Framework so, the PCL is restricted to the lowest common denominator of the APIs of the selected platforms. This disadvantage doesn’t exist in .Net Standard.

More on it here

Right now,if you are new, selecting .Net standard is the safest way when you start a new Xamarin Forms project.