使用uni-app和Flutter的总结

在网上看到很多跨平台框架,也用几个不同的跨平台框架开发了一些项目,发现都还不错。由于目前还没有涉及到一些复杂的应用,基本上市面上的跨平台框架都能满足需求。

    首先说说自己开发跨平台框架的一些感受。

一:环境搭建难度

      uni-app:只需要到官网下载Hbuildx开发工具,就可以直接创建项目开始开发了,开发模式也比较清晰简单。且只要会vue基本上可以上手开发了。

      flutter:也是需要安装开发工具,windows的安装android studio或者其他开发工具,mac可以安装xcode,android studio。不过配置过程可能稍微麻烦点。需要安装插件。

代码:其实就是类h5写法。

二:开发难度

   uni-app:基本只需要学会vue开发就可以,基本遵循vue结构开发的。内容结构比较清晰。且官网都是中文的,比较容易看懂,插件市场也比较多,目前有600-700个左右吧,社区活跃也还行,提问题回复比较慢,一般加QQ群提问题,回复比较快点。

   fultter :需要学习新的语言dart,如果你是java程序员可能学一会就看懂了。如果没接触过,刚开始学习的时候看这代码一阵头大,看这代码:我在干什么,我在哪里,我要去哪?。。。学习一段时间后。发现还是可以的。也可以引入组件,不过代码清晰度来说不够明显,虽然会自动带注释。官方文档也有中文版的,但具体布局类说明没有中文化,只能算部分中文。

代码:这是一个搜索框。

Widget build(BuildContext context) {
    return Scaffold(
      body: Container(
        //padding: const EdgeInsets.fromLTRB(15.0, 0.0, 15.0, 0.0),
        child: Container(
          margin: const EdgeInsets.only(top: 50.0),
          decoration: BoxDecoration(
              color: Colors.blueGrey,
              borderRadius: BorderRadius.all(new Radius.circular(16.0))
          ),
          height: 40.0,
          alignment: Alignment.center,
          child: TextField(
            decoration: InputDecoration(
              prefixIcon: Icon(Icons.search),
              border: InputBorder.none,
              contentPadding: const EdgeInsets.only(left: 15.0),
             // suffixIcon: Icon(Icons.delete)
            ),
          ),
        ),


      )

三:性能比较

      uni-app:官网引入weex,而weex性能和react-native差不多。

      flutter:性能最接近原生的。据说画面渲染达到120fps,可以做一些游戏。

 

 

你可能感兴趣的:(flutter,uni-app)