Delphi Components Development

Delphi components are bricks of your Delphi application. Delphi is based on components development methodology. That’s why RAD Studio is a Rapid Applications Development Studio. Using Delphi and C++ Builder you can develop your applications as fast as possible, because a huge part of your code has been developed for you before by Embarcadero or some 3rd-party vendors and components developers.

When do you need components development? 

You can develop your application just using existing components or any commercial components, but sometimes you may need to create your own ones. It may happen in the following situations:
  • If you want to divide your application by bricks and to get them developed separately by different developers; 
  • If you want to provide solutions for other developers – you can deliver components with a source code or in a form of compiled packages – for commercial purposes, and to get these solutions protected from decompilation; 
  • If you want to have a possibility to reuse code and app logic in different applications; 
  • If you need to inherit new components from parent classes and extend or change some functionality.
Delphi components development process has much in common with Delphi app development, but they have a couple of differences: 
  • Delphi component is not an application – you have to inherit it from some parent class or TObject; 
  • Debug process is different – you cannot execute a component source code like regular executable – you should have an additional application which will use your component. 

Types of Delphi components 

By type of representation: 
  • Visual components – components which you can put to the form and later they will be seen as some images, control or other visual elements; 
  • Non-visual components – components which you can put to the form but they won’t have any UI, e.g. socket components, HTTP requests, REST, DB access components, etc. 
By type of framework we can have: 
  • VCL components – components for Windows native development; 
  • FMX components – components for cross-platform development; 

Components migration process 

For us, Delphi components migration process has the same importance as Delphi components development, especially if we are talking about their migration from legacy Delphi versions to up-to-date ones. If you want to jump through a lot of Delphi versions – be ready that a new version of your components won’t be backward compatible with your current version. During migrations we may face the following problems: 
  • A new version of a component is missed at all or a components package or product structure was changed, and now we have to use a totally different class or component. In this case, we have to re-write a code; 
  • Component methods or properties were changed. In this case, we can try to migrate a legacy version to an up-to-date one. We have to re-write the source code anyway; 
  • Sometimes components package can be missed for the new Delphi version at all – it may happen  if a vendor closed its business or stopped the development of a necessary components product. In this case, we have to develop necessary functionality from scratch or try to add the support of a new Delphi version for the component ourselves (if we have a  source code, of course); 
  • After a deep component customization, inheritance of some legacy components and  their migration, a customized component package may stop working – in this case, again, we have to try to add compatibility of the customization with a new version of parent component classes. 
We do not want to say that Delphi components development and components migration are simple  or, vice versa, complicated processes. In any case, you just need to select appropriate professionals to perform each task. 

Get a free expert consultation about the Delphi Components Development services.

At Softacom, we provide the following components development services: 
  • Delphi/C++ Builder components development for your commercial products or for your software; 
  • Migration of Delphi/C++ Builder components from legacy versions to up-to-date RAD Studio versions; 
  • Enhancement, re-engineering and support of your Delphi/C++ Builder components; 
  • Other services related to Delphi components development. 
← Delphi Development