星五博客

WebPascal脚本模型教程 - 简介

大家好!WebPascal脚本模型推出已经有段时间了,目前版本已经发展到2.0,目前的功能已经能够满足一般的网站制作或者接口api开发所需,现在,对它进行一个简单系统的介绍。

为什么要制作这么一个脚本模型呢?起因是这样的,做为一个Delphi开发人员,web开发总是我的弱项,而花费巨大的精力去重新学习其它语言,成本相对较高,也没法及时的解决手头上的项目,当然,学还是要学的,但一下子把web前端和web后端开发在短时间内学会,这也是不现实的。因为本人有一点前端html和css基础,后端asp基础,在参考php以后,想到一个解决方案,那就是找一个pascal语法的脚本引擎来实现php那样的功能,然后先把web前端开发先学会,以后有时间了再去学web后端开发,比如系统的学习一下php的开发。

WebPascal脚本模型的诞生:这几年,因为项目基本上都走http协议,所以比较喜欢使用RealThinClientSDK这个商业组件包,它是基于http应用层协议的轻量级传输和支撑组件,帮助我们解决数据传输和http服务支持的问题;在2016年4月中旬的时候,我首先尝试了使用rtc做为web服务端,paxCompiler做为脚本解析引擎的方案,开发出了最基本的框架,并实现了简单的web应答式脚本支持,当时的唯一功能,只有一个http post/get请求的实现,也就是在脚本中编写一个http post/get请求,将结果进行展示;在月底的时候,忽然发现rtc自己就带了脚本解析功能,于是又回去查看了它的示例,发现它的语法和脚本编写方式更加适合web开发,和php、asp一类的非常相似,于是将脚本解析部分,也换成rtc自己的了。就这样,我开始了边应用于实际项目,边完善脚本模型的历程,直到2016年11月19号,正式对外发布了rtc脚本模型1.0正式版本,当时已经具备了基本的web后端开发能力和api开发能力,也完成了公司一个项目管理后台的开发,包括给苹果ios app调用的api接口和网页版管理后台。

如何保持WebPascal脚本模型的活力呢?因为使用的是商业组件,所以直接开源是不可取的,而delphi开发人员在国内本身也已经不多了,使用rtc的群体更加的少,于是,我决定采用软件终身免费使用,功能及有效期限均不做限制,保留版权,不开源的方式(我记得有这样的授权协议的,具体忘了是哪个),让它与大家见面,让一些delphi开发人员,可以使用pascal语法进行web后端开发;当然,我也接受购买源码的请求,这样也就有一部分人可以在一起对框架进行讨论和改进,免费使用的用户也可以提出一些合理的要求及建议。基本上,只要它还能满足我自己项目需求,我就不会放弃更新它的。

那么,WebPascal脚本模型的原理是什么呢?其实也很简单,它本身就是一个web服务提供者,展示静态web资源,解析脚本后动态展示web资源;因为它只是将需要展示的数据进行输出(或者是解析处理后输出),所以对web前端的兼容全部交给了浏览器,也就不用于过关心web前端的兼容问题了,只要注意哪些web前端脚本是基于哪些版本的浏览器就行;web后端呢,则是类似php那样,由核心提供一堆的内置函数,供脚本调用,以实现各种功能,比如文件操作、数据转换等。基本流程就是用户从客户端(浏览器或者软件实现)发起一个请求,服务端(脚本模型)进行应答,基本上和web后端是一毛一样了。我也有考虑再加主动式执行的脚本功能,这个暂时还在计划中,具体实现时间还没定下来,如果加了这个功能,那就能解决更多的应用需求了。

对于delphi开发人员,如果您有兴趣用它进行web开发,我的建议是去了解一下bootstrap和jquery,其实bootstrap就是相当于delphi中的vcl了,比如你要使用一个按钮,那你只要查看一下bootstrap中的按钮的做对,复制过来,然后设置一下样式,绑定一下js函数就可以了,是不是很简单,很像delphi中的vcl呢?我就是这样折腾的。有兴趣的可以下载本站,也就是offeu.com的整站脚本,看看我是如何实现的。

嗯,我写的比较乱,文笔不行,所以大家伙凑合着看就行了,后续我将写一些使用教学,希望对您有所帮助。