Delphi Web前端开发教程(9):基于TMS WEB Core框架

news2024/12/27 7:25:56

3、REST Servers服务端(后端)框架

REST服务端特点:

– 为远程资源提供一个REST API接口。也可以为其他网络内容提供服务;

– 包括在Delphi Enterprise & Architect企业版和架构师版中的RAD服务器、DataSnap、WebBroker;

Delphi Web前端开发教程(9):基于TMS WEB Core框架


– 开源框架:Delphi MVC Framework、MARS-Curiosity、Synopse mORMot ORM/SOA/MVC Framework;

Delphi Web前端开发教程(9):基于TMS WEB Core框架


– 国产Delphi中间件厂商(排名不分先后):成都QQ600585开源ZNet(ZServer4D)、DIOCP、杭州快驴、全能中间件、咏南中间件、ABFrameWork、西安高勇、火神中间件等(这里只列出笔者知道的国产中间件,各家的价格和性能请自查。)。

善于利用这些开源或者商业中间件能节省开发团队几个月的时间和金钱成本,帮助公司快速赢得客户的好评,这些Delphi中间件的大多数性能超越了go、Node.JS等产品。使用Delphi点击几下鼠标就能快速可视化设计开发项目的前端和后端,有了Delphi和VCL/FMX框架,跨平台地实现全流程的实时可视化快速软件开发就成为了可能。软件行业的初学者们,远见者们——未来的大门已经敞开了。

各个框架特点比较

Delphi Web前端开发教程(9):基于TMS WEB Core框架


根据笔者的对这三大框架的开发经验,IntraWEB适合于WEB前、后端的开发,其自带的网络服务器非常强大、稳定,笔者使用Cesium框架开发的WEB GIS地理信息系统前端不需要Apache Tomcat或Nginx即可稳定运行;uniGUI是对JavaScript库Sencha ExtJS的封装,它带有两套VCL组件包,分别支持桌面端和手机端Web页面,更适合于开发网络版企业管理软件、ERP软件、财务进销存软件等,比如将Delphi开发的数据库管理软件会更容易的转换成uniGUI网络版;TMS WEB Core适合开发传统的企业网站、前端、以及IOS、Android、树莓派、Linux、PC端等应用,理论上可以封装包括Sencha ExtJS在内的任何第三方JS库(比uniGUI的封装方案更好),其主要特点如下:

Delphi Web前端开发教程(9):基于TMS WEB Core框架

业界领先的网络框架

  • 现代 SPA Web 单页应用程序模型,与流行的JavaScript框架和CSS样式兼容,具有大型可重用数据库访问组件包。支持TMS XData、RAD Server和其他编程语言服务端以及各种国产中间件;
  • 从Delphi/Object Pascal生成基于纯 HTML5/CSS3/Javascript 的Web应用;
  • 用于常见 UI 界面控件和访问浏览器功能的标准组件框架;
  • 通过浏览器直接调试 Pascal 代码;
  • 由经过多年开发的可靠且经过验证的 Delphi Pascal 到 Javascript 开源编译器pas2js提供后台支持;
  • 利用 Electron 或 Miletus 框架构建跨平台桌面应用程序;
  • PWA 支持:开始构建开箱即用的渐进式 Web 应用程序;

重用技能和组件

  • 集成在 Delphi IDE 中的基于组件的 RAD 快速可视化开发;
  • 一个真正具有革命性和创新性的TMS FNC 组件框架,现在也支持Web开发,允许创建可在 VCL、FMX、LCL 和 WEB 上使用的 UI 控件;
  • 开放以使用其他现有的 JavaScript 框架和库;
  • 开放使用 HTML/CSS 进行设计;
  • 开放使用其他 jQuery 控件甚至其他 Javascript 框架;
  • 为jQWidgets库中的jQuery 框架提供 Pascal 类包装器;
  • 轻松连接到 REST 云服务,包括连接到数据库的TMS Xdata和各种开源的Delphi REST框架,例如:mORMot等;

Delphi Web前端开发教程(9):基于TMS WEB Core框架

轻松部署分发

  • 应用程序仅由 HTML 和 JavaScript 文件组成,可以轻松部署在任何轻型或重型网络服务器上;
  • 使用任何现有的负载平衡软件或技术以获得最高性能;
  • 包含小巧方便的调试网络服务器,用于快速 RAD 开发;

综上所述,学习使用 Delphi & TMS Web Core,您可以:

  • 长期支持和持续升级的VCL开发框架,让客户对项目更有自信的长远规划,强大的功能使公司能够轻松构建自定义工具或扩展组件,在客户选择的平台上进行开发,保护客户的源代码不被利用,并确信客户的应用程序可以维护数十年;
  • 创建最安全的本机原生应用软件,与VCL框架一样的长期稳定性和向后兼容性。通过反编译复杂度保护项目源代码来测试支持、可访问性和知识产权安全;
  • 涵盖各种开发需求的数百种组件,有效帮助软件快速开发上市,灵活的FMX跨平台框架允许企业瞄准广泛的用户,为任何领域构建软件,并毫无障碍的访问所有硬件和操作系统功能;
  • 通过强大的所见即所得Delphi IDE进行可视化开发,借助数百个组件和强大的可视化设计形式,开发人员可以在几秒钟内制作原型并构建 GUI 应用程序。此外,编辑器允许您根据需要使用代码更改 UI 元素;
  • 帮助开发团队生产力提高5倍,换句话说1个Delphi程序员抵得上5个Java程序员的开发效率,这是对开发人员完成典型开发任务所需的工作量和代码的度量。生产力可以通过两种不同的方式实现——由于Delphi强大的本机组件和开发库以及 IDE 工具(如代码完成和可视化设计)降低了开发人员编码难度;
  • Delphi是真正的全栈万能编程语言,具有更强灵活性和功能性,Delphi可伸缩性、数据库访问、对设备特定功能的访问以及目标平台,远超其他开发工具;
  • 仅使用一个代码库为 5 种不同的操作系统Windows,Android,iOS,macOS,和Linux开发应用软件,同时使用Delphi开发构建本机应用程序,有效解决一些安全问题。例如,Electron 和 C#、Java应用程序很容易被反编译。从 UI 元素到产品的核心业务逻辑,而使用Delphi构建的应用程序除了UI之外很难进行逆向工程,Delphi反编译后的代码是汇编代码,一般人很难读懂;
  • 开发团队只需熟悉一种Delphi编程语言技能,同时开发后端、前端、桌面、移动应用、Web应用。
  • 更优雅、更适合阅读的源代码,当开发人员用 Delphi 编程语言编写代码时,就像用英语写一首诗一样。此外,所有命令和关键字都很直观,广泛的现代语法糖和久经考验的强大“指针”丝毫不会限制程序员的开发能力;
  • 作为物联网时代的开发工具,通过Delphi自带的本机物联网传感器组件,可以直接访问硬件,例如:GPS、摄像头、麦克风、蓝牙设备、MQTT、串口、Modbus通信、PLC设备,并且执行速度更快,为树莓派、嵌入式Linux开发强大的物联网应用。

TMS Web Core 允许您使用Delphi作为“后台”编程语言来创建完全交互式的网页。当您点击编译按钮而不是创建传统的 Windows 可执行文件时,您将获得带有 CSS 的纯 HTML 页面,只需要准备好复制到普通的常规 Web 服务器发布即可——除此之外没有其他任何要求。

Web 应用程序的可编程功能以 JavaScript 文件的形式提供。您不必编写甚至学习 JavaScript——您只需编写 Delphi 代码,编译器就会为您将该代码转换为 JavaScript。

TMS Web Core 真正突出了 Delphi 语言在编写程序时是多么简单而强大。“强类型”语言是秘诀的一部分,而 RAD 中的“R”真正表明了“快速”的意思。使用 Delphi可以频繁且重复地生成健壮、高性能且功能丰富的应用程序,而且花费的时间和工作量极少。TMS Web Core 将这种可视化快速应用开发的功能扩展到使用 Delphi 创建交互式网站。

我甚至无法告诉你 TMS Web Core 对 Delphi 程序员来说是如何改变游戏规则的。Delphi早期也有一些值得信赖的替代品,例如古老的IntraWeb、uniGUI等,但 TMS Web Core 对我来说感觉更“正确”,真正的体验是创建一个常规的 Delphi 应用程序,它恰好作为一组 HTML 页面弹出。没有混乱,没有大惊小怪,并且很容易在您选择的任何托管服务上安装到任何服务器主机上,无论是Windows或者Linux独立服务器还是虚拟主机。

Delphi是最简单、开发速度最快的编程语言开发工具,用于在 Windows、MacOS、Linux、iOS 和 Android 操作系统上开发简单或专业的应用程序。初学者可以通过其广泛的示例、教程、帮助文件和对代码的LSP支持轻松学习。Delphi带有用于高性能原生Windows应用程序开发的屡获殊荣的VCL框架和用于跨平台UI的强大的FireMonkey(FMX)框架。官方免费提供一个Delphi社区版供学生、初学者和初创公司使用;

Delphi王者归来,重装上阵!Delphi拥有27年不断进化发展的强大生命力,数量庞大的第三方组件,活跃的全球开发者生态链,乐于助人的Delphi程序员社区,积极进取的研发团队,所有这一切都会极大的帮助Delphi开发者在移动互联网和物联网时代游刃有余!未来已来,欢迎加入Delphi开发者社区!

PDF下载地址: 《DelphiWeb前端开发教程——基于TMSWEBCore框架》PDF_tmswebcore-Javascript文档类资源-CSDN下载

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2254136.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SPC三种判定准则的算法

1.连续6个点递增或递减 //传入数据列表 //返回连续X个及以上递增或递减的数组下标int n = array.Length; int X = X_in; List<int> regions_start = new List<int>(); List<int> regions_end = new List<int>();if(Open){for (int i = 0; i < n - (…

AI一键生成原创圣诞印花图案

一、引言 随着科技的飞速发展&#xff0c;AI 已经深入到我们生活和工作的各个角落&#xff0c;为创意设计领域带来了前所未有的变革。在圣诞即将来临之际&#xff0c;想要设计独特的圣诞印花图案却又担心缺乏灵感或专业技能&#xff1f;别担心&#xff0c;千鹿 AI 为我们提供了…

Ubuntu的pip怎么用

第一步&#xff1a;查看python3版本 第二步&#xff1a;安装pip 第三步&#xff1a;可以尝试使用pip list查看 也可以尝试安装 下面这条命令可以设置永久源 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

基于Matlab三点雨流计数法的载荷时间历程分析与循环疲劳评估

随着工程领域中机械设备和结构系统的复杂性不断增加&#xff0c;疲劳分析成为评估其可靠性与使用寿命的关键环节。载荷时间历程数据在疲劳分析中扮演着重要角色&#xff0c;而雨流计数法作为经典的循环计数方法&#xff0c;能够有效地从载荷时间历程中提取疲劳载荷循环信息。本…

帝可得-策略管理

策略管理 需求说明 策略管理主要涉及到二个功能模块&#xff0c;业务流程如下&#xff1a; 新增策略: 允许管理员定义新的策略&#xff0c;包括策略的具体内容和参数&#xff08;如折扣率&#xff09;策略分配: 将策略分配给一个或多个售货机。 #mermaid-svg-PSQOJMLJqVGn3W…

【数据结构】手搓链表

一、定义 typedef struct node_s {int _data;struct node_s *_next; } node_t;typedef struct list_s {node_t *_head;node_t *_tail; } list_t;节点结构体&#xff08;node_s&#xff09;&#xff1a; int _data;存储节点中的数据struct node_s *_next;&#xff1a;指向 node…

嵌入式 C 编程必备(7):const 关键字 —— 打造稳定的常量空间

目录 一、const关键字的基本含义与用法 1.1. 修饰基本数据类型 1.2. 修饰指针 1.3. 修饰数组 1.4. 修饰结构体 二、const关键字在嵌入式编程中的优势 2.1. 提升代码可读性 2.2. 增强代码安全性 2.3. 优化内存使用 2.4. 促进模块化设计 2.5. 支持静态分析和测试 三、…

Day28 买卖股票的最佳时机 跳跃游戏 跳跃游戏 II K 次取反后最大化的数组和

贪心算法 part02 122. 买卖股票的最佳时机 II - 力扣&#xff08;LeetCode&#xff09; 求最大利润 将每天的正利润加和 public int maxProfit(int[] prices) {int totalPrices 0;for(int i0;i<prices.length;i){if(i<prices.length-1&&prices[i1]>prices[…

【专题】计算机网络之运输层(传输层)

1. 运输层协议概述 1.1 进程之间的通信 (1) 运输层的作用 运输层提供进程间的逻辑通信。 运输层的屏蔽作用&#xff1a; 运输层向高层用户屏蔽了下面网络核心的细节&#xff08;如网络拓扑、所采用的路由选择协议等&#xff09;&#xff0c;使应用进程看见的就是好像在两个运…

Ansible 运维工具

安装 apt install ansible /etc/ansible/hosts , 指定密码或密钥访问分组机器 [k8s_masters] master0.c0.k8s.sb[k8s_nodes] node0.c0.k8s.sb node1.c0.k8s.sb[k8s:children] k8s_masters k8s_nodes[k8s_masters:vars] ansible_ssh_usersbadmin ansible_ssh_pass"***&q…

matlab 中的 bug

在matlab中绘图&#xff0c;设置 axe 的背景颜色 axes_in3.Color #00235B ;打印的时候 print(figure_handle1,-dpng,-r300,"merge_yt_ey") ;此时保存的图片无法识别背景颜色 原因在于 matlab 中的 InverseHardcopy 将 InvertHardcopy 设置成 off 则可以解决这个问…

利用Python爬虫快速获取淘宝/天猫SKU详细信息数据

引言 在当今的电商环境中&#xff0c;获取商品的详细信息对于市场分析和竞争策略至关重要。阿里作为中国最大的电商平台&#xff0c;拥有海量的商品数据。本文将介绍如何利用Python编写爬虫程序&#xff0c;快速获取商品的SKU详细信息数据&#xff0c;并提供相应的代码示例。 …

R语言机器学习论文(二):数据准备

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍加载R包数据下载导入数据一、数据描述二、数据预处理(一)修改元素名称(二)剔除无关变量(三)缺失值检查(四)重复值检查(五)异常值检查三、描述性统计(一)连续变量数据情…

基于图像变化检测的毁伤效果评估——学习笔记

前言 闲的无聊&#xff0c;看看论文。 基本评估步骤 第一步&#xff1a;图像预处理。通过图像配准、不同波段提取、图像校正、图像滤波等手段&#xff0c;统一图像格式&#xff08;文中统一为灰度图&#xff09;&#xff0c;得到待检测图像&#xff1b; 第二步&#xff1a;…

A1228 php+Mysql旅游供需平台的设计与实现 导游接单 旅游订单 旅游分享网站 thinkphp框架 源码 配置 文档 全套资料

旅游供需平台 1.项目描述2. 开发背景与意义3.项目功能4.界面展示5.源码获取 1.项目描述 随着社会经济的快速发展&#xff0c;生活水平的提高&#xff0c;人们对旅游的需求日益增强&#xff0c;因此&#xff0c;为给用户提供一个便利的查看导游信息&#xff0c;进行导游招募的平…

青海摇摇了3天,技术退步明显.......

最近快手上的青海摇招聘活动非常火热&#xff0c;我已经在思考是否备战张诗尧的秋招活动。开个玩笑正片开始&#xff1a; 先说一下自己的情况&#xff0c;大专生&#xff0c;20年通过校招进入杭州某软件公司&#xff0c;干了接近4年的功能测试&#xff0c;今年年初&#xff0c…

工业—使用Flink处理Kafka中的数据_ProduceRecord2

使用 Flink 消费 Kafka 中 ProduceRecord 主题的数据,统计在已经检验的产品中,各设备每 5 分钟 生产产品总数,将结果存入HBase 中的 gyflinkresult:Produce5minAgg 表, rowkey“

Python爬虫——猫眼电影

用python中requests库爬取猫眼电影信息并保存到csv文件中 猫眼专业版 爬取界面 效果预览 代码 import requests import jsonurl1https://piaofang.maoyan.com/dashboard-ajax?orderType0&uuid1938bd58ddac8-02c2bbe3b009ed-4c657b58-144000-1938bd58ddac8&timeStamp…

ArcGIS求取多个点距离线要素的最近距离以及距离倒数

本文介绍在ArcMap软件中&#xff0c;对于点要素中的每一个点&#xff0c;求取其距离最近的道路的距离、距离倒数的方法。 首先&#xff0c;看一下本文的需求。现在已知一个点要素&#xff0c;其中含有多个点&#xff0c;假设每一个点表示城市中的一家商店&#xff1b;同时&…

SpringBoot开发——Spring Boot3.4 强大的结构化日志记录

文章目录 1. 简介2. 实战案例2.1 环境依赖2.2 快速入门2.3 输出到文件2.4 添加附加字段2.5 自定义日志格式总结1. 简介 日志记录是应用故障排除中早已确立的部分,也是可观测性的三大支柱之一,另外两个是指标和追踪。在生产环境中,没有人喜欢盲目行事,而当故障发生时,开发…