visop
Vis
ible Op
erate。一个可视化管理代码或其他资源的工具,通过 界面<=>json文件<=>钩子代码<=>代码(资源)
的方式来实现.
工具的术语
要素
:代码里的最小功能模块,比如后端的一个接口,前端的一个页面,一个组件,一个数据库表等等,是软件管理的基本单位。一个代码可能有多种类型要素。要素之间没有直接关联。配置文件
:管理要素的json文件,在代码根目录下的visop里,一个代码可能有多个配置文件组成,每个配置文件管理某一类型的要素。钩子文件
:每个配置文件都有一个钩子文件,内容是一些nodejs代码,用于在增删该查某个配置文件时,触发某些对实际资源操作(比如从模板文件拷贝到代码目录里,修改代码的配置,修改数据库配置等等)。在使用本工具管理资源之前,需要先编写钩子文件
来接入。要素模板
:钩子文件里的代码使用模板来创建要素。
工具解决的问题
降低软件复杂度
。通过可视化管理代码的方式,80%复杂的代码不需要大部分人了解,一般开发人员只需要关注业务部分即可。降低使用软件或框架的难度
。将软件或框架20%关键业务抽象成要素,在界面增删改查,新增加功能和业务,只需要简单的在界面点击即可,不需要一开始就面对复杂的代码逻辑。经验复用
。将开发过程中的精华经验固化到要素模板里,其他人可以直接使用,而不是在去重新读开发文档或者过多的沟通交流。提高开发和维护的效率
。通过积累要素和模板,使得后续开发可以直接复用已有的要素和模板,提高开发效率。要素化代码本质上类似于微服务的概念,新增要素不影响已有要素的功能,结合每个要素后续会实现自动化测试,保证修改的要素功能正常,从而使得代码维护起来更加方便。降低软件开发成本
。由于软件开发和维护的效率太低,导致现在开发一个软件的成本很高,另外很多软件在升级时比较困难。希望后面能够通过积累不同的要素、组件、系统和框架,来快速开发一个可以方便维护的软件。创造更美好的软件世界
。这个有点虚,也许最终能够实现。重新梳理现有软件,要素化和重新编织组合,将开发者从重复繁琐的码农工作中解放出来,这些重复性工作通过界面点击就可以完成,让程序员去研究和探索新的技术,去发挥自己的创造性价值。让软件对于普通人不再神秘,普通人也可以像使用视频软件一样去编辑一个软件,通过软件去解决现实问题。
工具的原则
简单方便
。使用简单,接入方便,扩展改造方便。开放开源
。可以与任何技术和系统对接。解决问题
。不是为了做而做,而是为了解决软件开发过程中的问题。
安装
Prerequisites: Node.js (>=6.x, 8.x preferred), npm version 4+ and Git.
$ npm install -g visop
Usage
$ visop start -p /home/codepath
Example:
$ cd /home/codepath$ visop start
visop目录结构
管理界面操作指导
- 打开管理界面,默认为http://localhost:8050
- 默认进入配置管理界面,管理当前项目所有配置文件,每个配置文件管理项目的某一类
要素
- 每个配置文件对应侧边栏的一个子菜单项。每个配置文件的管理界面由三部分组成:数据管理,字段管理,配置管理。数据管理页面中的表格,每一行对应项目的一个
要素
。
visop使用案例
- express后端接口管理,待完成
- vue前端路由管理
visop接入指南
- 待补充
后续开发计划
- 账户管理
- 权限管理
- 管理多个项目
- 管理mysql数据库的模板
- 管理docker部署的模板
- 自动化测试
- 自动化接口文档
- 微服务
- 前端组件积累和管理
- 拖拽开发前端组件和页面
- 管理端除了表格外其他呈现方式