Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

C++ Builder or Visual Studio [closed]

I own a software development company. We develop software for other companies who brand under their name/titles. And we also have a couple self branded titles in the Accounting/ERP market. Our accounting software is roughly 60% of our business and written in C++ Builder.

Those who know, realize C++ Builder has had a very rocky road in changing hands from Borland, to CodeGear, to Embarcadero and possibly a few times in between. C++ Builder has screwed us a number of times on our accounting software. The QuickReports was notoriously buggy, Their XML build description is not tightly coupled to the GUI causing builds to not work -- generally buggy interface.

Over the past 8 years we've steadily made inroads to remove our reliance on the VCL and buggy components however, some 3rd party VCL components are just not easily replaceable still. We use a GRID package from Developer Express - great product.

I'm just about at a crossroads and with the latest version of C++ Builder XE on the market I'm having a hard time justifying the price when you look at the crappy history of this product.

So I'm looking for advice or steps anyone else followed who might be in similar situation and successfully made the switch to Visual Studio.

We've slowly moved most of our application to wxWidgets except for the Developer Express tools. And we've written our own TSQL abstraction we can port as well.

Any thoughts or suggestions? Have you moved your project to Visual Studio or have you played around with the new Builder XE to find many of its previous shortcomings now gone?

Looking for "been there, done that" advice.

like image 264
Eric Avatar asked Nov 20 '10 19:11

Eric


People also ask

Should I use Visual Studio for C?

Yes, you very well can learn C using Visual Studio. Visual Studio comes with its own C compiler, which is actually the C++ compiler.

What is the best C++ Builder?

Embarcadero C++ Builder 11.1 IDE with CLANG C++ compiler Is the best C++ IDE. C++ Builder is the easiest and fastest C and C++ IDE for building simple or professional applications on the Windows, iOS & Android operating systems.

Is C available in Visual Studio?

Visual Studio Code is a lightweight, cross-platform development environment that runs on Windows, Mac, and Linux systems. The Microsoft C/C++ for Visual Studio Code extension supports IntelliSense, debugging, code formatting, auto-completion.


1 Answers

Visual Studio is not really comparable to C++ Builder.

Yes they are both C++ compilers but:

  1. Visual Studio is only RAD when using .NET languages
  2. MFC is 'semi-rad' but does not come close to ease of use of VCL
  3. Visual Studio compiler is better at producing optimized code, but C++ Builder uses Clang which is pretty good
  4. Visual Studio and C++Builder are both standards compliant (CB using Clang-based compilers)
  5. C++ Builder comes with Boost
  6. C++ Builder XE is much better than previous versions (not including Builder C++ 6.0)
  7. You can't beat the RAD tools in C++ Builder for C++ development, nothing comes close

The differences in compilers probably won't hurt you too much for non VCL dependent code. I have a DLL that I compile for clients under VC6, VS2008 and Builder 2010/XE. I have had to toss in a few #ifdefs, but most of them are actually for VC6.

The biggest recommendation I can make is DO NOT MOVE TO MFC, thats where the pain starts.

Think about the training for developers as well. Your developers will become significantly slower at producing working code while learning the idiosyncrasies of a new compiler.

With all that said, when I was given a choice for a client between moving to VS2008/2010 or Builder C++ for a new product, I picked Builder, just for the RAD IDE.

Good luck.

Updated for C++Builder 10.2 (2017):

  1. 32 bit and 64 bit Windows both use Clang/LLVM (as do iOS and Android)
  2. 32 bit and 64 bit Windows both use Boost 1.55
  3. 10.2 is very stable, getting better every release

This still comes up on Google searches, so updated again for Berlin 10.1:

  1. 32 bit and 64 bit code now uses CLANG/LLVM for Windows
  2. 32 bit code for OS X still uses old compiler
  3. Android and iOS compiles use CLANG/LLVM
like image 73
Gregor Brandt Avatar answered Sep 19 '22 14:09

Gregor Brandt