PowerBuilder初学者问题

con*_*att 3 powerbuilder

我作为入门级开发人员在一家公司工作.我很难绕过PowerBuilder的概念.有什么好的教程/建议吗?

Ber*_* Dy 11

嗯,如果我能重新学习PB,我该怎么做?

  1. 首先对SQL有一个健康的了解.如果您的应用程序正在访问数据库,那么PB非常擅长,但是当我年轻时不能很好地理解SQL会导致糟糕的决策.编写良好的SQL将帮助您进行应用程序分区,性能和逻辑集中.我发现,充分利用SQL可以显着减少"狡猾的cobble-on PB客户端代码"的数量,这些代码往往聚集在通常由经验不足的开发人员编写的数据窗口代码周围.
  2. 通过对SQL的充分理解,您应该对结果集有一个健康的理解.这是欣赏数据窗口和数据存储的强大功能的一个重要部分.在PB中,数据窗口就是一切.我首先将数据窗口简单地用作报表制作者,以便将它如何检索数据,以及它为图形显示控制提供的功能.
  3. 开发PB脚本的知识.这并不难,但它有一些怪癖.了解如何使用PB脚本操作数据窗口,如何使其与其他控件交互.
  4. Sybase提供PB类.参加其中一门快速课程,了解如何在该工具中完成工作.如果你的公司想要你学习这个但是太便宜而无法支付专业培训......你可能想重新考虑你的工作地点.对员工进行投资是将优秀雇主与平庸雇主分开的原因.
  5. 如果您了解面向对象,那将有助于您编写一个可能更好,更易于维护的应用程序.即使您只是能够对现有应用程序进行拼凑(欢迎来到我的世界),那么该应用程序的未来增强功能可以设计为引入更好的方法和更少的复杂性.你不能一夜之间修复旧东西,但你可以确保新东西产生的生产支持比旧东西少; 如果您可以在保持支持需求水平的同时增加应用程序的功能,那么在困难的情况下您至少获得了一点胜利.
  6. 如果您继承了现有的应用程序,那么提供生产支持是获得应用程序广泛(如果是随机)曝光的好方法.如果它是具有任何年龄的传统PB应用程序,它可能设计不佳,编写不良,文档记录不足,而且不是非常面向对象.在尝试重构之前,使用应用程序构建体验并熟悉它; 它中可能存在各种隐藏的依赖关系.如果你有幸从头开始,那么制作一个原型并从中学习如何通过GUI对象来维护一堆废话,这是一堆乱七八糟的代码.小心避免围绕数据窗口内置的并发控制支持进行编码,并避免在脚本中使用大量嵌入式SQL.然后抛弃原型并在PB非可视对象甚至数据库存储过程中整合业务逻辑; 您希望将可重用的业务逻辑放在最集中的位置,并且该位置不在窗口上的按钮或自定义事件中.

书籍和教程

  • 目前发行的PB书籍并不多,但如果您正在制作经典的PB,那么Bruce Armstrong 就有一本很好的PB9高级客户端/服务器开发书籍.
  • PB手册有很多信息,如果你使用的是Powerbuilder Foundation Class,它是开源的.您可以在Sybase CodeExchange中获取它.
  • 那里有一些很好的网站.Stackoverflow的用户Terry Voth 非常棒.我也喜欢Ken Howe的PB提示网站.
  • 有一些PB新闻组有很好的信息.和其他资源一样; 谷歌将在这里为您提供很多帮助.
  • PowerBuilder开发者杂志没有像过去那样多的经典PB技巧和示例,但我认为大多数旧内容可能在线提供.

随机的东西

  • 我希望你的商店使用源代码控制.如果没有,请弄明白并继续下去.然后看看PB ORCA Script.我开始使用它来自动化我们的构建,这是一个节省时间.PB9高级客户端/服务器手册中有一章,但CodeExchange也有一些很好的例子.
  • 如果你是新人并且在枪口下,你可能会发现自己多次想到,"我可以通过在这里使用嵌入式SQL语句来轻松获取数据".小心一点; 快速命中,单行,仅检索查询可以正常,但在您的应用程序中滥用嵌入式SQL会使其难以维护.
  • 如果你是新人并在枪口下,你可能会发现自己多次想到,"我可以通过在检索行中输入一些代码或检索结束事件来使数据看起来像我想要的那样".也要小心.检索行逻辑会损害性能.我已经看到检索结束逻辑经常用于进行额外的处理并将数据添加到数据窗口; 作为datawindow原始SQL语句的一部分,这样做要好得多,而不是通过向datawindow控件脚本添加更多内容.
  • 这不仅仅是学习PB.了解您公司的业务并了解您的系统应该提供的帮助.有时,解决方案的复杂性不是通过使用系统自动化来解决的,而是通过让授权方认识到可以首先在业务方面简化流程.
  • 人们对新语言如此着迷; 我不是一个例外,真的想用.Net和其他人做更多.但是,作为开发人员,您的承诺是有所作为的; 你可以用任何语言做很棒的事情,无论是PB还是VB,还是Delphi或.Net.如果有助于他们完成工作,您的选民并不真正了解或关心应用程序的内容.

  • @Sayem,我很高兴事情对你有用.PowerBuilder不容易学习和熟练.我自己喜欢Java,但我决定远离Java,因为我在许多财富100强公司咨询时见过的项目记录.大多数人在严重超出预算后被废弃,很少有人在预算范围内投入生产,而且几乎总是让用户群对交付品不满意.在同一时间框架内,我已经开发了许多"遗留"的PowerBuilder应用程序,这些应用程序已成为关键任务,并且被认为是转换的风险/昂贵. (2认同)