KISS Web开发框架

也许最流行的应用程序平台是Web。这有很多原因,包括跨平台的可移植性、无需更新程序、数据备份、与他人共享数据等等。这种流行性驱使我们许多人转向这个平台。
不幸的是,这个平台有点复杂。与在特定环境中开发不同,Web应用程序需要利用截然不同的技术来创建程序的两个部分。最重要的是,还有许多额外的挑战,例如两部分之间的通信和安全性。
一个典型的Web应用程序将包括以下所有构建块
- 前端布局 (HTML/CSS)
- 前端功能 (JavaScript)
- 后端服务器代码 (Java, C# 等)
- 通信 (REST 等)
- 身份验证
- 数据持久化 (SQL 等)
所有这些甚至没有触及到所有其他不属于您的应用程序本身的部分,例如服务器 (Apache, tomcat 等)、数据库服务器 (PostgreSQL, MySQL, MongoDB 等)、操作系统 (Linux 等)、域名、DNS、等等等等。
尽管复杂性极高,但大多数应用程序开发人员主要只需要关注上面列出的六个项目。这些是他们主要关心的问题。
尽管针对这些主要问题有很多优秀的解决方案,但总的来说,这些解决方案是孤立的、复杂的且不协调的。让我解释一下。
许多解决方案是孤立的,因为它们是独立的完整解决方案包,与其他系统组件脱节。
有些解决方案非常复杂,以至于可能需要数年才能精通。开发人员在使用框架上遇到的困难可能比他们尝试编写的语言或应用程序还要多。这是一个主要问题。
最后,我说的不协调是指孤立的工具不能自然地很好地结合在一起。必须编写、学习和支持大量的粘合代码才能将各个部分组合在一起。每个工具都有不同的感觉、不同的方法、不同的思维方式。
由于对所有这些问题感到沮丧,我编写了KISS Web开发框架。起初,它只是我开发的不同解决方案。但后来它演变成一个单一的、全面的Web开发框架。KISS是一个开源项目,专门为解决这些确切的挑战而设计。
KISS是一个单一的、全面的、完全集成的Web开发框架,它包括以下集成解决方案:
前端
- 自定义HTML控件
- 与后端轻松通信,具有内置身份验证
- 浏览器缓存控制(使用户永远不必清除缓存)
- 各种通用实用程序
后端
- 与后端轻松通信,具有内置身份验证
- 易于使用的SQL数据持久化API
- REST服务是线程池的、异步的微服务
- PDF报表生成、CSV导入/导出以及各种其他通用实用程序
KISS的重点(其名称的由来)是保持简单 (Keep It Simple)。
KISS易于学习、易于使用且易于支持。我应该补充一点,有一些商业应用程序是用KISS编写的,因此KISS经过实战检验,可以用于实际应用程序。
KISS后端主要用Java构建。前端是纯HTML、CSS和JavaScript。保持简单!
KISS以完整的、可运行的应用程序形式提供,并附带大量文档。将源代码下载到您的Linux、Mac或Windows机器后,KISS最多可以在四行命令行中启动并运行。这四行命令将安装所有第三方库,并且将安装和配置Web服务器。由于KISS是使用微服务和其他技术构建的,因此可以在系统运行时修改应用程序的后端和前端。无需关闭服务器、构建、部署和重启服务器。
KISS具有以下先决条件
- JDK (Java Developer Kit) 8 或 11
- GIT
以下是在Linux或Mac上下载、配置、构建和运行初始KISS应用程序所需的所有命令(假设您已经安装了JDK)
$ git clone https://github.com/blakemcbride/Kiss.git $ cd Kiss $ ./bld develop
在Windows上,它将是
> git clone https://github.com/blakemcbride/Kiss.git > cd Kiss > build-builder > bld develop
此过程如下所示

此时,初始KISS应用程序将被构建并运行。您可以使用浏览器转到 http://localhost:8000 查看该应用程序。它看起来如下所示

初始用户名是“kiss”,初始密码是“password”。开箱即用的KISS支持PostgreSQL、MySQL、Microsoft SQL Server、SQLite和Oracle。KISS在出厂时配置并包含SQLite数据库。它使用此数据库来验证默认用户。
登录后,系统看起来如下所示

左侧的按钮展示了系统的各种功能。
控件 (Controls) - 演示各种HTML自定义标签
REST 服务 (REST Services) - 演示REST调用
CRUD - 演示一个示例的创建、读取、更新和删除屏幕,以及报表和导出
文件上传 (File Upload) - 演示文件上传功能
注销 (Logout) - 注销系统
KISS运行后,您可以使用您喜欢的IDE连接到调试端口9000来调试应用程序。
需要注意的是,KISS并非与KISS前端密不可分。KISS可以并且已经与其他前端框架(如React、Angular等)一起使用。这很容易。
再次强调,由于KISS的设计,您可以在运行时添加和更改前端或后端代码,并且更改将在执行后立即生效。请注意,所有代码都已完全编译。没有解释型代码。一切都以全速运行。
除了KISS附带的文档外,YouTube上还有一个视频培训系列。未来的文章将更深入地探讨系统的设计决策和使用。
连接
主网站 - https://kissweb.org
KISS 源代码 - https://github.com/blakemcbride/Kiss