一直仰慕Xamarin的大名,最近抽空去浅学了一下。
最后有一种这东西不咋地,又有一种这东西还不错的感觉
先说下为什么不咋地?
- 如果在公司项目使用Xamarin.forms这个东西。按照国内APP设计的风格,我感觉就会很悲剧,因为Forms这个夸平台的库无法(或者说很难)做到多平台UI界面一样,Forms提供的控件,在不同的平台渲染出来的样式有很大的差别,而且控件很少,如果要使用百度地图这类的控件,还需要自己写Render。我个人感觉距离做商业软件的距离还有很远。当然做一些简单的内部使用的程序还是没问题的,至少没有明显的坑
- 如果使用Xamarin.Android和Xamarin.IOS的话,必须对原生的开发有足够的了解。而且C#水平应该也要过得去,不然根本无法参照网上大堆的原生代码去做开发(当然如果你特别厉害,啥都自己写,当我没说)
- 原生库绑定的坑,也很难找到答案,不过主流的库绑定还是能找到绑定爬坑的文章的
为什么又说还不错?
- 我本身学习这个技术不是为了在工作中使用。只是为了空余时间写些自己的东西。以后想朝着所谓的独立开者去发展。我感觉很适合我个人
- 现在MSDN有了中文的机器翻译文章,学习难度非常低,只要有耐心。(不过知识体系还是很庞大的)
- 跨平台能力非常厉害。IOS Android UWP,目前市面上主流的跨平台方案,H5的那一套,基本都是只有安卓 iOS两端,uwp基本被放弃了。(随着Windows10的升级数继续上升,我感觉UWP以后也是一个很有前景的平台,独立开发者肯定是不愿意放弃的)
- 和Monogame等游戏引擎结合非常好,就算不做游戏,做一些图形工具也是非常好的。
因为刚接触,了解有限,难免有认知错误的地方。
我也会在以后的日子继续深入学习Xamarin。
如果不以找工作为目的。想弄个人的作品,或者企业内部使用的APP。Xamarin绝对是第一选择