title: Xamarin: comparison to native SDK and JS-based frameworks
body: <p>So, one of the main features of coding using the native SDK provided by <code>Android</code> and <code>iOS</code> is the fact that you get not only a better performance, but also the look and feel of each platform: for example, on <code>iOS</code>, a tab-navigation bar would be located at the bottom of the screen, while in <code>Android</code> it is located at the top (yeah I know it also can be top <strong>and</strong> bottom, but you get my point), or also the <strong>Navigation Drawer</strong> dock is an Android navigation style while (as far as I know) there is nothing similar in iOS native sdk. My point being, <em>you can feel the difference of platforms by their design guidelines</em> which is a good thing, since it makes your app looks professional.</p>
  
  <p>So taking that into account, in terms of <em>performance</em> and maintaining the feeling of your app, using JS-based frameworks like <strong>Titanium</strong> or <strong>PhoneGap</strong> will not make a wise choice.</p>
  
  <p>Then comes <code>Xamarin</code>. As I read in here: <a href="https://stackoverflow.com/questions/15763579/xamarin-how-it-is-getting-the-native-look-and-feel">Xamarin how it is getting the Native Look and Feel?</a> it seems it is a <code>C#</code> wrapper for native SDK, which as far as I understand, it should not affect performance. But where's the look and feel part. Since <strong>XML layouts</strong> are not entirely what gives <code>Android</code> or <code>iOS</code> apps their feel, but also the navigation (which comes from the controller classes) how does Xamarin deals with these? It is said in their website that you can share code between platform, but will that also means I have to share navigation system and similar?</p>
  
  <p>Finally, for the sake of <em>"not writing code for each platform"</em> , is it worth NOT to use native SDK and go with <code>Xamarin</code> (I don't really have a problem writing code for both iOS and Android), or is this framework target for <code>C#</code> developers so they won't have to learn Objective-C or Android.</p>
  
  <p>Any extra explanation would be awesome, and thanks in advance.</p>