临渊羡鱼,不如退而结网。

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框架的特色功能:

四大王炸级别的特色功能,完全创新,暂时没有发现其它框架有类似功能。

1、可自行扩展的SVG功能库
2、可自行扩展的多线程功能库
3、可自行扩展的代码生成工具
4、可自行扩展的增强型DataWindow
 

详细说明请关注《PowerBuilder现代编程方法X》2-5章

 

如果你想用PowerPlume提升生产力

PowerPlume框架需要投入的工作:

与其它框架不同,你除了等待作者发布新版本之外,还可以自行扩展框架。

1、一句话实现个性化的自绘界面
2、一句话实现个性化的多线程功能库
3、一句话实现个性化的反破解方案
4、一句话实现个性化的Web界面框架

详细说明请关注《PowerBuilder现代编程方法X》7-10章

 

如果你想用PowerPlume脱离PB环境

PowerPlume框架支持你开发现在PB并不支持的应用:

这可能是用户对PB最大的失望和期待,不用再等万年不变的PB作出改变了,我们可以用更好的方式来优雅的转型。

1、首先,多线程功能库的升级,会逐步替代PBVM的功能。
2、然后,代码生成工具的升级,可转换程序为跨平台Go语言代码。

2、再者,Web界面框架的升级,可将程序映射为网页界面。

4、最后,SVG功能库的自绘功能,是升级为移动应用APP的基础。

所以,最终能摆脱PB的限制,生成Web应用;Windows、Linux、macOS桌面应用;iOS、Android移动应用;

 

详细说明请关注《PowerBuilder现代编程方法X》12-15章

 
(本章完 )
 

PowerBuilder现代编程方法X01:PowerPlume的X模式的更多相关文章

  1. Atitit 编程语言编程方法的进化演进 sp  COP ,AOP ,SOP

    Atitit 编程语言编程方法的进化演进 sp  COP ,AOP ,SOP 1.1.  Sp  oop>>COP ,AOP ,SOP1 1.2. Sp  oop 结构化方法SP(Stru ...

  2. 学习linux/unix编程方法的建议(转)

    假设你是计算机科班出身,计算机系的基本课程如数据结构.操作系统.体系结构.编译原理.计算机网络你全修过 我想大概可以分为4个阶段,水平从低到高从安装使用=>linux常用命令=>linux ...

  3. paip.函数式编程方法概述以及总结

    paip.函数式编程方法概述以及总结 1     函数式编程:函数式风格..很多命令式语言里支持函数式编程风格 1.1      起源 (图灵机,Lisp机器, 神经网络计算机) 1.2      函 ...

  4. 你所必须掌握的三种异步编程方法callbacks,listeners,promise

    目录: 前言 Callbacks Listeners Promise 前言 coder都知道,javascript语言运行环境是单线程的,这意味着任何两行代码都不能同时运行.多任务同时进行时,实质上形 ...

  5. 功能间(两个form)数据交互的编程方法

    功能间数据交互的编程方法 现在框架具有在两个打开的功能之间进行通讯的机制.通讯是指,一个功能调用另外一个功能的方法,或者传递一些数据,并得到返回结果.比如处置单打开结算单,结算单保存后,将结算单号反填 ...

  6. Studio 5000编程:一种累计时间的编程方法

    前言:在很多项目中,需要累计设备的运行.停机.故障时间,当然实现该功能的编程方法也是多种多样,各有千秋,不过有的方法累计误差会越来越大,比如:在连续任务里用定时器来累计时间,就存在一定的误差.本文分享 ...

  7. iOS利用block实现链式编程方法(Objective-C链式编程)

    objc利用block实现链式编程方法 因为不好读.block和其他语言的匿名函数一样,很多程序员刚开始很难主动去用他. 本文描述block作为属性的实际使用,看懂block,并讲解如何利用block ...

  8. Matlab并行编程方法1

    相信很多朋友在利用matlab进行计算时,会遇到循环次数过大,或者是单次计算量过大的问题,比如需要计算的数值阵列数据量过大,利用传统的编程方式,跑一次程序几个小时,都要等的急死了是不是呢?如果遇到这种 ...

  9. SQL进阶系列之12SQL编程方法

    写在前面 KISS -- keep it sweet and simple 表的设计 注意命名的意义 英文字母 + 阿拉伯数字 + 下划线"_" 属性和列 编程的方针 写注释 注意 ...

  10. 学习linux/unix编程方法的建议,学习Linux的四个步骤(转)

    解答:学习Linux的四个步骤假设你是计算机科班出身,计算机系的基本课程如数据结构.操作系统.体系结构.编译原理.计算机网络你全修过我想大概可以分为4个阶段,水平从低到高从安装使用=>linux ...

随机推荐

  1. C语言:算法题判断是否有效字符({[]})---括号

    给定一个只包括 '(',')','{','}','[',']'的字符串 s ,判断字符串是否有效. 有效字符串需满足:                  左括号必须用相同类型的右括号闭合.       ...

  2. Kubernetes 数据存储:从理论到实践的全面指南

    本文深入解析 Kubernetes (K8S) 数据存储机制,探讨其架构.管理策略及最佳实践.文章详细介绍了 K8S 数据存储的基础.架构组成.存储卷管理技巧,并通过具体案例阐述如何高效.安全地管理数 ...

  3. PVT:特征金字塔在Vision Transormer的首次应用,又快又好 | ICCV 2021

    论文设计了用于密集预测任务的纯Transformer主干网络PVT,包含渐进收缩的特征金字塔结构和spatial-reduction attention层,能够在有限的计算资源和内存资源下获得高分辨率 ...

  4. feign入门

    .net core: feign.net是一个spring cloud feign组件的c#移植版 https://github.com/daixinkai/feign.net 在.net core ...

  5. P1746 离开中山路

    传送锚点:https://www.luogu.com.cn/problem/P1746 题目背景 <爱与愁的故事第三弹·shopping>最终章. 题目描述 爱与愁大神买完东西后,打算坐车 ...

  6. mac for docker访问宿主机服务

    转载链接 https://blog.csdn.net/weixin_33860528/article/details/91461648

  7. Android 13 - Media框架 - 异步消息机制

    关注公众号免费阅读全文,进入音视频开发技术分享群! b7693967-317e-4c46-96d3-d40d9d87e382 由于网上已经有许多优秀的博文讲解了Android的异步消息机制(ALoop ...

  8. kubernetes(k8s)

    应用程序部署的演变过程 在部署应用程序的方式上,主要经历了三个时代 传统部署 互联网早期,会直接将应用程序部署在物理机上 优点: 简单,不需要其他技术的参与 缺点: 不能为应用程序定义资源使用边界,很 ...

  9. bpmn.js

    在 BPMN.js 中,$inject 属性通常用于声明依赖注入的模块列表.这些模块会在创建对象实例时由依赖注入框架(如 AngularJS)提供.以下是在 BPMN.js 中常见的一些 $injec ...

  10. 新手入门html

    网页的组成:结构 表现 行为 Web标准: 结构  表现 行为 Html  css  js Html和css 是w3c制定标准  js是ECMA制定标准 HTML:指的是超文本标记语言 文件命名的规范 ...