I first discovered xBase ++ way back in 1997 and even purchased the Early Experience Version With quite a bit of effort (then), I did managed to create a 32-bit EXE but was put off by the fact that the resultant EXE was huge and for it to work, one needs to install quite a number of DLLs. However, I must say that I was impressed with the documentation.
Relevant Quotations from Guest Book
1. " I have being using xBase++ for about 10 years now. My conclusion is that this is a better CLIPPER than CLIPPER multiple folds. Clipper is Alive and WELL. "
Owoyemi Joseph Olusegun
NIGERIA, Kaduna, 25/2/09
Owoyemi Joseph Olusegun
NIGERIA, Kaduna, 25/2/09
2. "Then came Xbase++, probably in 1998, and then I was filled with joy that this is exactly I wanted. Straight forward I subscribed to it, and continue to subscibe till date, though do not plan in the future. After few months I could convert my applications running on Xbase++. I was amused by the multi-threading modal and its capabilities to mix GUI and CUI elements on one screen. It paved the way for Clipper code to be migrated to Windows world. I was/is a dire fan of its XbpParts* class modal which implemented a standard way of objecthirarchy and parameters. I also put my applications in production sites but due to many technical difficulties I had to withdraw them and reinstalled Clipper compilations. I agree that those were the days when Xbase++ was evolving. I could have concentrated on Xbase++ IF I could not came face-to-face with xHarbour... "
Pritpal Bedi, 24/2/09
3. Steven,
I will have to say how very disappointed I was with your xBase++. I cost me > $AU1300 back in about 2001 and was nothing but heartache. After 10 years as a productive Clipper programmer, feeling like I could write anything, I read the marketing blurbs and spent my hard earned cash on a *DUD*. It was version 1.3 and after trying for several months to get it to behave - I wasn’t even using the GUI - I just gave up. No chance of being able to upgrade to a later version without *MORE* money being required (aka a "subscription"). I actually threw out the Packaging / CD only last month as it was only gathering dust. (Have a look - I bought it from "Aeronaut Industries")
Luckily I found xHarbour and now I’m firmly in the that camp. It does what I need (5 times faster than Clipper) and thanks to the GTWVW crew, I hardly need to change anything. Thanks to everyone working on the project. Once again I think I can write "anything" again.
I’m not sure what all the noise is about MultiThreading but I’m happy with the performance of my ST applications on xHarbour. My opinion is that if you need MT style performance then you are better porting the DB sections of your code to SQL. Once that is done then 99% of applications are just display / GUI code. If there are any issues with performance with this end then
1. Just let Moores Law take effect (the latest processor will be twice as fast in 2 years time!)
2. Figure out why its slow and then fix it! xHarbour gives you the code so at least you have a chance.
Sorry to be negative about xBase++ but that was how it was.
I will have to say how very disappointed I was with your xBase++. I cost me > $AU1300 back in about 2001 and was nothing but heartache. After 10 years as a productive Clipper programmer, feeling like I could write anything, I read the marketing blurbs and spent my hard earned cash on a *DUD*. It was version 1.3 and after trying for several months to get it to behave - I wasn’t even using the GUI - I just gave up. No chance of being able to upgrade to a later version without *MORE* money being required (aka a "subscription"). I actually threw out the Packaging / CD only last month as it was only gathering dust. (Have a look - I bought it from "Aeronaut Industries")
Luckily I found xHarbour and now I’m firmly in the that camp. It does what I need (5 times faster than Clipper) and thanks to the GTWVW crew, I hardly need to change anything. Thanks to everyone working on the project. Once again I think I can write "anything" again.
I’m not sure what all the noise is about MultiThreading but I’m happy with the performance of my ST applications on xHarbour. My opinion is that if you need MT style performance then you are better porting the DB sections of your code to SQL. Once that is done then 99% of applications are just display / GUI code. If there are any issues with performance with this end then
1. Just let Moores Law take effect (the latest processor will be twice as fast in 2 years time!)
2. Figure out why its slow and then fix it! xHarbour gives you the code so at least you have a chance.
Sorry to be negative about xBase++ but that was how it was.
Tony Glynn, 9th March 2009
CCH : To be fair, I have not really looked at it since. Anyway, to present an alternative to Harbour and xHarbour, I have republished here the relevant info...
Direct from http://www.alaska-software.com
Developing applications in Clipper was productive but now Clipper means legacy. With Xbase++ you will get your language of choice – Clipper – with technology of Alaska Software to give developers unmatched compatibility, performance and features. In addition, Xbase++ offers Graphical User Interface programming and multi-threading in a unique easy way.
The best compatibility
Xbase++ was designed to fully support Clipper features like preprocessor, code blocks, macro-evaluation, functions and commands, and to transform them to the world of 32-bit computing. Xbase++ provides a unique three-tier architecture in language for swift and effective application development. Whether you use commands or functions, the compiler transforms your code into the objects you need. And naturally the whole process remains ”hidden” from view. This has the great advantage that all features of the Xbase++ runtime library are realized using platform independent objects.
Xbase++ was designed to fully support Clipper features like preprocessor, code blocks, macro-evaluation, functions and commands, and to transform them to the world of 32-bit computing. Xbase++ provides a unique three-tier architecture in language for swift and effective application development. Whether you use commands or functions, the compiler transforms your code into the objects you need. And naturally the whole process remains ”hidden” from view. This has the great advantage that all features of the Xbase++ runtime library are realized using platform independent objects.
The Xbase++ compiler identifies a bunch of more errors than Clipper and increases this way productivity and quality of your projects. It also generates fast 32-bit native code, which allows the creation of native PE executables (EXE) and dynamic-link-libraries (DLL). Because of its true 32-bit architecture, Xbase++ applications can easily be deployed as CGI programs supporting a wide range of Web-Servers.
Easy Graphical User Interface programming
Over 40 powerful XbasePARTS ensure that your GUI application will be able to handle the job at hand – both now and in the future. XbasePARTS provide the GUI controls used to develop state-of-the-art GUI applications without any need to deal with the complexities of the underlying operating system.
You can use the FormDesigner to design your dialogs visually with live-data from a database and let then the FormDesigner generate the source code for you. Besides powerful GUI applications, Xbase++ supports 32-bit console applications (text-mode) including the widely used @SAY/GET, PROMPT and BROWSE commands/functions.
In addition via its Hybrid Interface, Xbase++ allows the simultaneous use of text and graphical elements. You can instantly reuse your @SAY/GET dialogs and add XbasePARTS to them. For the very first time, you can now improve the look and feel of your applications with only minor source code changes. This also guarantees a trouble-free transition to graphical user interface programming.
Increase productivity with object-oriented programming
XbasePARTS – also GET and TBrowse – are true objects in the object-oriented programming model of Xbase++. This substantially increases the reusability of your existing work. The sophisticated OOP model of Xbase++ includes multiple inheritance, encapsulation, polymorphism, automatic synchronization between different threads, access/assign variables and allows the creation of classes at runtime to fully support the dynamics of the language.
XbasePARTS – also GET and TBrowse – are true objects in the object-oriented programming model of Xbase++. This substantially increases the reusability of your existing work. The sophisticated OOP model of Xbase++ includes multiple inheritance, encapsulation, polymorphism, automatic synchronization between different threads, access/assign variables and allows the creation of classes at runtime to fully support the dynamics of the language.
Roll your own object-oriented client/server database
Xbase++ accesses database with DatabaseEngines (DBEs). Those included in the development package – DBF, FOX, NTX, CDX, SDF and DEL – offer an unprecedented level of flexibility. For example, Xbase++ makes it possible to create an index for a SDF file and carry out a search within the SDF file.
Xbase++ accesses database with DatabaseEngines (DBEs). Those included in the development package – DBF, FOX, NTX, CDX, SDF and DEL – offer an unprecedented level of flexibility. For example, Xbase++ makes it possible to create an index for a SDF file and carry out a search within the SDF file.
The FOX DatabaseEngines does support blobs and in conjunction with the persistence of all data-types of Xbase++ you can store and retrieve objects. Using DatabaseEngines, such as the ADS-DBE (Advantage Database Server), you are now capable to save customer-objects in a client/server database and this way rolling your own object-oriented client/server database.
All in one…
The Xbase++ development package includes anything you need to develop and deploy professional 32-bit database applications. Besides the 32-bit native code compiler, a source-code debugger to track down errors, a FormDesigner to visually design GUI Forms and Resource Compiler to bind bitmaps and Icons to your application are included.
The Xbase++ development package includes anything you need to develop and deploy professional 32-bit database applications. Besides the 32-bit native code compiler, a source-code debugger to track down errors, a FormDesigner to visually design GUI Forms and Resource Compiler to bind bitmaps and Icons to your application are included.
The ProjectBuilder manages the compile and link cycle of your projects and automatically generates the dependencies to track your changes.
And at its best, all applications developed with Xbase++ are free of any runtime fees; shareware products can be developed and distributed as well.
Technical Data:
Compiler and Linker
Language
DatabaseEngines
- Conditional compilation with built-in preprocessor
- Supports OEM and ANSI source code files
- Different warning levels at compilation to develop error free applications
- Exhaustive error recognition at compile-time – not just at runtime
- Automatic support for mathematical coprocessor
- Generates 32-bit multi-threading ready native code
- Supports OMF and COFF object-file formats
- Creates EXE or DLL files
- Applications are royalty-free
Language
- Industry-standard Xbase language
- 100% Clipper language compatible
- Support for all Xbase data types (Logical, Numeric, Character, Date and Array), objects and code blocks as well
- Multi-dimensional arrays without any restrictions in size and dimension
- Length of a character string is limited only by the operating system
- Variable types are PRIVATE, PUBLIC, LOCAL and STATIC
- Directly access DLLs, Window API calls
- All data types are persistent – even objects – and can be stored to and retrieved from external storage
- Object-oriented programming model with multiple inheritance, encapsulation and polymorphism
- Intelligent multi-threading, all values are thread-safe
- STATIC and PUBLIC variables are automatically synchronized between different threads
- 50 ready to use components/classes to enhance productivity and reuse
DatabaseEngines
- CORBA 2.0 based Data-Access-Middleware
- Support of long filenames and UNC naming conventions to access remote files
- Dynamic load/unload of DBEs at application runtime
- The same command/function for all DBE, no code changes neccessary to support the underlying DBMS
- Clipper compatible DBFDBE and NTXDBE to support concurrent operations between Xbase++ and Clipper
- Visual-FoxPro 3.0/5.0 compatible FOXDBE and CDXDBE to support concurrent operations between Xbase++ and Visual-FoxPro applications
- SDF and DEL DatabaseEngines to support different data import and export formats
- Support for DatabaseEngines to access Advantage Database Server or SQL DBM systems
No comments:
Post a Comment