On Mon, Oct 30, 2006 at 01:15:07PM +0200, George Birbilis wrote:
> > Why is it that every body and anything got a Dot Net version?
> 
> Cause .NET is a new and carefully designed OOP platform

As already said by others, the principles are not so new. Java of course,
but also UCSD and a lot other GCed OOP languages.

Libraries and integration of the VM with everything (db and OS api's) are
more interesting than the VM itself I think, including IL and the main
.NET languages like C#.

Note also the many ways you can set properties of symbols (e.g.
databindings) in .NET. Sometimes I wonder how much of this is standardized,
and what mono will support of this.
 
> > Even Borland's got a dot net enabled Delphi  coming it seems.
> 
> Delphi supports .NET since version 8 (version 7 had a preview .NET
> compiler if I remember well - a command-line version). Download the free
> Turbo Delphi Explorer (http://www.borland.com/turbo) to play with it or
> get a Delphi Studio trial

IMHO .NET in practice mostly shines with ASP.NET. And then better skip
Delphi all together and directly go to 2.0 enabled MS web developer.  The
benefits here are the strong forms/component based webdevelopment, and the
webserver being able to really schedule, terminate and clone processes makes
really use of the properties of .NET VM.

For normal apps I see more problems. Mostly that I don't know what I should
target GUI wise. I must admit that I haven't really got to the bottom of
this, but what is exact the status of Winforms? Will WPF run in a decent
speed on XP? Will any of these have the same long term stability as
win32/GDI? 

UI is often expensive to develop, and porting costly. However Microsoft
keeps insisting that Winforms will be replaced by WPF and a new model.
Should I invest in Winforms now then? I'm also not going to be a guinea pig
for new technology. (to be revisited when WPF is a year in production)

One of the things that I always notice about these "port to .NET"  messages
is the general vaguety, and the total omission of detail. Originally that's
why I wrote the .NET faq entry the way it is written, to treat issues (and
while doing that I got awfully pessistic about the real use). Also the "new
language feature" FAQ entry is written a bit with that in mind.


So maybe we should just brainstorm a bit, assuming the FPC bit is done, and
don't worry about who is going to dedicate several years of his life to
that.  Just a bit of brainstorming that we could morph into a nice .NET
article in the lazarus wiki/faq:

I'll start by randomly pop up some fundamental questions here. I'm not to
deep into the application part of .NET (did mostly ASP.NET).

- What .NET version to target? 
- What set of GUI libs? (Winforms 1.x/2.x, WPF)
- What set of OSes should it run on (Not just *nix, but also XP <-> Vista)?
- Is real (vs on paper) portability an issue? IOW will we abstract all libs
  for usage with mono, and develop Windows + mono at the same time, or do
  we develop Windows first and just point to mono as a stopgap?
- What is the benefit on embarking on this issue beyond just buying a copy
  of Chrome/Delphi.NET/VS2005 copy. IOW what is the added value of doing
  this with FPC, except because everybody is doing it (and already in
  production, while we are not)?
- Do we do ASP.NET and other derivatives? (XML transformation is getting
awfully big, and might be the next specialised area to emerge, see the
remark over properties on symbols, one can express XML mappings in code)
- Do we keep Borland compability? (VCL.NET emulation, language features,
other lib features) Will Borland still be actively using VCL.NET in say 3
years? (or doing .NET for normal apps at all?). If so, does mono limit us?
- If multi platform:
        - do we develop new libs ? (no ADO on linux etc)

Of course you have to keep in mind that 
- for every addition you answer "yes" to, you will be asked to put in 
 2 years of your life to realise it. IOW, don't choose to be compatible
 with all :-)
- Choices must be valid and usable in production for at least the next 5
  years. (2 years devel, 3 years production)
- There will be major enhancements for .NET every 2-3 years, and all
commercial parties will there before us. So the question of "what do we want
as added value" also becomes "what can we provided as added value given the
known limited resources". Please no stories about how developers will swim
across oceans to help us. Be realistic.
- Even while we said that "fpc development is done", keep in mind that a FPC 
version suitable for development (including base libraries) will be at least 
an year away.
- Whatever your choices above are, you need at least 5 people to agree with
you to be feasable. And with 5 I mean 5 people actually willing to work
every spare minute on the project to lift it from the zero status it has
now.

> > In Linux there is a mono project. What could the advantages
> > be ? Is it for collaborative development?
> 
> Mono runs on various UNIX OS (including Mac OS-X), not only Linux

But what exactly runs under Mono? I assume Linux didn't suddenly acquired an
ADO layer? (even aside from the fact that the most succesful .NET
deployments seem to center around ASP.NET) See also .NET FAQ, Mono is quoted
again and again, and I know that basic apps work. But what is really the
long time perspective, and how much does that limit you to go the Borland
way?
 
> > Where  does all
> > this leave Lazarus/Fpc?
> 
> Since there's VCL.net port from Borland,

(Rewrite is a better word)
 
> Python is nice OOP language

Can you name apps? Afaik it is mostly used for a bit of in application
scripting and some webapps. But is it really a Delphi replacement? I doubt
it. What does it use for GUI btw?
 
> > Yeah, I understand, Computer Science is not like Physics or
> > Mathematics.
> > Today's tech is dumped within few years. Quantum mechanics
> > and Relativity is perennial as Calculus and Probablity
> > theory. Is there anything like that in CS? Maybe plain C or
> > Pascal fits the bill?
> 
> It's always useful to know Structure Programming (say Pascal) before you
> move to Object-Oriented Programming (say Object Pascal, or C#, VB.net or J#
> and Java, etc.)

True. But I already know Object Pascal, and have done some Java and some C#.
However for me the GC aspect of .NET is not worth the trouble, except for
ASP.NET maybe. What would one actually gain?
 
> > My colleagues in other departments like Physics and Math
> > regret they dint go the CS route. But I regret  I dint stick
> > to Physics or Mathematics. In these an Equation is always an
> > equation. We dont have another company coming up and throwing
> > away an equation for a new one.
> > And we dont have to learn things from scratch to stay in the job.
> 
> But then you lose all the fun, plus your skill rot

I think your skills rot quicker when one shallowly moves from one technology
to the other.

_________________________________________________________________
     To unsubscribe: mail [EMAIL PROTECTED] with
                "unsubscribe" as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives

Reply via email to