Michael Van Canneyt wrote:
On Mon, 12 Oct 2009, Geoffray wrote:
Hi the list...
You probably don't know me but I'm for years a Lazarus fan.
I have to prepare a conference for February 2010 in my LUG. The main
theme is
to give a good idea of what are Lazarus and Free Pascal with technical
demonstration. This is the easy part... The public will be mainly
Delphi users
(including companies) that want to move from Delphi to Free Pascal.
So I need
help with details about which problems they can meet, the solutions,
supported
feature, and not (yet) supported ones...
Having ported/developed some applications, the main problems when
porting are IMHO:
a) They should not expect to find the same components in Lazarus as in
Delphi.
(This concerns mostly DB components, web components. GUI is mostly
covered)
b) Third-party components are usually not usable.
(unless that company supports FPC, which is unlikely)
c) Cross-platform development means:
- No Windows API. (e.g. the registry).
- SizeOf(integer)<>SizeOf(Pointer)!
- No assembler
And under no circumstances promote '1 source for both Delphi/Lazarus'
because that is a recipe for problems :(
+1: I agree so much on that. Port the code to Lazarus, and then stay
there, currently! It's very possible to have back-end (no GUI)
components that are delphi- and lazarus- compatible, but then you're
forgoing some of the advanced goodies of Delphi OR Lazarus/FPC, like
operator overloading and generics (improperly called class templates).
Also the COM work is, for the moment, harder in Lazarus/FPC, although
possible, as well as dynamic package loading.
Honestly, I wish it were different. Some components like GlScene I would
love to have compatibility Delphi/Lazarus, but it seems so difficult.
IMHO, It would be a very good idea to have a tutorial, targeted to
professional IT guys:
- on porting graphics,
- on porting interfaces to Office,
- on doing dynamic package loading,
- on porting DB-related code,
- etc.
I would be ready to help on the first point, as I'm doing the exercise
right now for TDrawObject, as well as the second and third, also.
This is a very good initiative, by the way.
Good luck,
Thierry
Michael.
--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus