Slashdot Mirror


Microsoft To Acquire Xamarin (phoronix.com)

New submitter androlinuz writes: Microsoft has signed an agreement to acquire Xamarin, a leading platform provider for mobile app development. In conjunction with Visual Studio, Xamarin provides a rich mobile development offering that enables developers to build mobile apps using C# and deliver fully native mobile app experiences to all major devices, including iOS, Android, and Windows. Xamarin's approach enables developers to take advantage of the productivity and power of .NET to build mobile apps, and to use C# to write to the full set of native APIs and mobile capabilities provided by each device platform.

1 of 130 comments (clear)

  1. Re:Wow by LostMyBeaver · · Score: 5, Interesting

    I've been doing it as well.

    To be fair, I come from a really long history of bringing multi-million line projects to up to 80 different platforms (everything from Symbian to Mac to Qnx to Nintendo Wii) and from the beginning of the project focused 100% on portability to begin with... I chose C# because C is for OS Kernels (write those too) and C# is for apps. They're the two universal languages in the sense that they are the two languages who can access APIs on any platform.

    I found that with good planning, I have been able to make a program which runs on Windows Store, Windows Desktop, Mac OS X, iPad and Android using all native UI components as well as pixel perfect print support with less effort than I ever put into with Qt or my own homegrown. As a result, I can't really imagine ever writing in anything else again. I let me focus on learning platform APIs and not screwing around with things like SWIG or crazy assed Android C++ adapters.

    Oh... let's not forget that by managing my data structures intelligently (my document format is almost as complex as Microsoft Word's), I was able to outperform manually management memory schemas every time and by hooking the garbage collector I was able to implement a memory defragmentor which I've done in C++ in the past and required so much template hell that the code became unmaintainable. By defragging the memory through the GC, I was able to take advantage of language level relocation and as a result, the code is readable and manageable... oh... and quite a bit more performance efficient since it generally runs as a FSM during idle cycles.

    C# allowed me through a single language to quickly implement about half a million lines of code and focus more on productivity and less on dicking around with things like SWIFT compiler errors and warnings which look like "Something is wrong an caused a parser error within a 100 lines of line 241 that makes this line think it's a chicken.. please call again later when you comment out 90% of your file and restructure you code to manually find the actual error".

    C# compiler errors suck too, but at least the Visual Studio GUI makes it pretty easy to drill down to root cause.

    I'll say this much, they started as a development tool company, they always nailed the development tool thing and now with LLVM support offering C standard compliance directly within Visual Studio, I think Microsoft has really nailed it.

    Now if they throw enough money at compiling for Mac and iPhone without a Mac that would be awesome. Programming in XCode is so painfully slow it's unbareable. If you made the mistake of buying a Mac Pro and are wondering why it's so damn slow, install Windows 10 on it and use Visual Studio instead and run OS X in a virtual machine to compile against. It's a HUGE improvement.

    Last thing to fix I think is getting remote app support for iPhone simulator. Then make it so if I press F5, I get just that Window. I'm using iRapp at the moment which isn't awful, but it's a bit intrusive.