1. Object-oriented programming language
--- (a) PowerBuilder and Delphi both adopt object-oriented programming methods and both provide object-oriented application architectures. The PowerBulder application architecture is called application object (application Object), with an extension of .pbl, and the Delphi application architecture It is a project (PRoject), with the extension .dpr. Delphi provides stronger application architecture. PowerBuilder can compile multiple PBL files into an EXE file by specifying the path of other PBL files for the main PBL file. The advantage of this function is that it can divide a large application into small modules, that is, multiple PBL files, and then merge them. Compile and improve the operation efficiency of the software. Delphi's Project can only be compiled into one EXE file, which is more troublesome for multi-person cooperative development projects. Multiple Projects need to be merged into one Project, which is prone to conflict, unless each Project is compiled into one EXE file.
--- (b) The Object Pascal language provided by Delphi is a standard object-oriented language, while the development language used by PowerBuilder is encapsulated in the object-oriented controls provided by PowerBuilder. Script itself is not an object-oriented language.
--- (c) SQL statements can be embedded at will in PowerBuilder's Script, and it is flexible to use. Using Delphi programming, the SQL language needs to be used with the Tquery component.
--- (d) PowerBuilder can customize functions, Delphi can customize functions and procedures, PowerBuilder does not distinguish between functions and procedures.
--- (e) PowerBuilder and Delphi can call dynamic connection libraries, but Delphi also provides the function of packages, which is more clever than PowerBuilder.
---- 2. Visual component library
--- (a) PowerBuilder and Delphi both provide full-featured, fully compatible with Windows 95 visual components. The use and inheritance of these components greatly reduces the cost of writing and maintaining code. In contrast, Delphi has much more visual components than PowerBuider, with more than 130 components.
--- (b)PowerBuilder provides the functions of user-defined objects, and Delphi provides the functions of user-defined components. PowerBuilder defines properties and possible events for each control and Delphi. The two are similar in this regard. However, PowerBuilder allows users to add user-defined events to existing controls to meet some of the user's special requirements, without defining new user objects, saving workload. Delphi cannot add events to existing components, and can only define new components by inheriting existing components, which is a lot of work.
--- 3. Processing of databases
--- (a) Delphi provides two sets of components, Data access and Data Controls, which are very efficient and fast for standard requirements, and have few program coding. Delphi also has a prominent advantage, that is, after the component parameters are set correctly, you can see the data in the database you want to access. PowerBuilder needs to be compiled and run to obtain data.
--- (b) PowerBuilder's outstanding contribution in handling database applications is the DataWindow. The data window has powerful functions, especially when processing multiple tables at the same time, it seems to be easy to use. The field objects of the Grid type data window of PowerBuilder can not only be embedded in CheckBox, RadioButtons, EditMask, DropDownListBox, but also in DropDownDW. DropDownDW can be a DataWindow of other Tables. This function is very useful. Delphi's DBGrid does not have this function and cannot be embedded in DBEdit, DBListBox, DBComboBox, etc. When Delphi deals with multiple tables, except for the master and slave table processing methods, there are few other methods and poor flexibility.
--- (c) In terms of report processing functions, PowerBuilder seems to be stronger than Delphi. PowerBuilder can embed a DataWindow into other DataWindows. This is related to PowerBuilder's powerful ability to handle multi-reports. When Delphi processes reports, it still uses the master and slave table processing methods.
--- 4. Printing function
--- PowerBuilder's control printing function is powerful. MultiLineEdit, RichTextEdit, and DataWindow all have printing functions, that is, you can print what you see. Except for QuickReport, Delphi has printing function, other components themselves do not have printing function, and they need to be programmed with TPrinter, which is quite troublesome.
--- 5. Statistical analysis
--- In terms of data statistical analysis, PowerBuilder only provides Graph-type DataWindow, which can perform some simple statistical analysis. In addition to the TeeCharts components and QuickReport components that are similar to the Graph-type DataWindow of PowerBuilder, Delphi also provides a Decision Cube component group, which provides multidimensional data analysis capabilities in the cross-analysis tables that are significantly stronger than PowerBuilder.