mboost-dp1

Embarcadero

Delphi gør comeback-forsøg

- Via DZone - , redigeret af Net_Srak , indsendt af arne_v

I dag er der ikke mange programmører, som anvender Delphi til udvikling af software, efter det i midten af det seneste årti har måttet se sig overhalet af andre alternativer, som ofte både er bedre og billigere.

Hos Embarcadero, der i dag har rettighederne til Delphi, forsøger man nu at puste nyt liv i sproget med udgivelsen af Delphi XE Starter. Hos hjemmesiden DZone har de kigget nærmere på udgivelsen, og den får ikke meget ros.

Andy Gibson, der selv tidligere har udviklet i Delphi, giver ikke meget for starter-versionen, som koster $199. Sammenlignet med andre sprog, som for eksempel Java, mangler der en lang række funktioner, som burde være en del af grundpakken. Disse funktioner kan man kun få i pro-pakken, der koster $600.

Andy Gibson, DZone skrev:
The point is, for $199 today, you can have an IDE from 15-20 years ago. For an extra $600 you can have the professional version which gets you all the basics, but not much more.

Du kan læse mere om Delphi XE Starter hos Embarcadero.





Gå til bund
Gravatar #1 - NeoNmaN
17. mar. 2011 09:27
Nu har jeg aldrig kunne lide hverken Java eller Delphi, men nu hvor der snakkes om det kan man kode C# gratis, og Java er så vidt jeg ved da også gratis at udvikle? eller er der her tale om GUI tools? som Visaul Studio Express og Pro?
Gravatar #2 - Windcape
17. mar. 2011 09:31
#1

Delphi er et IDE. Sproget hedder Pascal, og har eksisteret i en række implementationer i mange år.

Danskeren Anders Hejlsberg, hovedarkitekten bag C#, er også hovedarkitekt bag TurboPascal, som var Borlands grundlag for Delphi.

Men ja, det giver ikke meget mening, da Visual Studio Express giver samme muligheder, helt gratis. Og Visual Studio's betalte udgaver, giver langt flere muligheder end Delphi.

Delphi har opnået samme position som COBOL. Man arbejder kun med det pga. legacy-krav.
Gravatar #3 - HenrikH
17. mar. 2011 09:38
Hårh, det kan jeg da godt huske....

Det sad jeg på HTX i slut halvfemserne og brugte til at lave små dumme Vindus programmer i "programmering" >_<
Gravatar #4 - jakobdam
17. mar. 2011 09:41
Yay, medmindre man er sucker for Pascal syntax så er der vel ikke meget der berettiger den meget lave cost/benifit på Delphi nu om dage.

Citatet fra Andy Gibson i nyheden siger vist det hele.

Jeg startede med at programmere i Pascal som det første sprog, men savner det bestemt ikke.


BEGIN
IF (blablabla) THEN DO BEGIN
blablabla
END;

ELSE IF(blablabla) THEN DO BEGIN
blablablabla
END;
END.


Samme i PHP til sammenligning:


<?php
if(blablabla) {
blablabla
} else {
blablablabla
}
?>



- At Pascalsproget så sidenhen har fået noget overbygning i form af objektorientering (sket vidst med den første Delphi-udgivelse i tiden efter Turbo og Borland Pascal), synes jeg ikke gør det meget sjovere.
Gravatar #5 - flywheel
17. mar. 2011 09:42
@2 Ville nærmere kalde det Objekt Pascal (Så vidt jeg husker var bagmændene Larry Tesler og Niklaus Wirth - Apple Computer).

Pascal familien har jo ikke ligget helt stille - der har for eksempel været en jævn udvikling på Free Pascal, da allerede for en 6-7 år siden var ganske kapabelt og blev brugt for eksempel i forbindelse med Sibyl.
Gravatar #6 - Windcape
17. mar. 2011 09:49
HenrikH (3) skrev:
Hårh, det kan jeg da godt huske....

Det sad jeg på HTX i slut halvfemserne og brugte til at lave små dumme Vindus programmer i "programmering" >_<
Samme her. Bortset fra at jeg var i folkeskolen :p
Gravatar #7 - snemarch
17. mar. 2011 09:53
#4: pascal har været objektorienteret i MANGE år før Delphi - for Borland/Inprise/Embarcablablabla varianten skete det tilbage i Turbo Pascal 5.5. Det er meget++ lang tid siden :)

begin/end vs. {} er ca. irrelevant, den slags kan automatiseres af et IDE (men ja, jeg foretrækker selv C-style krøller). Object Pascal er sådan set et fair nok sprog, men ser ikke nogen grund til at bruge det når der er så meget mere C/C++, Java og C# kode derude, samt bedre compilere og udviklingsmiljøer.

Borland havde nogle suveræne produkter back in the days, men de blev overhalet indenom.
Gravatar #8 - Timelord
17. mar. 2011 10:06
Jeg har også tilbage i tiden arbejde både med Turbo Pascal og Delphi, men skal aldrig tilbage til det igen.
Nu er c# og Obj-C.


Er du iOS udvikler?
www.ios-sdk.dk
Gravatar #9 - JesperBentzen
17. mar. 2011 10:13
Jeg har brugt deres Borland C++ Builder (der også klarer pascal) og efterkommere i over 15 år nu, og det er en smerte at se hvordan det er gået ned ad bakke for dem (det begyndte med deres fremragende DOS compiler).

Deres nye RAD XE compiler (der både klarer Pascal og C++) indeholder faktisk en utroligt masse savnet features såsom analyse af hvilke dele af koden der bruger mest tid, code-coverage og Unicode support.

Problemet er bare at simple ting som code completion stadigvæk er ufatteligt sløvt og hjælpe filerne stadigvæk er både langsommere og dårligere end en Google søgning. Der er utroligt, da det har virker fint i tidligere versioner.

De har i den grad tabt løbet til gratis alternativer. Den sidste compiler vi købte fra det firma hed ”Turbo C++ 2006” og den er så dårlig at den kan finde på at bruge forkerte header filer fra andre projekter under compileringen – et problem de har erkendt men ikke ville løse. Så kan man lave nok så meget kode review hvis den alligevel tager en gammel header fil.

En stor skam, men et stort tak til dem i deres storhedstid for Borland C++ Builder 6.0 – en virkelig lækker compiler i sin tid.

R.I.P.
Gravatar #10 - jfs
17. mar. 2011 10:14
#2
Faktisk besluttede Borland (eller var det Inprise de kaldte jeg selv på det tidspunkt) at sproget ikke mere skulle hedde Object Pascal, men Delphi. Så jo, i de sidste 3-4 versioner af Delphi hed sproget også Delphi.


Og $199 er i hvert fald en for høj pris for at konkurrere mod gratis Visual C# Express.
Gravatar #11 - JesperBentzen
17. mar. 2011 10:19
#10 skrev:
Og $199 er i hvert fald en for høj pris for at konkurrere mod gratis Visual C# Express.


Det er det ikke hvis man allerede har masser af source kode i Pascal, som man ikke har fået konverteret endnu, men ja du har fuldstændigt ret hvis vi taler nyudvilkning, så har de tabt stort - også selvom man tager i betragtning af at folk skal til at lærer et nyt sprog.

I det firma jeg arbejder for skal vi netop til at konverterer samtlige programmer væk fra deres compilere - det er noget der trækker tænder ud, men vi har intet valg med deres software "kvalitet" i C++ delen af deres compilere.
Gravatar #12 - BetaLyte
17. mar. 2011 10:59
"Kan godt være at koen er død, men lad os lige prøve at se om der ikke skulle være lidt mere mælk i patterne"
(Bare lige for at prøve noget anden end den sædvanlige bilanalogi, dog med frygt for at blive rated irrelevant eller lign.)
Gravatar #13 - Daniel-Dane
17. mar. 2011 11:10
Jeg har i hvert fald elsket Delphi 2010, som endelig har ordentlig Unicode-support.
Gravatar #14 - mathiass
17. mar. 2011 11:48
#13: Er 2010 ikke også grotesk sent at få styr på Unicode support? Det lyder ikke som et sprog der der har ret meget at gøre med andet end legacy-kode.
Gravatar #15 - Barium
17. mar. 2011 12:12
Deres VCL hører dog til blandt de absolut bedre visuelle frameworks. Ikke underligt er det netop VCL som Windows Forms er kraftigt inspireret af.
Gravatar #16 - praktikant muffe AKA pewbe
17. mar. 2011 12:49
HenrikH (3) skrev:
Hårh, det kan jeg da godt huske....

Det sad jeg på HTX i slut halvfemserne og brugte til at lave små dumme Vindus programmer i "programmering" >_<

Det har ikke ændret sig :/
Gravatar #17 - RobertMP
17. mar. 2011 12:50
Er selv gammel Delphi programmør. Det jeg savner mest er compile tiderne. God damn den var hurtig!
Gravatar #18 - Windcape
17. mar. 2011 12:52
RobertMP (17) skrev:
Er selv gammel Delphi programmør. Det jeg savner mest er compile tiderne. God damn den var hurtig!
Prøv C#, den er endnu hurtigere :)
Gravatar #19 - triel
17. mar. 2011 13:06
BEGIN
IF (blablabla) THEN DO BEGIN
blablabla
END;
ELSE IF(blablabla) THEN DO BEGIN
blablablabla
END;
END.


Du har vist lige glemt syntaksen i mellemtiden

Det hedder enten

if a then b else c;

eller

if a then
begin
b; c;
end else
begin
d; e;
end;
Gravatar #20 - lorric
17. mar. 2011 13:08
Jeg lærte programmering i Turbo Pascal 5.5 og Delphi senere. Siden dengang har jeg kun hobby programmeret, men alle sprog jeg rører ved føles møgbesværlige i forhold til.

Nu har jeg fundet FreePascal og hygger mig med det :-D

#19 jeg har altid hadet at folk skrev begin på en linje for sig.
If (a) then begin
blabla;
end else begin
blablabla;
end;
Gravatar #21 - triel
17. mar. 2011 13:09
Det er jo spændende, at den nye Delphi kan krydskompilere til både Mac og Linux. Jeg har endnu ikke stødt på opgaver, som Delphi ikke har kunnet klare med glans, og jeg er glad for ikke at låse mig fast til Microsoft, som man uvægerligt gør som dot not programmør
Gravatar #22 - Windcape
17. mar. 2011 13:10
#20

Jeg har programmet i samtlige mainstream sprog de sidste 15 år. Så hvis du synes at Pascal er mindre besværligt, end f.eks. C#, så har du vist ikke brugt særligt mange minutter på det.

Pascal's syntaks er generelt bloatet, og sproget mangelfuldt.
Gravatar #23 - Windcape
17. mar. 2011 13:10
triel (21) skrev:
og jeg er glad for ikke at låse mig fast til Microsoft, som man uvægerligt gør som dot not programmør
Du har bare låst dig fast til Embarcadero i stedet :p

Fordi det er såååå meget bedre, eller hva?
Gravatar #24 - triel
17. mar. 2011 13:11

#19 jeg har altid hadet at folk skrev begin på en linje for sig.
If (a) then begin
blabla;
end else begin
blablabla;
end;


Smag og behag.
Jeg synes din måde er grimmest:-)
Gravatar #25 - triel
17. mar. 2011 13:15
Herligt med lidt religionskrig:

Hvis man bliver træt af Embarcadero kan man fortsætte med Freepascal og Lazarus.

Jeg vil gerne se nogen konkrete kodeeksempler på, hvor Delphi ikke kan være med.
Gravatar #26 - Windcape
17. mar. 2011 13:16
#25

First-order functions?

Ellers kan jeg bare sige LINQ, og så har i allesammen tabt.
Gravatar #27 - Kenman
17. mar. 2011 13:44
Har selv benyttet Delphi i en række år, men må desværre indse at de i min verden har tabt til eks. C#.

Problemet for Delphi IDE'en fra v. 7 og frem til 2010, er den generelle mangel på rigtig mange headers til systemskald.

Til sidst blev jeg så træt af at skulle sidde og konvertere C headere fra MS' SDK'er, at jeg brækkede mig og overgav mig til C#.

Hvad jeg så tilgengæld savner ekstremt i min kode-hverdag i C#, er VCL.
For helvede det var et lækkert bibliotek at kode til.

Det havde stort set alt og hvad de ikke havde, kunne man finde via Google eller hurtigt selv implmentere pga. deres lækre object-model.

mht Lazarus og Freepascal:
sidst jeg forsøgte mig med deres IDE, gav jeg op. Den var simpelthen så ringe. Den når ikke den gamle delphi 5 IDE til sokkeholderne..

Så hellere over i VS der klarer det med glans!

(Proud owner af Delphi 1 original!)
Gravatar #28 - Pidgeot
17. mar. 2011 13:50
#14
Unicode kom i Delphi 2009 (dvs. sidst i 2008), sammen med generics og closures, men jo, det var sent - der var snak om det flere år før, og en del utilfredshed med at det hele tiden blev udsat, men for at være lidt fair, så hjalp det ikke ligefrem at det var mens Borland var ved at skille sig af med Delphi.

#26
Delphi har (som nævnt foroven) siden 2009-udgaven også first-class functions (i form af closures).

Nej, der er ikke LINQ i Win32 udgaven, men det er der til gengæld i Oxygene/Delphi Prism, som er en .NET variant af Delphi (med en række syntaktiske forskelle).

#27
Det er nu (efter min mening) blevet bedre i de sidste par versioner, men ellers er der jo altid Project JEDI.
Gravatar #29 - triel
17. mar. 2011 14:52
Windcape (26) skrev:
#25

First-order functions?

Ellers kan jeg bare sige LINQ, og så har i allesammen tabt.


Havde du konkrete eksempler?
Gravatar #30 - Daniel-Dane
17. mar. 2011 16:11
#14
Jo.

#28
Unicoden i 2009 er ikke god.
Gravatar #31 - arne_v
17. mar. 2011 16:58
#1

I Delphi er compileren kun tilgængelig sammen med IDE (i modsætning til Java og .NET).

I gamle dage kunne man hente en gratis Delphi og bruge til ikke-kommerciel brug.

Men det kan man ikke længere.

Til gengæld kan man hente FPC (compiler) og Lazarus (IDE) som er gratis open source.

De er rimeligt kompatible.
Gravatar #32 - mstify
17. mar. 2011 17:35
Jeg er også gammel Delphi mand og bruger faktisk indimellem stadig mit kære Delphi 5 hvis jeg skal lave små native GUI apps der skal distribueres, dertil er det stadig et fantastisk værktøj.

Men efter det bare er blevet endnu et sprog at kode .NET i, har det tabt. Der kan de ikke længere konkurrere med VS og C# og det ændrer den her udgivelse næppe på.
Gravatar #33 - arne_v
17. mar. 2011 18:08
Windcape (2) skrev:
Men ja, det giver ikke meget mening, da Visual Studio Express giver samme muligheder, helt gratis. Og Visual Studio's betalte udgaver, giver langt flere muligheder end Delphi.


VS understøtter ikke Pascal.

Jeg mener slet ikke at VS understøtter nogen sprog med den type sikkerhed som man har i Pascal familien (Pascal, Modula-2, Ada etc.).

Så samme muligheder er der ikke.

Der er andre muligheder.

Windcape (2) skrev:
Delphi har opnået samme position som COBOL. Man arbejder kun med det pga. legacy-krav.


Det er vist ret præcist Delphi's markedsposition idag.
Gravatar #34 - arne_v
17. mar. 2011 18:18
jakobdam (4) skrev:

Jeg startede med at programmere i Pascal som det første sprog, men savner det bestemt ikke.


BEGIN
IF (blablabla) THEN DO BEGIN
blablabla
END;

ELSE IF(blablabla) THEN DO BEGIN
blablablabla
END;
END.


Samme i PHP til sammenligning:


<?php
if(blablabla) {
blablabla
} else {
blablablabla
}
?>




Hvis vi nu ignorerer at:
1) de to stykker kode har forskellig logik (2 test i Pascal - 1 test i PHP)
2) der er syntax fejl i din Pascal (semikolon før else tsk tsk)
så virker
så er Pascal og PHP da helt identisk.

At begin end fylder mere end { } er da ret ligegyldigt.
Gravatar #35 - arne_v
17. mar. 2011 18:40
Windcape (18) skrev:
Prøv C#, den er endnu hurtigere :)


Virkeligt?

Delphi compiler ca. 200000 linier i sekundet.
Gravatar #36 - arne_v
17. mar. 2011 18:42
Windcape (23) skrev:
Du har bare låst dig fast til Embarcadero i stedet :p


Nope.

FPC er allerede nævnt.
Gravatar #37 - arne_v
17. mar. 2011 18:44
mstify (32) skrev:
Men efter det bare er blevet endnu et sprog at kode .NET i, har det tabt.


Native Win32 er da stadig Delphi's primære target.

Delphi.NET/Prism/whatever de kalder det denne måned har aldrig rigtigt slået an.
Gravatar #38 - arne_v
17. mar. 2011 18:59
arne_v (34) skrev:
At begin end fylder mere end { } er da ret ligegyldigt.


Og den "rigtige" løsning udfra en læsbarheds synsvinkel må være:

if ...
...
end if;

for ...
...
end for;

while ...
...
end while;


Men det er der vist kun Ada og tildels Fortran og Basic der kan finde ud af.
Gravatar #39 - snemarch
17. mar. 2011 19:31
#21: så du vil hellere låse dig til Embarcadero, samt et sprog der øjensynligt ligger på sit dødsleje og gør nogle sidste krampagtige forsøg på at være relevant? Du kan synes om MS og .NET hvad du vil, men de forsvinder ikke lige foreløbigt... og der er Mono + Moonlight som alternative implementationer, omend de ikke dækker hele .NET frameworket.

#25: kvalitet af den genererede maskinkode i forhold til andre compilere. Om det er relevant afhænger af hvad du programmerer, men Borlands compilere (pascal såvel som C++) har aldrig været i den fantastiske ende.

Det er lidt synd det er gået som det er for Borland. Tilbage i Turbo Pascal 6 dagene havde de et (for den tid) fantastisk IDE, yderst velintegreret context-sensitiv hjælp, og muligheden for at compile direkte til RAM - hvilket gjorde edit/compile/run test cyle en del hurtigere på sløve 286'ere med PIO diske.

#33:
Jeg mener slet ikke at VS understøtter nogen sprog med den type sikkerhed som man har i Pascal familien (Pascal, Modula-2, Ada etc.).
Hvilken type sikkerhed tænker du på her? Det er en del år siden jeg har kodet i Pascal, så det eneste jeg kommer til at tænke på er at char var lige rigeligt typesafe nok, så man endte med en masse irriterende typecasts :)
Gravatar #40 - mstify
17. mar. 2011 20:34
#37: Det jeg har set til Delphi i nyere tid har lugtet langt væk af et forsøg på at imitere Visual Studio og pludselig skulle man også være med på .NET vognen, reelt er Delphi 7 den sidste version jeg kunne tænke mig at arbejde med - jeg gider dog ikke købe en licens, når nu mit pålidelige Delphi 5 stadig fungerer fint og til .NET udvikling foretrækker jeg klart VS og C#.

Det er muligt Win32 udvikling i Delphi stadig er stort, men jeg synes ikke jeg ser meget til det idag.
Gravatar #41 - arne_v
17. mar. 2011 21:20
snemarch (39) skrev:
kvalitet af den genererede maskinkode i forhold til andre compilere. Om det er relevant afhænger af hvad du programmerer, men Borlands compilere (pascal såvel som C++) har aldrig været i den fantastiske ende.


??

Borlands compilere havde da i mange år (med rette) ry for at generere bedre kode end MS's compilere.

Det er først indenfor de sidste 5-8 år at MS har catchet op.
Gravatar #42 - arne_v
17. mar. 2011 21:22
snemarch (39) skrev:
Hvilken type sikkerhed tænker du på her?


Konstruktioner som:


type
dicevals = 1..6;
dicestat = array[dicevals] of integer;
Gravatar #43 - jfs
20. mar. 2011 15:08
#41
Jeg tror det handler om at Borlands fortolkning af hvad C++ var for en størrelse var temmelig forskellig fra resten af verdens forståelse af C++.
Hvis du har skrevet kode til Borland C++ så kan du ikke regne med at en anden compiler vil godtage den, og omvendt hvis du har skrevet standard C++ så kan du ikke regne med at Borland C++ vil kendes ved den.
Gravatar #44 - Pally
20. mar. 2011 16:13
God gammel C er standardiseret; det mener jeg faktisk ikke C er (jeg husker muligvis forkert).

Jeg har været i den situation at skulle lave C kode, der skulle kunne compile under Visual Studio, GCC og Borland C Builder. Det var ... interessant. Det lykkedes men det krævede et par #ifdef Borland nogle steder.
Gravatar #45 - jfs
22. mar. 2011 06:25
#44
Jeg tror du har mistet et par +'er rundt omkring, men jo, C++ er skam ISO standardiseret. Første gang i 1998, revideret i 2003, og en ny standard er på vej.
Gå til top

Opret dig som bruger i dag

Det er gratis, og du binder dig ikke til noget.

Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.

Opret Bruger Login