[Lazarus] Delphi XE2 uses FPC, plus VCL just not portable

Graeme Geldenhuys graemeg.lists at gmail.com
Mon Aug 8 00:06:58 CEST 2011


On 7 August 2011 22:30, Felipe Monteiro de Carvalho wrote:
>
> * Borland/Embarcadero -> In the last 10 years they started multiple
> failled products (Kylix, Delphi.NET), added 1 major feature to the VCL
> (Unicode), bought a couple of other projects (Delphi for PHP) and
> managed to reduce themselves from a major player to a minor one which
> isn't even in the news usually.

I'm not a huge Delphi fan these days, but I can say in Embarcadero's
defense, all the above was Borland's fault. Then CodeGear which didn't
produce much. It's only since Embarcadero's took over that Delphi is
building up steam again and getting some direction.

What is Embarcadero bringing to the table in the XE2 release?

Executive Summary
---------------------------
    * 64-bit support (finally)
    * FireMonkey – a scalable vector graphics based GUI framework
exploiting GPU capabilities for hardware accelerated cross platform
GUI’s.
    * Cross-Platform support – Target Win32 and Win64 with
single-source VCL applications or Win32, Win64 and MORE using
FireMonkey.
    * iOS support for native code FireMonkey apps !! – Yes folks – use
Delphi to build iPhone and iPad apps that even Steve Jobs will be
happy to have in his Store!
    * LiveBindings – a way to create ‘live” relationships not just
between objects but between individual properties of objects.
    * Native Android apps – using PhoneGap in RadPHP
    * Native Android apps – to come in the future for Delphi (as well as Linux)
    * DataSnap client proxy generation – for Android, .NET,
Objective-C, Blackberry, iOS etc etc
    * Starter Edition will be available right from the start along
with Pro, Enterprise and Architect.
    * ALL platforms supported by the cross-platform capabilities will
be in ALL editions, including Starter!
    * Many other VCL improvements

 [The above list is courtesy of:  http://www.deltics.co.nz/blog/?p=735 ]

No matter how you look at it, that is an impressive list of new features.


> If Qt did it, why can't they do it to? It's just a question of adding
> more APIs for the missing functionality which people were completing

No, it's because Qt was designed from the start and from the ground up
to be a cross-platform toolkit. That makes a huge difference. VCL was
designed for Win16 (and was inherited from TP for DOS), then molded to
Win32. It has so many Windows-ism in it's core, and THAT is what makes
VCL so hard to port. Many "features" in VCL just makes no sense on
other non-windows platforms.


> There is nothing special in the VCL that stops it from being a
> cross-platform GUI toolkit.

Lots of things that are Windows specific it what stops it. EMB can't
change or remove those Windows features because that will break
thousands of existing Delphi programs. So what was EMB left with -
they had to start something new, with no legacy code to worry about.
That is what there cross-platform toolkit is built on.

I guess you just can't see the difference between a company that needs
to support tens of thousands of paying customers, compared to a mickey
mouse open-source project with no recourse for backward compatibility.


> OpenOffice is pretty much a clone of MS Office 97.

Please get your facts right. OpenOffice originated from StarOffice,
which was started in 1984 running on computers like the Commodore 64.
I remember running StarOffice under OS/2 2.1 & 3.0 (around 1990-1993).
 All this is long before the release of MS Office 97. Then in 1999 Sun
Microsystems bought StarDivision and rebranded StarOffice as
OpenOffice.

For more detail see:  http://en.wikipedia.org/wiki/StarOffice


> WindowState: wsFullscreen

A recent addition to LCL I believe. VCL didn't need it, because you
just used the Win API do do it. It was pretty simple to use too.


> TDBNavigator Option to have focusable buttons (useful for mobiles,
> accessibility)

:-) Introduced 3 or 4 days ago, and with a massive amount of possible
problems - as Michael van Canneyt pointed out to you.

A product/toolkit worth using is more than just its number of
features. Stability plays a huge roll too. Lazarus is broken even
second day. Working features break between every release. EMB can't
afford such problems with Delphi.


-- 
Regards,
  - Graeme -




More information about the Lazarus mailing list