Earlier quoted context omitted.
Very recently Microsoft introduced VS for Mac (although I understand it's sort of a preview version). I don't know about OS X, but I used Xamarin Studio on Windows and it was horrible.
That is a rebranded Xamarin Studio, with a slightly updated layout to match VS. It feels much better on mac I must say, also tried it on Windows but just weird and slow. I'm quite happy with it, but maybe I'm biased a bit because it sucked big time and they made big improvements to it last year. It's all relative ;-).
Ask HN: Is Xamarin worth learning?
111–120 of 168 posts
Re: Ask HN: Is Xamarin worth learning?
#1121. If you don't use Xamarin and you don't have a team in-house that uses C#, don't bother. You'll be better off doing native development on iOS and Android platforms.
2. Your app won't be as pretty, and it won't adhere to platform native UI conventions as well if you use Xamarin.
3. Xamarin does a better job of it than most but it will still be lagging in access to the latest features.
4. BUT, if you are doing a vertical market app that wants to be cross-platform AND you have C# coders you can apply to that task, Xamarin is the best choice.
There are a lot of places where choosing Xamarin makes a lot of sense. And the people who created Xamarin are excellent. And now that Xamarin is owned by MS, it won't die because it is hard to make money as a cross-platform startup. But as with every other cross-platform tool for non-game apps I've seen, it isn't the best choice in green-field situations.
Re: Ask HN: Is Xamarin worth learning?
#113Such cross platform apps are meaningful only if your product doesn't need great UX. But the question is, if your app doesn't need it, why do you need a native app? It's better sticking to a web-app. Make a web-app and cover all platforms at once.
Re: Ask HN: Is Xamarin worth learning?
#114Re: Ask HN: Is Xamarin worth learning?
#115Earlier quoted context omitted.
The only performance problems I've seen were created by people who don't understand when React triggers a redraw, thus rerendering a 1MB image on every keyboard keystroke. As long of you are a bit mindeful of the big pitfalls (any bigger framework has some of those), the performance of React-Native is excellent.
According to discord ( https://discord.engineering/using-react-native-one-year-late... ): Unfortunately Android devices have much greater variance in performance and tend to trail significantly behind iOS. We were able to get our app running fairly quickly, but the performance — specifically on touch events was not at an acceptable level even on higher end devices. In addition at that early stage there was still a lo…
I don't know what Discord has seen there, so I don't know if that's been resolved. They also state that transitioning to React-Native on Android would have been more time than on iOS , which doesn't mean that any alternative like Xamarin would have been better. It also reads like the team for the respective platforms is around 1 person big and they already have a running version for Android, so the cost of a rewrite and the time to retrain would not have been worth it, which is reasonable. On a greenfield project, different conditions apply.
Re: Ask HN: Is Xamarin worth learning?
#116As a day to day user, I quite dislike it. But rewriting our business code was not an option.
Re: Ask HN: Is Xamarin worth learning?
#117iOS developer with multiple years of experience of burning fingers in cross-platform development here. I've tried Cordova/Ionic, Xamarin, Dropbox Djinni, and native iOS development. C++ is the closest I've got the a performant cross-platform solution, even though it go it's own quirks. The problem with Xamarin is it'll always play second fiddle to quick moving targets of Android and iOS toolchains. In my case the Rea…
Re: Ask HN: Is Xamarin worth learning?
#118Yes it is worth learning. It's a skill which is quite in demand especially from established companies for their business applications. However, as others have pointed out, Xamarin Forms is a bit of let down. In my experience, if you try to create custom designed UI (which is quite common in the native apps), then you find that Xamarin Forms is very limited. To overcome this limitation you need to write something call…
Re: Ask HN: Is Xamarin worth learning?
#119You might want to look into Exponent. They're a YC startup that build a framework on top of React Native. https://getexponent.com/ The team is made up of a few React core devs and some ex-FB folks. They actually helped organize the last official React conf. The scope of what can be built using Exponent is expanding rapidly. And you can build apps that are virtually indistinguishable from Swift/Java apps. If you want…
> you can build apps that are virtually indistinguishable from Swift/Java apps That is a very tall claim to make without any citations. All the cross-platform toolkits lag behind native swift/java apps by at least some margin, and the claim that JS indistinguishable from swift/Java is highly questionable.
Re: Ask HN: Is Xamarin worth learning?
#120iOS developer with multiple years of experience of burning fingers in cross-platform development here. I've tried Cordova/Ionic, Xamarin, Dropbox Djinni, and native iOS development. C++ is the closest I've got the a performant cross-platform solution, even though it go it's own quirks. The problem with Xamarin is it'll always play second fiddle to quick moving targets of Android and iOS toolchains. In my case the Rea…
How would C++ work for cross-platform development? Would you use a framework like Qt, or write platform-specific frontends?
It is easier to use straight C++, using a MVVM approach than Qt.
QML doesn't provide enough support for native UIs, so you end up spending time redoing native widgets on it.
Similarly Qt doesn't provide any bindings for the majority of mobile OS APIs, so you end up writing your own wrappers anyway.
In the end it is a bigger effort than using C++ libraries plus your own integration code.
Additionally in iOS and UWP, you get C++ extensions, Objective-C++ and C++/CX respectively, that make it quite easy to integrate with native APIs. Android is the outlier here with the JNI pain. Still Djinni and SafeJNI help to reduce the pain.