Best practice

Best practice notes and information related to Xbase++
I Love Xbase++ (ILX)
The portal for Xbase++ developers worldwide
Steffen F. Pirsig
3 min read
Views
508
Reaction score
1
Introduction to Software Modernization Today's modernization of legacy software systems has become a critical decision for any organization. The choice between software migration and re-implementation is a strategic one, each with distinct advantages and challenges. This discussion is...
Steffen F. Pirsig
4 min read
Views
739
Reaction score
1
In software development, a monolithic object or class refers to a design where a single class performs a variety of functions that could logically be separated. These classes for example handle data access (like database queries), business logic (application-specific rules), and sometimes even...
  • Featured
Steffen F. Pirsig
3 min read
Views
665
Reaction score
1
The re-implementation of existing legacy software systems often faces significant challenges, and understanding these can illuminate why such projects frequently fail. This little write-up is far from complete but tries to create awareness regarding these important and very often underrated...
Andreas Herdt
2 min read
Views
393
Introduction Xbase++ is a versatile programming language that allows developers to create multi-threaded applications easily. In this article, we will explore how to use the Thread class in Xbase++ to create and manage an operating system thread capable of executing different tasks. We will...
Andreas Herdt
3 min read
Views
621
Background The SQL command ALTER TABLE can be used to modify the structure of an ISAM emulated SQL table on the PostgreSQL server. However, in order to preserve the ISAM emulation characteristic, some details have to be taken into account which are described in this article. This article does...
Steffen F. Pirsig
4 min read
Views
691
Background One of the largest differences in how data is managed between SQL and ISAM is how deleted records are handled. In short: ISAM: does mark a record as deleted. This way it is out of scope. To really get rid of the record you need to do a time consuming PACK operation. SQL: does really...
  • Featured
Steffen F. Pirsig
2 min read
Views
709
Background As you may have already realized, a PostgreSQL server or any SQL server in general is a "relatively" complicated story. The reason for that is basically that the server with the planner tries to replace you as a human. In ISAM you have the data model in mind, also the requirements of...
Jeffrey Wulf
3 min read
Views
704
Xbase++ provides INIT procedures, a concepts which allows by a simple declaration of INIT before the procedure keyword to ensure that this procedure is executed before your procedure main is executed. An example is shown below. INIT PROCEDURE startupMyModule() // your code is RETURN...
Andreas Herdt
3 min read
Views
608
Background The PostgreSQL columns of type TEXT and BYTEA allow the storage of large binary data (e.g. PDF documents or images) up to 1GB. If such column types are used in a table their data is accessed like any other data of the record when using the Xbase++ ISAM emulation. With each...
Steffen F. Pirsig
3 min read
Views
672
Very often applications support multiple tenants. A financial accounting solution used by a CPA is a typical example for that. However, there are other scenarios where the ability to switch between several tenants/customers is required. The following note gives an overview about the options with...
Jeffrey Wulf
1 min read
Views
702
Rules: Avoid the need for comments, write clear, readable and self describing code instead Comments never describe the code and its syntax Use comments to compensate for your failure to express yourself in code properly. Do not write informative comments such as: // returns normalized value...