Five of the best tools for Delphi
Why you need more than an just the IDE
max kleiner
Question:
From time to time (if we have time) I have been asked, which are the best tools beside delphi, for example to design a OO-database or to make calls between instances or units visible.
Answer:
On the other side, it's difficult to find tools we don't know they exists. Anyway, I want to start with that article to make a very short introduction to keep you informed that such best tools with delphi/kylix exist and what they solve.
But before we start, here’s the disclaimer. Each tool is a complex and fully-featured product (not a component), and a review such as this can only scratch the surface, and try to give you a motivation of what the following tools are and what they can do.
By the way, Delphi is not a language it's the product so ObjectPascal IS the language and is getting more and more engineers around the world with the products Delphi, Kylix and Virtual Pascal! ;)
1. Bold for Delphi
The product Bold for Delphi (Enterprise R3.0-D5, release 3.0.1.9), provides a model-driven software development environment for Delphi developers. It means that developers can design their applications using UML (the class-diagram), and Bold will help to build a system right from the model.
Bold is designed to implement 'business object logic’. The point is that many business applications are basically the same: GUI front end, logic-based middle layer, and a database at the back end to make things memorizable. So a lot amount of duplication of design, and probably duplication of code as well. It would be very useful if there was some sort of framework to help you implement multi-tier business solutions.
Bold is that framework and their product recently gained Software Development’s Productivity Award, and it is being used in the Swedish (it's a Swedish Product) and French parliaments, US government departments, also the Swiss tax authorities among many others.
http://www.boldsoft.com
2. ModelMaker
ModelMaker 6.1 represents a new way to develop classes and component packages for Delphi (1-6). ModelMaker is a two-way class tree oriented productivity, refactoring and UML-style CASE tool specifically designed for generating native ObjectPascal code (in fact it was made using Delphi and ModelMaker).
Delphi's ObjectPascal language is fully supported by ModelMaker. From the start ModelMaker was designed to be a smart and highly productive tool.
It has been used to create classes for both real-time / technical and database type applications. ModelMaker has full reverse engineering capabilities.
It supports drawing a set of UML diagrams and from that perspective it looks much like a traditional CASE tool. The key to ModelMaker's magic, speed and power however is the active modeling engine which stores and maintains all relationships between classes and their members.
A unique feature, currently not found in any development environment for Delphi, is the support for design patterns. A number of patterns are mplemented as 'ready to use' active agents. It's the 100% UML-Tool which works with so tightless with Delphi.
http://www.delphicase.com
3. AQTest
AQtest, the complete application testing system from AutomatedQA, means automated support for functional, unit, and regression testing in one easy to use and totally flexible package. AQtest brings testing out of the Dark Ages (that's what they say;).
AQTest is the only true test automation and management tool for Delphi applications (That's true). It is written in Delphi and boasts several industry firsts, especially a uniquely flexible, user-oriented approach.
With AQtest, you test your own way, with scripts or Delphi code written your own way, and test reports organized to your own needs.
AQtest gives external test scripts access to all onscreen VCL elements, with their properties and even their methods. Optionally, it gives access to all published elements of the Delphi application under test, and optionally again it gives scripts practically the same access to application internals as the Delphi IDE has.
Start using AQtest, and you'll be able to make every test run into a contribution to development. AQtest can keep a project on schedule and on spec, the team confident and the work 100% productive.
For example DelphiScript support is built into AQTest.
It's a highly recommended tool that comes out of the box with 19 profilers (We use it). The two that we are interested in most, is "listing unused units", and "identifying who calls what method" are included. (The method call profiler display its info through a diagram.
so a fantastic cool tool.;)
http://www.automatedqa.com
4. MetaBASE
MetaBASE makes it possible for the Delphi development platform to access the relational data model in a 100% object-oriented manner. MetaBASE supports the program development process on all common SQL servers, such as Oracle, Sybase, Watcom and InterBase.
The metalayer enables an easy port of applications between different 'flavors' of RDBMS. The client developer always has full details of the underlying data structure. High speed application development is ensured, even when the data model reaches an acute level of complexity.
MetaBASE provides Visual Components (VCLs) that are data model aware. The data model itself is stored as an object stream and can be accessed throughout the application's development and runtime phase. MetaBASE allows the programmer to ?Drag and Editor Drop" entities, relations, attributes and their extensions as indices into the Delphi environment.
This is accomplished with almost zero manual code writing. Application development has reached a new dimension and the programmer can
concentrate on the 'real' programming task.
http://www.gssoft.ch
5. PasScript
PasScript is an interpreter of a vast subset of the OP (ObjectPascal) language which supports all OP data types except interfaces.
This subset was extended by the Poly data type that allows you to operate with dynamic data structures (lists, trees, and more) without using pointers and apply Pascal language in the Artificial Intelligence data domain with the same success.
But what are differences between PasScript and another Pascal scripting engines?
PasScript supports more wide subset of the OP language. You can use such concepts as units, default parameters, overloaded routines, open arrays, records, sets, pointers, classes, objects, class references, events, exceptions, and more in a script. PasScript syntax is 100% compatible
with OP.
All calling conventions register, pascal, stdcall, cdecl, safecall are supported Script-defined handlers for Windows messages Script-defined callback functions.
For example, you can define WindowProc function directly in a script More flexible importing Delphi classes. You can use instances of any Delphi class in a script create new instances of a Delphi class in a script and destroy them create new PasScript class in a script which inherits a Delphi class. More wide possibilities regarding the event handlers. You can create script-defined event handler for Delphi defined event and vice versa. You can pause, resume and terminate scripts and PasScript allows you to control an OLE Automation server.
The TPasScript component allows you to embed the interpreter into your Delphi, Kylix or C++ Builder application, so you can extend and customize the application without having to recompile it.
http://users.ints.net/virtlabor/passcript/
To be continued...
本文地址:http://com.8s8s.com/it/it5787.htm