visual_studio_2015

最近接手了一个小工程,是使用VS2015+Cordova开发的。上手之后,大呼上当。因为VS2015+Cordova的坑实在太多。基本上是走一步跌个跟头,爬起来再摔一个。

回头询问客户,这种糟糕的东西谁上手做的?开发的人也能忍受?答曰:哦,不要用Visual Studio 2015,用命令行编译Cordova会好些。愕然,早说呀!我安装都搞了3天搞不定。

平心而论,这里面的症结,有一半不是微软的错,是防火长城的问题,特别是安装阶段。怎么处理?安卓开发包,选最小的,后面手工补足 – VS选项里面有个检查工具链完整性的功能,用这个查。要么,就安装全程透明番茄才行,即便如此,失败概率仍然很高。

编译也是。现在的开发套件,普遍采用与网络分发系统结合,及时下载的办法。但是,他们没有考虑到这里的网络条件。所以要么大面积的下载超时报错,要么下载半截,无法解压执行报错。解决方法:下载不下来的,找到那个文件地址,手工下载,放到它希望的位置就行了。

但MS不能免责。它的套件设计有问题。对于这种需要很多工具,操作链条很长的系统,不能搞成黑箱,而这个Cordova开发套件就是个黑箱。这会有什么问题呢?

1、出错找不着地方。如果一个链条报错了,你找不着谁调用的,连命令是啥都糊里糊涂,如何找到这个工具查验完整性?功能是否正确?不知道它放哪里了。这点很糟糕,工具链应该可以配置。

2、版本无法简单更替。开源的软件更新很快,特别是流行的包。但是微软搞成了黑箱,导致你很难直接替换掉原有的旧系统,而微软开发组还声明,只对某些版本做了测试,其它结果未知 – 没事,我们自己测试,你倒是让人能方便的更换呐?不要告诉我研究3、4天才能搞明白,这个跟实际工作并无多少联系,工具而已。

3、错误信息语焉不详。这是微软系统的老毛病了,错误提示跟真正的原因,十万八千里。不谷歌你是找不着原因的。这是过分封装工具链的问题,工具链的操作提示,它为了简化必然过滤,但如此便容易丢失真正的原因,让用户瞎忙一场。

所以,这个Visual Studio Cordova开发套件,建议不要用了。如果必须用,不要用VS2015的管理功能,直接当个编辑器。所有的编译打包操作,使用cordova命令行操作就行了,反而方便的多。顺便说一下,那个近似的xamarin开发套件,一样被无数人喷:BUG实在太多,忍无可忍。微软产品的品控,真是大不如前了。

2016-8-16 更新:

后续测试了其它几个支持cordova开发的IDE,体验结果是:还不如VS 2015完善,绕一圈又回来了。有不同认知的可以提看法,因为我体验的时间比较短。
1、VS 2015:坑多,软件关联性大,特别是版本有要求。但是功能比较多,支持iOS远程打包,调试容易。
2、VS Code:有个插件,功能比较简单,但是可用,也有一些问题,需要研究解决。可以调试。
3、Android Studio: 可以使用插件支持,导入Cordova工程。但是有两个根本缺陷:
1)代码不能修改,里面的www代码是复制过去的,不能改,否则引起同步问题;
2)不能实时调试,没有办法设置断点,基本就是个build、push安装的工具。
4、WebStorm:跟Android Studio实际上是一个内核: JetBrains。有个Cordova插件
可以建立工程,问题是不能连接真机,功能非常的有限、简单。

一句话,这个跨平台开发看似省事,实际上也有很多麻烦在里面。

十年来,编程领域有什么重要进展?