低代码开发平台 outsystems 体验小记(前端视角)

@GuoYongfeng 2018-12-18 08:59:31发表于 iuap-design/blog

从最近大家对 OutSystems (近期融资3.6亿美元,估值10亿美元)的对标分析和讨论来看,这种低代码开发平台很有杀伤力和想象空间,同时也是一个非常好的载体。低代码开发平台内部已经做了很多了(是大家一直想做,但是一直都做不好的那种,历史的车轮浩浩荡荡,无情的碾压过各种快速开发工具,有的连渣都不剩了)。它是一个产品的综合载体,势必要完整的串起整个中台的能力。

注册

1、免费注册,填写了姓名、邮箱地址,并进行了人机验证
2、发送邮件过来确认。
3、进行确认后,默认分配给我一个域名:guo-yongfeng.outsystems.com。(后续可以直接发布和预览,分配资源)
4、询问确认环节:

  • 要创建什么应用,三个选项:Mobile、Web、both(两者都要)
  • 询问你是什么角色,开发,产品,还是测试等等
  • 询问你使用outsystems的目的是什么,要给公司找个工具?outsystems的使用者?用这个来开发个应用?
  • 留下电话和所在行业两项信息。

5、根据我的设备情况,推进给我下载Mac 版本的IDE,应该是桌面版的,很可惜,下载地址挂了,WFT。大概分析了下,dmg等资源是用的亚马逊的S3机器,被墙了。还好,他们提供了继续操作的按钮,进入主页。

官网体验

1、资源平台:下载、license、IPP、快速上手等。
2、学习资料:线下培训、线上教学、视频文档、培训文档等
3、社区:用户交流,案例分析,疑难解答
4、技术支持:各个方向的学习资料非常完善。还有我的待支持清单、知识库、直接打电话获取帮助。
5、我的:个人历程、学习成就、勋章和积分、用户激励、能力追踪

工具使用体验

1、OutSystems Service Studio-11.0.116.200.dmg (Mac版本)239M,应该是使用.net开发的桌面工具,而不是基于 Electron 写的。

文档内容

1、快速上手里面
1.1、选择创建Mobile App还是Web App

a Mobile App is a native app shell, developed using Apache Cordova,移动应用是基于Codova创建的,和目前moli的一样。而且使用的是visual language,自定义 DSL。(plugin 插件可选,具备离线缓存功能localstorage),一次开发后编译出来ios和android两个应用。

Web App is an application with a responsive interface that runs in the browser 运行在浏览器里面的响应式web应用,宣称适配所有设备和各种屏幕宽度。using HTML5 and JavaScript. the third-party component only needs the URL。没有看到用啥框架,估计都是基于jq+bootstrap。

1.2、开发环境

创建一个开发环境,选择安装 applications and components 。应用商店的概念,搜索应用,安装下载应用,后续引入使用,还有查看应用的详情。

1.3、工具的工作区

image

1.4、创建第一个Web App

image

excel 文件里面的表数据,导入到数据库就能用。

  • 创建database model,把excel文件的数据导入
    image

  • 创建个页面,把数据搂出来展示
    image

  • 创建一个页面,里面的逻辑创建一条新数据,并更新到数据库

image

  • 创建删除功能,删除这条记录
  • 点击发布按钮,发布这个 Web 应用。

Alt text
image

1.5、基于项目模板快速创建一个应用

image

1.6、使用第三方组件(生态)

  • 搜索到一个社区提供的一个组件
  • 选择并安装下载到本地
  • Add Dependency; 将这个组件添加到项目中,作为依赖项

1.7、快捷键使用和各种便捷面板(真是非常变态)

工具面板里面的多页签,打开多个页面。

image

打开浏览器
image

UI 节点树
image

编写和调整 CSS(尼玛,非常变态)
image

样式细粒度调整(浏览器控制台既视感)
Alt text
image

逻辑调整
image

修改实体Entity
image

修改action逻辑
image

小结

我就看了个快速上手一章的文档,工具还没实际使用,其他章节的文档还没去看。

  • 从运行时框架的技术角度看,outsystems 显得有点“low”,或者是有些过时。
  • 从工具角度看,真实变态至极,可视化操作的神功快练到极致了。工具绝对是一流。
  • 从服务角度看,文档、培训、案例、生态等,做的相当好,该有的都有了,只是对于它这个生态我是打个问号的。
  • 从复杂度角度看,从代码的复杂度转变为工具的复杂度,我觉得这也是一个值得考量的问题。毕竟要去熟悉使用一套工具,从成本和用户角度看,如何衡量快速开发和成长价值。