PowerBuilder现代编程方法X01:PowerPlume的X模式
临渊羡鱼,不如退而结网。
PB现代编程方法X01:PowerPlume的X模式
前言
PowerPlume是PowerBuilder深度创新的扩展开发框架(免费商用)。
它不是一个大而全的类库(取决于你自己)或框架。
它是改进现有代码的全面解决方案,是能让程序在并行、安全、界面、网页等方面得到全面提升的可靠方法。
它的三个主要特色是一、原创功能;二、零改动兼容(非侵入性);三、极简接口设计。
商业支持模式:DLL源码出售(带两年更新与支持服务)
中文技术博客:https://www.cnblogs.com/windfic/tag/pb/
开发交流QQ群:286502392
PowerPlume组成
主要由四个模块组成:
1.PbDui(owner-draw Direct UI):自绘界面框架,无限提升界面能力
2.PbPdd(Parallel Data access Daemon):并行数据访问守护,嵌入式WEB服务器
3.PbStl(Security Template Library):安全模板库,颠覆式的代码生成器和安全保障库
4.PbWui(stand-in Web UI):替身无接口浏览器,开发独属于自己的DataWindow
在X模式下,升级为:
5.PbXmp(X-mode Multi-Platform):跨平台界面框架
6.PbXre(X-mode Runtime Environment):运行环境
7.PbXds(X-mode Development Solution):PB代码转换器
8.PbXdw(X-mode Data Weaver):数据编织者DW克隆
「 外面 」的界面相关功能统一放在PbDui;
「 里面 」的服务运算功能统一放在PbPdd;
PbStl解决了「 后面 」开发者关于安全、效率上的烦恼;
PbWui替代DataWindow解决了「 前面 」发展出路的问题;
X模式一下子越过了Web鸿沟到了「 对面 」,跨平台成功上岸;
PowerPlume堪称「 全面 」无死角,以开发者为中心的解决方案。
了解X模式
X名字由来,X一开始就是neXt-generation下一代的意思,但随着内容越来越丰富,包含了越来越多的涵义,比较交换、变换、交叉等意义。
所以就取了一个泛化的名字:X模式。
X模式包含三个阶段:
- 一、扩展阶段:扩展接口,去掉那些依赖外部控件或DLL实现的功能,可以继续由自己编写扩展功能。
- 二、增强阶段:增强能力,去掉那些用“土办法”解决的不优雅不关键的代码,替换掉自己“独有”的但实现复杂的功能。
- 三、脱离阶段:转换代码,脱离PB环境,开发现在还不支持的平台应用,比如Web应用或者移动APP。
四个模块都有这三个阶段:
PbDui
- 第一阶段:使用SVG扩展PB界面绘图能力,减少外部DLL依赖,发展特色功能
- 第二阶段:使用Dui界面增强PB界面效果,减少内部非关键代码,减少维护成本
- 第三阶段:使用PbXmp脱离PB,开发跨平台应用
PbPdd
- 第一阶段:使用并行库扩展PB并行开发能力,减少外部DLL依赖,发展特色功能
- 第二阶段:使用并行库增强PB基础库,减少内部非关键代码,减少维护成本
- 第三阶段:使用PbXpe脱离PB,开发并行程序
PbStl
- 第一阶段:使用模板生成库扩展PB开发能力,减少外部工具依赖
- 第二阶段:使用svm增强PB安全性,减少内部非关键代码,减少维护成本
- 第三阶段:使用PbXds脱离PB,将PB程序转换成Golang跨平台程序
PbWui
- 第一阶段:使用Wui库扩展Web界面开发能力,减少外部DLL依赖
- 第二阶段:使用Wui增强PB数据窗口,减少内部非关键代码,减少维护成本
- 第三阶段:使用PbXdw脱离PB,开发类数据窗口功能的DataWeaver程序
使用X模式
如果你想尝试一下PowerPlume框架
PowerPlume框架的特色功能:
四大王炸级别的特色功能,完全创新,暂时没有发现其它框架有类似功能。
详细说明请关注《PowerBuilder现代编程方法X》2-5章
如果你想用PowerPlume提升生产力
PowerPlume框架需要投入的工作:
与其它框架不同,你除了等待作者发布新版本之外,还可以自行扩展框架。
详细说明请关注《PowerBuilder现代编程方法X》7-10章
如果你想用PowerPlume脱离PB环境
PowerPlume框架支持你开发现在PB并不支持的应用:
这可能是用户对PB最大的失望和期待,不用再等万年不变的PB作出改变了,我们可以用更好的方式来优雅的转型。
2、再者,Web界面框架的升级,可将程序映射为网页界面。
所以,最终能摆脱PB的限制,生成Web应用;Windows、Linux、macOS桌面应用;iOS、Android移动应用;
详细说明请关注《PowerBuilder现代编程方法X》12-15章
PowerBuilder现代编程方法X01:PowerPlume的X模式的更多相关文章
- Atitit 编程语言编程方法的进化演进 sp COP ,AOP ,SOP
Atitit 编程语言编程方法的进化演进 sp COP ,AOP ,SOP 1.1. Sp oop>>COP ,AOP ,SOP1 1.2. Sp oop 结构化方法SP(Stru ...
- 学习linux/unix编程方法的建议(转)
假设你是计算机科班出身,计算机系的基本课程如数据结构.操作系统.体系结构.编译原理.计算机网络你全修过 我想大概可以分为4个阶段,水平从低到高从安装使用=>linux常用命令=>linux ...
- paip.函数式编程方法概述以及总结
paip.函数式编程方法概述以及总结 1 函数式编程:函数式风格..很多命令式语言里支持函数式编程风格 1.1 起源 (图灵机,Lisp机器, 神经网络计算机) 1.2 函 ...
- 你所必须掌握的三种异步编程方法callbacks,listeners,promise
目录: 前言 Callbacks Listeners Promise 前言 coder都知道,javascript语言运行环境是单线程的,这意味着任何两行代码都不能同时运行.多任务同时进行时,实质上形 ...
- 功能间(两个form)数据交互的编程方法
功能间数据交互的编程方法 现在框架具有在两个打开的功能之间进行通讯的机制.通讯是指,一个功能调用另外一个功能的方法,或者传递一些数据,并得到返回结果.比如处置单打开结算单,结算单保存后,将结算单号反填 ...
- Studio 5000编程:一种累计时间的编程方法
前言:在很多项目中,需要累计设备的运行.停机.故障时间,当然实现该功能的编程方法也是多种多样,各有千秋,不过有的方法累计误差会越来越大,比如:在连续任务里用定时器来累计时间,就存在一定的误差.本文分享 ...
- iOS利用block实现链式编程方法(Objective-C链式编程)
objc利用block实现链式编程方法 因为不好读.block和其他语言的匿名函数一样,很多程序员刚开始很难主动去用他. 本文描述block作为属性的实际使用,看懂block,并讲解如何利用block ...
- Matlab并行编程方法1
相信很多朋友在利用matlab进行计算时,会遇到循环次数过大,或者是单次计算量过大的问题,比如需要计算的数值阵列数据量过大,利用传统的编程方式,跑一次程序几个小时,都要等的急死了是不是呢?如果遇到这种 ...
- SQL进阶系列之12SQL编程方法
写在前面 KISS -- keep it sweet and simple 表的设计 注意命名的意义 英文字母 + 阿拉伯数字 + 下划线"_" 属性和列 编程的方针 写注释 注意 ...
- 学习linux/unix编程方法的建议,学习Linux的四个步骤(转)
解答:学习Linux的四个步骤假设你是计算机科班出身,计算机系的基本课程如数据结构.操作系统.体系结构.编译原理.计算机网络你全修过我想大概可以分为4个阶段,水平从低到高从安装使用=>linux ...
随机推荐
- 在 JS 中使用 canvas 给图片添加文字水印
实现说明: 1.先通过 new Image() 载入图片: 2.图片加载成功后使用 drawImage() 将图片绘制到画布上: 3.最后使用 fillText() 函数绘制水印. 下面展示了详细用法 ...
- 一文了解npm install -g和npm install --save-dev的关系
本文分享自华为云社区<npm install -g 和 npm install --save-dev 的关系>,作者: SHQ5785. 一.npm install 本地安装 将安装包放在 ...
- vue2遇到的一些错误
一.VUE中的VUEX如何调用modules里面的mutations和state ...mapMutations("workflow",['setApproverConfig' ...
- Vue——模板语法
Vue.js 使用了基于 HTML 的模板语法,允许开发者声明式地将 DOM 绑定至底层组件实例的数据.所有 Vue.js 的模板都是合法的 HTML,所以能被遵循规范的浏览器和 HTML 解析器解析 ...
- nginx优化实践与验证
nginx优化实践 实践场景1: 单台nginx 2核4G 实践场景2: 三台nginx 2核4G 压测工具:WRK 初始安装的nginx压测: yum install -y nginx 安装WRK压 ...
- iOS 系统级别录屏方式调研
p.p1 { margin: 0; font: 20px ".PingFang SC"; color: rgba(69, 69, 69, 1) } p.p2 { margin: 0 ...
- unaipp 发送验证码倒计时
view代码 <view class="margin-top" @tap="getCheckNum()"> <view class=" ...
- Excel相关技巧
(1)如何实现EXCEL某个单元格满足条件整行变色? 链接:https://jingyan.baidu.com/article/75ab0bcba47c19d6864db2cf.html (2)获取表 ...
- Adobe软件资源 PS PR AE等等
整理了一波Adobe软件,19年20年21年Mac版本的都有,关注Rand_cs即可领取
- 剑指Offer-49.把字符串转换成整数(C++/Java)
题目: 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数. 数值为0或者字符串不是一个合法的数值则返回0 输入描述: 输入一个字符串,包括数字字母符号,可以为空 输出描述: 如果是合法的 ...