C++ vs Delphi

Tags:    diverse

<< < 123 > >>
Hej,
jeg har programmeret meget WWW, programmering. Men vil nu gerne til at programmere rigtig programmering. Jeg har programmeret lidt Visual Basic og det jeg os god til, men jeg vil hellere prøve kræfter med C++ eller Delphi - HVAD SKAL JEG VÆLGE?

ChristofferB
christoffer@raiser.dk



21 svar postet i denne tråd vises herunder
4 indlæg har modtaget i alt 4 karma
Sorter efter stemmer Sorter efter dato
Delphi har en forståelig syntax


Delphi's syntaks er baseret på Pascal, hvor C++'s syntaks er baseret på C. Delphi's syntaks er simplere, men de fleste programmører der har prøvet begge foretrækker en C-lignende syntaks. BEGIN ... END blokke virker ret klodsede i forhold til {}.

Delphi er 100% objekt orienteret


Er det en god ting? I C++ kan man vælge objektorientering fra, hvis det ikke passer til det problem man skal løse. Men du mener måske at alle problemer kan løses på en objektorienteret facon?

Delphi er ikke case-sensitivt


Det er der mange sprog der ikke er. Det betyder i mine øjne ikke noget, og case-insensitivitet kan gøre kode mere rodet, idet man ikke har nogen fast regel for hvordan en identifier ser ud.

Delphi kan generere nativ maskinkode såvel som .net kode(i de nyere versioner)


Det kan C++ også. Faktisk, så er C++/CLR et af de sprog Microsoft distribuerer med .NET-frameworket (det er altså ikke et uafhængigt firma der står bag det).

Delphi er RAD


Sproget Delphi er ikke RAD, IDE'en Delphi er. Du kan programmere C++ i Visual Studio, og det er også RAD-orienteret.

Delphi er ikke dokumenteret langsommere end C++


Men det er heller ikke dokumenteret hurtigere. ;-)

Delphi er fantastisk


Det er C++ også (sikke dog et underligt argument).

Delphi er grundigt dokumenteret


C++ er endnu bedre dokumenteret, simpelthen fordi det er langt mere udbredt, og fordi C/C++ også er det sprog næsten alle moderne styresystemer er skrevet i.

Ydermere har C++ nogle utroligt praktiske features som Delphi mangler, heriblandt templates (hvilket åbner op for generic programming og mange andre teknikker) samt multiple inheritance (et must for policy-baseret programmering).
--
Blog:
http://www.sigkill.dk/blog



Nu når vi lige snakker om c(++). Har altid undret mig over hvad cout og >> betyder?!



-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GED d- s: a--- C++ W++ w PS X+ tv+ b D G e- h! !r z--
------END GEEK CODE BLOCK------


cout betyder(AFAIK) Console Out og >> er en output operator. << er en input operator. Mere om operators kan findes i Troels' artikel om containers!

MH.

The-Freak

Livet er for kort til at kede sig.

[Redigeret d. 04/06-05 20:59:11 af The-Freak]



Den letteste måde at skille dem ad er vel sådan her:


Delphi:
MEGET LET sprog. Godt for nybegyndere. Muligheder af ting der kan programmeres er ikke så stor som andre. Udover det bruges sproget ikke af så mange som c++ og har derfor ikke så mange tutorials, som c++ globalt!
Sproget minder lidt om Java.

C++
MEGET SVÆRT sprog. Godt for erfarende. Muligheder af ting der kan programmeres er enorm. Udover det bruges sproget af RIGTIG mange flere end som delphi og har derfor massere af tutorials globalt!
Sproget minder lidt om PHP.


Meget noget for sig selv!
(Skal også lige sige at C++, kører hurtigere. Og er meget bedre til at hontere flere opbjekter på en gang. Perfekt til OpenGL (3D)


Shafh
www.shafh.dk
Shafh@stofanet.dk
Theis F. Hinz

Make you glad to change the world



Juhu - endnu en flame war til et simpelt spørgsmål :-P

1. Der er ingen betydelig forskel på de to sprogs hastighed (det afhænger altid af situationen og de forskellige objekter, der benyttes). Delphi er generelt lige så hurtig som C++ (.NET versionen af Delphi - og her taler jeg om sproget, ikke IDE'et - bør dog sammenlignes med et andet .NET kontrolleret miljø, så som C#).
God kode i et meget langsomt sprog kan være lige så hurtigt som dårlig kode i meget hurtigt sprog - kort sagt afhænger det meget af programmørens evne til at skrive effektiv kode, og nogle situationer i to sprog (fx C++ og Delphi) kan ikke sammenlignes på lige vilkår, hvis man benytter klasser/biblioteker, der ikke findes i begge sprog. Der foregår også en masse bag "kølerhjelmen", som kan sænke hastigheden gevaldigt, hvis ikke man passer på - dette gør sig gældende i begge sprog.

2. Der findes rigtigt nok flere artikler, tutorials osv. omkring C++, men det er ikke ensbetydende med, at Delphi er isoleret - tværtimod. C++ har bare haft 2 fordele, hvoraf den første er enorm vigtig: 1) det afløser (dette kan selvføglelig diskuteres - ligesom med C++ vs. C#) et meget populært sprog, C, der stadig bliver vidt benyttet (man kan benytte C enten direkte eller næsten direkte i C++, hvorfor firmaer osv. ikke har haft behov for at omskrive deres massive mængder af C kode til C++) og 2) det har eksisteret lidt i længere tid end Delphi (4-7 år tror jeg vist - kan ikke helt huske, hvornår B. Stoustrup udgav C++ officielt), og dette har formentlig også haft stor betydning i nogle tilfælde.

3. Afprøv begge sprog og bedøm derudfra. De har begge deres fordele og ulemper, men jeg vil uanset hvad, anbefale dig at lære det mest basale omkring C++, for som sagt er der meget hjælp at hente i den kategori (og mange ting, fx Windows programmering via Win32 API'et og generelle programmerings mønstre, går på tværs af sprogene).

4. C++ er måske lidt sværere at lære end Pascal, men dette kommer an på, om man går i gang med at styre hukommelsen selv eller om man lader andre kodebiblioteker gøre dette for én - Delphi styrer det selv som standard, mens Standard Template Library (STL, hvilket er en del af C++ standard, så det medfølger) kan klare det for én i C++ - STL er for øvrigt _meget_ godt optimeret, og kan sagtens bruges til meget hukommelsesmæssigt tunge opgaver - akkurat ligesom Delphi's metoder kan. Det afhænger bare mange gange af, om man benytter de bedste/hurtigste metoder og containers til den enkelte opgave.

Delphi har et gratis bibliotek, VCL, der kan bruges til at lave Windows vinduer (vinduer, knapper, tekstbokse, menuer mm.) direkte og visuelt (RAD), men dette kan også erhverves til C++ for en mindre sjat penge (medfølger med compilerne/IDE'erne Microsoft Visual C++ og Borland C++, men det er en anden historie). Jeg har indtil videre lavet det visuelle til Windows (altså alle vinduer, knapper osv.) uden RAD - kort sagt har jeg selv skrevet koden til det - via Win32 API'et (der i øvrigt er ens i begge sprog) i C++, så Delphi's VCL redskab er skam ikke strengt taget nødvendigt, men er rart at have, hvis man alligevel benytter Delphi.
Så medmindre du ikke har lyst til at ofre penge og simpelthen bare vil lave Windows relaterede brugergrænseflader fra starten, så vil C++ være lige så godt at begynde med, som Delphi. Med C++ vil du formentlig starte med nogle DOS lignende kommandopromte i starten, da sproget i sig selv er vanskeligt at mestre, uden at skulle tænke på Windows' indblanden. Til gengæld vil du i modsætning til C++'s læren af sproget og syntaksen formentlig fokusere udelukkende på Delphi's VCL i starten (dette gjorde jeg nemlig, og har også lagt mærke til at mange andre gør), og dette vil i og for sig jo ikke betyde, at du kan mestre Delphi's Object Pascal, når du kan smække nogle vinduer op på skærmen ved hjælp af nogle linjer kode.
Delphi bliver også meget besværligt (hvis vi går ud fra, at C++ er meget besværligt), når man først begynder at rode med den objekt/struktur/hukommelses orienterede del (her mener jeg ikke kun OOP) af sproget, hvilket er nødvendigt, når man er færdig med udelukkende at lege med Windows.

Jeg har formentlig lavet nogle alvorlige stavefejl, jeg vil blive halshugget for om kort tid, men det hører jo med at til poste i en sådan tråd...

1101110100010110000101000001

Killers don't end up in jail - they end up on a high-score!

[Redigeret d. 05/06-05 17:03:21 af Nicolai Lyster Fersner]




C++ imho! Det er tit meget nemmere at finde gode tutorials og guides til C++.

MH.

The-Freak

Livet er for kort til at kede sig.



oh teh noes..
det her ender ikke godt..

men for lige at sige min egen mening, da der ikke er noget entydigt svar, så vil jeg sige Delphi:

Delphi har en forståelig syntax
Delphi er 100% objekt orienteret
Delphi er ikke case-sensitivt
Delphi kan generere nativ maskinkode såvel som .net kode(i de nyere versioner)
Delphi er RAD
Delphi er ikke dokumenteret langsommere end C++
Delphi er fantastisk
Delphi er grundigt dokumenteret

Og desuden er der FPC som sammen med Lazarus jo er et fantastisk, gratis alternativ til Delphi IDE'et

og så skulle delphi 7 personal gerne udkomme gratis her i juni så du kan udgive og tage penge for programmer der er lavet deri.

Mine 0.02 kroner

Jeppe Johansen
Jeppesoftware@hotmail.com



Den 04-06-05 16:54 skrev Jeppe følgende:
-----------------------------------------------------------------------------
oh teh noes..
det her ender ikke godt..

men for lige at sige min egen mening, da der ikke er noget entydigt svar, så vil jeg sige Delphi:

Delphi har en forståelig syntax
Delphi er 100% objekt orienteret
Delphi er ikke case-sensitivt
Delphi kan generere nativ maskinkode såvel som .net kode(i de nyere versioner)
Delphi er RAD
Delphi er ikke dokumenteret langsommere end C++
Delphi er fantastisk
Delphi er grundigt dokumenteret

Og desuden er der FPC som sammen med Lazarus jo er et fantastisk, gratis alternativ til Delphi IDE'et

og så skulle delphi 7 personal gerne udkomme gratis her i juni så du kan udgive og tage penge for programmer der er lavet deri.

Mine 0.02 kroner

Jeppe Johansen
Jeppesoftware@hotmail.com
-----------------------------------------------------------------------------


Jeg har hørt at Delphi ikke kan køre på Linux, passer det??



Jeg har hørt at Delphi ikke kan køre på Linux, passer det??


Du kan bruge Kylix til at kompilere delphi kode til linux
og med fpc kan du kompilere pascal kode til linux og mac
Jeppe Johansen
Jeppesoftware@hotmail.com



Jeppe, jeg er enig i alle de punkter. MEN et faktum er at der er skrevet LANGT flere tutorials om mere advancerede emner til C++ end der er til Delphi.

Det skal lige siges at jeg selv er stor tilhænger af Delphi og kun anbefaler C++ fordi det er nemmere at funde tutorials ;-)

MH.

The-Freak

Livet er for kort til at kede sig.



Ku' i måske skriver links til nogen Delphi og C++ tutorials, så jeg ved hvad jeg går ind til. Vedrørende indlæring af det.
Helst danske tutorials, men engelske er os ok:D

ChristofferB\\\\\\\\



<< < 123 > >>
t