无码VS亲码:新的希望

2020-09-10 00:28:25

当谈到构建应用程序时,没有代码是最合适的。TypeForm是一个很好的例子,说明了无代码是如何很适合简单的用例的,在JourneyApps这里我们广泛地使用它。然而,其中存在一个问题:无代码的最佳位置是简单的用例。我们已经很好地分析了无代码工具的这一限制。[1][2]。

使用无代码/低代码工具,跳过繁琐的圈套来实现应用程序的复杂部分-这通常意味着编写需要符合该工具约束的实际代码。

图像:使用可视化编程语言构建基本逻辑之外的任何东西最终看起来如下所示。

以上两种方法(使用预代码,或使用低代码平台的预代码可扩展性)都很耗时,尽管原因不同。两者都需要高级开发人才,而高级开发人员就像母鸡的牙齿一样稀缺。

其结果是,许多公司在执行雄心勃勃的软件和数字计划时受到高度限制。

这些都是我们服务的公司。自2009年以来,企业开发人员一直在使用JourneyApps上的代码构建定制应用程序。

接近2019年底,我们想要提高赌注。我们希望为有大量应用积压的公司提供一个新的应用程序开发范例,特别是在积压的应用程序中有很大一部分是雄心勃勃的B2E和B2B应用程序的情况下。

我们为自己设定了两个高水平的目标:帮助公司更高效地编写优秀的软件(特别是那些核心焦点不是软件的公司),并让他们使用现代软件技术和最佳实践来实现这一点,而不是典型的障碍。

我们决定,我们能做的最好的事情就是构建下一代IDE(作为对我们的全栈应用程序平台的补充),它的核心具有亲代码的功能和灵活性,但也具有高速的开发速度和易于采用的无代码/低代码平台。

我们将在开发模式下在实际设备上进行实时、有状态的热重新加载-而不是耗时的编译和部署过程。

我们不会使用DSL:我们将支持开源编程语言--最好是那些渐进式输入的语言。

我们不会使用专有的“应用商店”。开发人员必须能够导入开放源码包。

我们将为开发人员提供强大的功能,可以使用最少的代码行,并根据需要进行定制。这将包括双向关系离线数据同步、数十个UI组件(包括类似Excel的数据网格)、完整的审计跟踪、跨平台的BLE引擎,仅举几例。

我们将通过托管的Git或外部Git提供商(例如GitHub)提供全面的GIT支持。

我们将支持多种环境,当新版本的软件从一个环境迁移到另一个环境时,可以轻松地移植更改。

我们将允许开发人员在他们的UI中轻松地混合完全自定义的HTML,并允许那些自定义的HTML组件在需要时与前端堆栈的其余部分进行双向通信。

在我们的云后端中将有一个Node.js环境,开发人员可以在其中构建任何自定义后端功能,而无需任何配置或设置。

我们正在花时间从基本原则中找出一种新的应用程序开发方法,所以我们必须做出重大的设计决策,并做出重大的权衡。早期的一个主要决定是构建基于Web的IDE还是可安装的桌面IDE。

显而易见的问题是:“为什么要在Web上使用IDE?”我们坚信,浏览器技术、语言转换和软件开发的新方法(如声明式UI)的最新发展不仅使web IDE达到桌面级别的质量成为可能,而且还充分利用了web范例的固有优势。

使用这种方法,我们将拥有一个常青树的、跨平台的、跨设备的、以现代UI为后盾的IDE,最重要的是,为未来做好了准备。哦,那就没有什么要安装的了。然而,也许最大的胜利将是我们快速创新的能力,这要归功于网络技术的开放性以及它们发展的速度。

今天,我们非常自豪地宣布氧化物。这是JourneyApps团队过去一年辛勤工作的成果。

Oxide帮助初级和高级开发人员使用JavaScript或TypeScript构建复杂的跨平台应用程序,并辅之以可视化工具。应用程序可以在移动和桌面操作系统上本地运行,也可以作为PWAS在浏览器中运行。在幕后,Oxide使用CRDT[3]来实现团队中的实时协同编辑,并且它与GitHub和NPM都深度集成在一起。在Oxide中,开发人员可以在可视化编辑和编码之间切换,以进行UI布局和模式设计。开发人员还可以访问一流的代码调试工具。

Oxide是更广泛的JourneyApps平台的基本支柱。因此,所有的应用程序都继承了其他开箱即用的旗舰JourneyApps技术-这些技术已经经历了大约10年的研发和战斗:

所有应用程序都附带企业级Baas,并且很容易与其他数据源集成(部分原因是该平台不是基于DSL的)。

所有应用程序都是离线的-首先:数据自动同步到用户设备,并在每个视图上从本地数据库加载。查询数据速度快。这避免了复杂的状态管理和/或查询高速缓存系统。(当数据卷扩展时会发生什么情况?该平台提供高度可配置的选择性同步。)。

每个应用程序都会自动配置Node.js无服务器计算环境,以便所有技能水平的开发人员都可以添加服务器端逻辑和功能。

开发人员可以访问设计用于处理数据的丰富的内置UI组件集,开发开销非常小。无需调整样式或向每个组件添加事件侦听器和状态管理-这是为您处理的。

通常,JourneyApps使开发周期变得不复杂。我们负责解决企业软件开发的难题(托管、离线数据同步、移动应用构建、后端API、部署工具、审核跟踪等),以便开发人员可以专注于核心应用需求,最大限度地提高公司的创新率。

这里是调试会话的视图。在右下角可以看到该应用程序(在MacOS上运行),在右上角可以看到Chrome开发工具,在左边可以看到Oxide:

←返回所有帖子