Serverless 越来越火,无代码编程也提上了议程,还有云开发也在风口浪尖。那么,未来会是怎样的呢?

最近,可能因为 Ledge、可能因为我写的文章,我和各种各样的人交流起了未来的软件开发,有腾讯云的,有阿里云的,有华为云的,还有各种各样的公司相关的项目,所以我整理了我关于未来软件的一些思考。

因为我懒得画,所以就用我最近画的一张图:

让我们先从低代码开始——最近特别火的一个技术。

低代码编程

无代码/低代码是一种创建应用的方法,它可以让开发人员使用最少的编码知识,来快速开发应用程序。它可以在图形界面中,使用可视化建模的方式,来组装和配置应用程序。开发人员可以直接跳过所有的基础架构,只关注于使用代码来实现业务逻辑。

而为了支撑起低代码编程,我们需要一系列的基础设施:微前端、微服务、APP 插件化、Serverless 等等。从这个目标,倒推我们需要这么一系列的技术。

所以,你可以从我一年多前写的文章来了解要怎么去实现,GitHub:https://github.com/phodal/lowcode

云研发

云研发,是一种生于云上的闭环 + 代码化的软件开发方式。它可以让业务人员、开发人员、运营人员等在同一个云端共同协作、透明化地完成整个软件的生命周期(需求、设计、编码、构建、部署、运营),而非相互隔离,又或者是借助于多个软件才能完成工作。

在现在的各种云厂商里,如腾讯、阿里等,都是叫『云开发』,从开发视角来看待的。而我个人偏向于从全局来优先整个流程。于是我写了《云研发:研发即代码》:

GitHub:https://github.com/phodal/cloud-dev

微架构

微服务已经相当流行了,而为了支撑起云研发这种在云端的开发模式。开发人员需要一种更友好的浏览器端集成,这种模式就是『微前端』。

微前端是一种类似于微服务的架构,它将微服务的理念应用于浏览器端,即将 Web 应用由单一的单体应用转变为多个小型前端应用聚合为一的应用。各个前端应用还可以独立运行、独立开发、独立部署。

除了看我在 GitHub 上写得长长的『微前端的那些事儿』:https://github.com/phodal/microfrontends

还可以看看那篇:『微前端如何落地』

Serverless

三年前,我开始玩了 Serverless,对这个轻量级的后端架构颇为感兴趣,只需要在本地敲入几个字符,即可完成部署。

为此,三年前我写了一个相关的指南(考虑到这是一个电子书的长度,我建议你收藏一下。)见:http://serverless.ink/ ,这里大家可以去看看。

微害架构

“微” 害架构,即微架构以不合理的方式运行着,其表现形式不适当地采用 “微架构”(微服务、APP 插件化、微前端等)技术拆分臃肿的单体应用,导致软件架构进一步复杂化、难以维护,使得原本具有优势的微架构微微出现一些问题。

随着微架构的流行,现在、哪至未来,会有更多的微架构应用开发得相关的不合理,这里就附上我两年前写的:『"微" 害架构』。

整洁架构

对于那些想治理后端服务架构的混乱问题,我们建议大家可以考虑使用 Robert C. Martin 提出的整洁架构。

对于后端开发人员来说,可以考虑《架构整洁之道》。前端开发人员则可以参考我写的『整洁前端架构』:https://github.com/phodal/clean-frontend

万物代码化

让我们在回到云研发的那个问题上,未来的云研发必然需要一系列的代码化。所以,我开始研究如何进行『万物即代码』。在这一个系统中,我已经写了相关的实践,如何对代码进行建模等。

GitHub 持续更新中:https://github.com/phodal/ascode.ink

最近的一篇文章是『文档代码化』。

未来的软件研发是怎样的?

你觉得会是怎样的?

这 8 篇文章告诉你:未来的软件研发是怎样的?相关推荐

  1. 上台演讲怎么做?这篇文章告诉你

    上台演讲怎么做?这篇文章告诉你 公众号:"王堃阳口才前线"始于2003年,学演说找王堃阳,专治各种不会说! 演讲者很可能是突然被"点将",而没有做好思想准备.心 ...

  2. lasso特征选择python_特征选择怎么做?这篇文章告诉你

    原标题:特征选择怎么做?这篇文章告诉你 照片由 Clem Onojeghuo 发布在 Unsplash 上面 作者 | Pier Paolo Ippolito 翻译 | Skura 编辑 | 唐里 原 ...

  3. 这篇文章告诉你表格识别的软件有哪些

    这篇文章告诉你表格识别的软件有哪些 大家在学习和工作过程中,会时常遇到需要整理表格信息的时候,有时需要处理的表格非常的多,但我们自己的时间又比较有限.其实我们可以使用能够识别表格的软件来帮助我们进行快 ...

  4. 这篇文章告诉你开发个人小程序要花多少钱

    微信小程序大家都不陌生,只是很多人对它有误解,以为只有企业和商家才能注册开发.其实个人也可以注册小程序!而且门槛很低,不需要懂什么技术或者设计知识.激动吗?很多小白人不太懂做个人小程序,所以我来告诉你 ...

  5. 图片加水印怎么加?这篇文章告诉你

    现在有越来越多的人从事自媒体,因此每当自己发布的图片上,往往都要加上水印来防止被别人盗用侵权,而相信大多数的人都应该知道可以利用一些加水印的软件来实现,但是你们知道具体如何操作吗?今天就让我来告诉你三 ...

  6. 这篇文章告诉你用于制作思维导图的软件有什么?

    现在越来越多人习惯用思维导图来梳理思维逻辑.制作考点笔记等等,所以拥有一款好用的思维导图软件可以令你事半功倍,快速地将你的思维可视化,从而巩固记忆理清头绪,做出正确的决策.今天就来告诉大家思维导图工具 ...

  7. 怎么把模糊的照片变清晰?这篇文章告诉你

    相信每个人的家里都会有一些老照片,而这些老照片承载着我们老一辈人过去的美好回忆,无比的珍贵,但是老照片随着时间的变化照片也变旧.泛黄以及模糊不清了,让我们难以看清上面的人和事,非常的可惜,因为每一张老 ...

  8. 这篇文章告诉你excel批量翻译有什么方法

    在商业或个人领域中,我们有时需要将大量文本翻译成不同语言,例如跨国企业需要在不同的国家和地区之间进行文件传输和协作,在旅行时我们需要阅读当地语言的信息或地图.如果我们手动操作的话,是非常耗时且容易出错 ...

  9. 【完结】12篇文章告诉你深度学习理论应该学到什么水平

    专栏<AI初识境>正式完结了,在这一个专题中,我们给大家从神经网络背景与基础,讲到了深度学习中的激活函数,池化,参数初始化,归一化,优化方法,正则项与泛化能力,讲到了深度学习中的评测指标, ...

最新文章

  1. HTML5语音输入方法
  2. matlab抓取股票数据,Matlab经过sina web接口获取个数即时股票数据函数实现代码
  3. 扩展源_视觉框架SimpleCV - 图像源
  4. Mysql系列常见面试题
  5. 基于在线百科知识库的多义词词义消歧项目
  6. 操作系统--多进程管理CPU
  7. VMware vSphere Client下增加虚拟机磁盘空间的方法
  8. 如何区分真的工厂还是假的工厂
  9. stack的使用方法
  10. 基于CANdelaStudio制作CDD流程概述
  11. 微信小程序 获取formId
  12. R语言-来自Prosper的贷款数据探索
  13. TP5——workerman在线客服
  14. Python学习笔记(一)——Anaconda安装与配置(windows)
  15. 不愧是阿里P8!java如何遍历链表
  16. 两个向量的夹角解法--VC
  17. IDE工具(27) idea点击箭头快速切换到相关联的类位置 (Free MyBatis插件)
  18. 判断一个doule等于0的正确方法
  19. 安防工程商选择千兆POE交换机的注意事项
  20. 现实环境中,关于Teb Local Planner 参数调试总结

热门文章

  1. 信息系统项目管理师-配置管理知识点
  2. Mysql 使用下载的zip文件进行安装启动
  3. 由浅入深,走进Python装饰器-----第五篇:进阶--类装饰类
  4. linux计算机基础
  5. MariaDB Spider:实现MySQL横纵向扩展的小能手
  6. Linux下如何进行FTP设置
  7. 2013年第四季度总结报告
  8. ffmpeg API 笔记:使用libavcodec/libavformat/libswscale ffmpeg例子
  9. 添加翻转功能的list类
  10. 双边滤波(bilateral filter)彩色图 matlab实现代码