Dcloud与APICluod选择指南_apicloud dcloud-程序员宅基地

技术标签: app  mui  APICloud  Hybrid App  Dcloud  uni-app  

在国内,开发 Hybrid App 大部分人会选择 Dcloud平台 或 APICluod平台。网络上也有许多的对比文章与互撕文章。在这些文章的背后还是没有准确的告诉开发者们应该如何选择。

本文只从实际开发来介绍两者的利弊,及如何做出正确的选择。

一、APICloud

优点:

  1. 文档全面

  2. 社区反馈问题能及时得到回应(小编反馈的建议和BUG官方都及时的做了改进和修复)

  3. 多窗口管理,布局自由度相对较高(能更好的适应多种布局)

  4. 入门要求极低(掌握 javascript,jQuery,vue 任一技术都可以进行开发工作)

  5. 窗口切换样式丰富(能满足部分杠精产品)

缺点:

  1. 因为布局自由度较高,开发效率相对于Dcloud平台而言较低(但能实现更多的布局,这也不能算缺点,而且可自由选择UI框架)

二、Dcloud有uni-app和MUI两种可供选择

A、uni-app

优点:

  1. 文档全面

  2. 能实现多端跨平台开发(本文只针对于开发 Hybrid App 作比较,但这一点也是uni-app的优势)

  3. 常用组件完备(通常情况下不需要引用其它组件,由框架提供的组件都能完成正常需求)
  4. 开发效率突出(应用的适配问题基本都已经处理,不需要开发者自己解决)

缺点:

  1. 组件全面,效率突出的背后约束也随之而来,布局自由度相对于APICloud平台而言较低(一个简单的例子,产品要求在标题栏添加一个“搜索”按钮,就不是很方便。PS:可以通过自定义标题栏实现)

B、MUI

优点:

  1. 入门要求极低(掌握 javascript,jQuery任一技术都可以进行开发工作。uni-app使用前最好先掌握Vue.js和小程序)

  2. 能实现多端跨平台开发

缺点:

  1. 文档超级糟糕(感觉demo的知识都比文档的全面)

  2. 文档和demo中的代码风格都不统一(mui.js明明已经有封装好的方法,但在源码示例中多处还是用的js原生)

  3. 文档中有多处基本的JS语法错误(先使用后定义,复制源码运行各种 not defined 对基础知识不足的新手不友好)

  4. 功能与UI耦合度太高(样式基本上是没得改了,类名全部与JS写死了,而且命名又长又臭)

根据自己的亲身经历总结出这两者各自的优劣势之后,分析一下如何选择。

  • 对页面及体验有较高要求则选择APICloud,就拿前面所说的在标题栏添加一个搜索按钮的常见布局,uni-app就不是很方便实现。为了避免更多类似的问题,选择APICloud会是更佳的选择(产品经理对布局有严格要求或者产品是个杠精,那就必须得选APICloud,别给自己找罪受
  • 对页面及体验要求不过分的情况下选择uni-app是最好的选择,效率绝对一级棒,以后有多端要求也能应对(因为有多端的需求,所以布局的自由度会有相应的降低
  • MUI的话能用uni-app的情况下绝对不选择(小编对它完全没兴趣,也没有去专门的学习和使用过,在帮助别人解决相关问题时,查看文档非常吃力,同时得查看MUI文档,demo源码,H5+文档)

文章阅读以这里,相信大家能做出正确的选择了,正确的选择合适的才是最好的。其实选择要看的要求并不多,就是“页面”和“效率”二选一,望本篇文章能对大家有所帮助。

选择合适自己的开发平台后,开发一款优秀的 Hybrid App 又该注意什么呢,可以阅读小编的原创文章《开发一款流畅的 Hybrid App 需要知道的事》。如果你真的选择了uni-app来做为多端开发的框架,在做这个决定前不妨先阅读小编的原创文章《“一套代码,多端运行”靠谱么?》后再做决定。

作者:黄河爱浪 QQ:1846492969,邮箱:[email protected]

公众号:web-7258,本文原创,著作权归作者所有,转载请注明原链接及出处。

更多精彩文章,请扫下方二维码关注我的公众号

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u013350495/article/details/89289363

智能推荐

oracle 12c 集群安装后的检查_12c查看crs状态-程序员宅基地

文章浏览阅读1.6k次。安装配置gi、安装数据库软件、dbca建库见下:http://blog.csdn.net/kadwf123/article/details/784299611、检查集群节点及状态:[root@rac2 ~]# olsnodes -srac1 Activerac2 Activerac3 Activerac4 Active[root@rac2 ~]_12c查看crs状态

解决jupyter notebook无法找到虚拟环境的问题_jupyter没有pytorch环境-程序员宅基地

文章浏览阅读1.3w次,点赞45次,收藏99次。我个人用的是anaconda3的一个python集成环境,自带jupyter notebook,但在我打开jupyter notebook界面后,却找不到对应的虚拟环境,原来是jupyter notebook只是通用于下载anaconda时自带的环境,其他环境要想使用必须手动下载一些库:1.首先进入到自己创建的虚拟环境(pytorch是虚拟环境的名字)activate pytorch2.在该环境下下载这个库conda install ipykernelconda install nb__jupyter没有pytorch环境

国内安装scoop的保姆教程_scoop-cn-程序员宅基地

文章浏览阅读5.2k次,点赞19次,收藏28次。选择scoop纯属意外,也是无奈,因为电脑用户被锁了管理员权限,所有exe安装程序都无法安装,只可以用绿色软件,最后被我发现scoop,省去了到处下载XXX绿色版的烦恼,当然scoop里需要管理员权限的软件也跟我无缘了(譬如everything)。推荐添加dorado这个bucket镜像,里面很多中文软件,但是部分国外的软件下载地址在github,可能无法下载。以上两个是官方bucket的国内镜像,所有软件建议优先从这里下载。上面可以看到很多bucket以及软件数。如果官网登陆不了可以试一下以下方式。_scoop-cn

Element ui colorpicker在Vue中的使用_vue el-color-picker-程序员宅基地

文章浏览阅读4.5k次,点赞2次,收藏3次。首先要有一个color-picker组件 <el-color-picker v-model="headcolor"></el-color-picker>在data里面data() { return {headcolor: ’ #278add ’ //这里可以选择一个默认的颜色} }然后在你想要改变颜色的地方用v-bind绑定就好了,例如:这里的:sty..._vue el-color-picker

迅为iTOP-4412精英版之烧写内核移植后的镜像_exynos 4412 刷机-程序员宅基地

文章浏览阅读640次。基于芯片日益增长的问题,所以内核开发者们引入了新的方法,就是在内核中只保留函数,而数据则不包含,由用户(应用程序员)自己把数据按照规定的格式编写,并放在约定的地方,为了不占用过多的内存,还要求数据以根精简的方式编写。boot启动时,传参给内核,告诉内核设备树文件和kernel的位置,内核启动时根据地址去找到设备树文件,再利用专用的编译器去反编译dtb文件,将dtb还原成数据结构,以供驱动的函数去调用。firmware是三星的一个固件的设备信息,因为找不到固件,所以内核启动不成功。_exynos 4412 刷机

Linux系统配置jdk_linux配置jdk-程序员宅基地

文章浏览阅读2w次,点赞24次,收藏42次。Linux系统配置jdkLinux学习教程,Linux入门教程(超详细)_linux配置jdk

随便推点

matlab(4):特殊符号的输入_matlab微米怎么输入-程序员宅基地

文章浏览阅读3.3k次,点赞5次,收藏19次。xlabel('\delta');ylabel('AUC');具体符号的对照表参照下图:_matlab微米怎么输入

C语言程序设计-文件(打开与关闭、顺序、二进制读写)-程序员宅基地

文章浏览阅读119次。顺序读写指的是按照文件中数据的顺序进行读取或写入。对于文本文件,可以使用fgets、fputs、fscanf、fprintf等函数进行顺序读写。在C语言中,对文件的操作通常涉及文件的打开、读写以及关闭。文件的打开使用fopen函数,而关闭则使用fclose函数。在C语言中,可以使用fread和fwrite函数进行二进制读写。‍ Biaoge 于2024-03-09 23:51发布 阅读量:7 ️文章类型:【 C语言程序设计 】在C语言中,用于打开文件的函数是____,用于关闭文件的函数是____。

Touchdesigner自学笔记之三_touchdesigner怎么让一个模型跟着鼠标移动-程序员宅基地

文章浏览阅读3.4k次,点赞2次,收藏13次。跟随鼠标移动的粒子以grid(SOP)为partical(SOP)的资源模板,调整后连接【Geo组合+point spirit(MAT)】,在连接【feedback组合】适当调整。影响粒子动态的节点【metaball(SOP)+force(SOP)】添加mouse in(CHOP)鼠标位置到metaball的坐标,实现鼠标影响。..._touchdesigner怎么让一个模型跟着鼠标移动

【附源码】基于java的校园停车场管理系统的设计与实现61m0e9计算机毕设SSM_基于java技术的停车场管理系统实现与设计-程序员宅基地

文章浏览阅读178次。项目运行环境配置:Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。项目技术:Springboot + mybatis + Maven +mysql5.7或8.0+html+css+js等等组成,B/S模式 + Maven管理等等。环境需要1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。_基于java技术的停车场管理系统实现与设计

Android系统播放器MediaPlayer源码分析_android多媒体播放源码分析 时序图-程序员宅基地

文章浏览阅读3.5k次。前言对于MediaPlayer播放器的源码分析内容相对来说比较多,会从Java-&amp;amp;gt;Jni-&amp;amp;gt;C/C++慢慢分析,后面会慢慢更新。另外,博客只作为自己学习记录的一种方式,对于其他的不过多的评论。MediaPlayerDemopublic class MainActivity extends AppCompatActivity implements SurfaceHolder.Cal..._android多媒体播放源码分析 时序图

java 数据结构与算法 ——快速排序法-程序员宅基地

文章浏览阅读2.4k次,点赞41次,收藏13次。java 数据结构与算法 ——快速排序法_快速排序法