Articles

I Love Xbase++ (ILX)
The portal for Xbase++ developers worldwide
Steffen F. Pirsig
4 min read
Views
429
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...
Frank Grossheinrich
4 min read
Views
72
Reaction score
1
You often read "ISAM" in newsletters and other communications from Alaska Software. And many people have heard it or know it from the inside out, but someonly have a vague idea of what it means. If you belong to this group, then it's worth reading this short article. The good news first: if you...
Frank Grossheinrich
1 min read
Views
187
Please log in to the ASI portal. Note: The ASI portal requires the same log in credentials as the ILX portal. If you never have logged in to ILX please see this article which describes how to initially log in and get your credentials. As soon as you successfully logged in to ASI portal you...
Frank Grossheinrich
1 min read
Views
193
The ILX Portal is very important and indispensable for an Xbase++ developer for several reasons. ILX ("I Like Xbase++") is the knowledge database all about Xbase++. Here you will find short tips & tricks for Xbase++, but also detailed in-depth articles on many topics such as SQL with Xbase++...
  • Featured
Steffen F. Pirsig
8 min read
Views
339
Prolog Using many small services, known as microservices, is a popular way to build applications. But, working with microservices can be very complicated. However, the complexity arises not from the Xbase++ business logic code - a domain in which an Xbase++ developer is highly proficient - but...
  • Featured
Steffen F. Pirsig
3 min read
Views
297
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...
Anna Hristova
2 min read
Views
182
Introduction: In this how-to article, we will explore how to efficiently process CSV data using SQLite. Subsequently, we'll demonstrate how to access SQLite databases using the USqlStatement class to execute arbitrary SQL commands. Prerequisites: Before we dive into the process, make sure you...
  • Featured
Steffen F. Pirsig
4 min read
Views
681
Background Microservices architectures consist of loosely coupled, reusable, and specialized components that often operate independently. Microservices also use a high degree of cohesion, also known as bounded context. Bounded context refers to the relationship between a component and its data...
Andreas Herdt
2 min read
Views
199
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...
Anna Hristova
3 min read
Views
315
Introduction Xbase++ is a development tool that offers Xbase Parts for building Windows Desktop applications. One feature that Xbase++ programmers can leverage is the ability to configure these Xbase Parts through subclassing. Not only does this approach allow for personalized coloring and UI...
Steffen F. Pirsig
4 min read
Views
547
Reaction score
1
Background In the realm of software development, keeping a software product current, reliable, and robust requires a strategic approach. Alaska Software, the vendor of the programming language and development platform Xbase++, has adopted a strategy known as Continuous Delivery to maintain the...
Steffen F. Pirsig
4 min read
Views
893
Introduction Composition and inheritance are two major concepts in object-oriented programming (OOP) that allow for creating complex types. Inheritance is a mechanism where you can derive a class from another class for a hierarchy of classes that share a set of variables and methods. The...
Till Warweg
2 min read
Views
271
Background The XbpHtmlViewer2 class has a data folder that serves as an integral mechanism for session isolation. This feature is critical for applications using the class, which internally relies on the Microsoft WebView2 runtime. By ensuring that every process employing XbpHTMLViewer2...
Steffen F. Pirsig
3 min read
Views
155
Prolog In the realm of software development, it's imperative for companies to adopt versioning strategies that are both meaningful to developers and aligned with modern development methodologies. Alaska Software, as the vendor of the Xbase++ platform, has seamlessly integrated these...
Steffen F. Pirsig
3 min read
Views
684
Introduction Interfaces in Object-Oriented Programming (OOP) play a critical role in designing robust software. In the following we will try to explain the benefits of using interfaces and how to implement them in Xbase++. Generally, benefits of using interface are: Abstraction: Interfaces...
Anna Hristova
3 min read
Views
438
In this article we will have a deeper look into how to implement different types of REST APIs using Xbase++ 2.0. We assume that a user management REST API exposes two endpoints.: 1. "POST /users" - This creates a new user. For this request, we need to send user data in the request body. The API...
Anna Hristova
2 min read
Views
419
Let's start and create an example where we'll retrieve posts from a public REST API, such as JSONPlaceholder which is a free online REST API that you can use for demonstration and testing purposes. Here's the URL endpoint to retrieve posts: https://jsonplaceholder.typicode.com/posts Now, let's...
Andreas Herdt
3 min read
Views
383
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...
Andreas Herdt
4 min read
Views
339
Overview In this article it is shown how the class AesCrypt() can be specialized to implement some padding schemes for encrypting and decrypting messages. Background The Advanced Encryption Standard (AES) standard is a block cipher algorithm that only allows for the encryption of messages in the...
Till Warweg
4 min read
Views
485
The Asset Manager integrated into the Xbase++ Workbench provides an easy interface for viewing, (de-) installing and updating the assets being used in your projects. Behind the scene, the Asset Manager in conjunction with the Workbench, performs the following tasks for you: Manage asset...