Newsgroup: it.comp.lang.delphi
Titolo: Delphi o C++ Builder?

Ciao a tutti,
ecco la mia domanda:
Attualmente programmo in VB, e da qualche tempo ho deciso di orientarmi
verso un linguaggio piu' potente, in particolar modo vorrei provare un RAD
di casa Borland (adesso si chiama Inprise?)
Il mio problema dunque e' questo: tra Delphi e C++ Builder qual'e' il
migliore??
Premetto che non voglio assolutamente fare "confronti", vorrei semplicemente
sapere quale dei due mi offre una maggiore rapidita' di sviluppo,
versatilita', potenza e robustezza ma che al tempo stesso non mi nasconda il
"dietro le quinte"; molto probabilmente e' una domanda scema, ma
sinceramente non so su quali parametri basarmi per decidere. Ho una discreta
conoscenza di C e Pascal, anche se purtroppo molte cose ho smesso di
studiarle da quando ho iniziato  a programmare con VB. Ora per fortuna ho
ritrovato il senno...
Grazie a tutti anticipatamente
-- 
Posted from 
smtp1.libero.it
 [193.70.192.51] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

  |
|  Use manually this address!!   |
|  ICQ#: 19577419                |
+--------------------------------+

Se vai sul sito della borland italia c'e' la possibilità di ordinare (a
prezzo non alto) un cd con le versioni trial di tutti i prodotti compresi
delphi e builder.
Tra i due comunque io preferisco Delphi (giudizio personale) anche se sto
pensando di imparare il java (JBuilder)
ciao

 In alternativa, c'è anche JBuilder, che è più o meno la stessa cosa ma in
Java.
Definire JBuilder simile al CBuilder e a Delphi è parecchio azzardato ...
hai mai avuto modo di provarlo?
--
- Carlo -
c.b...@libero.it

 delphi e builder.
Puoi anche ordinare una versione Educational per studenti.
La paghi meno.


 hai mai avuto modo di provarlo?
Sì, e non è uguale. Però comunque sia è un ambiente di sviluppo pure lui.


 Sì, e non è uguale. Però comunque sia è un ambiente di sviluppo pure lui.
Che significa, anche Visual C++ è un ambiente di sviluppo ma è totalmente
diverso dai RAD Borland!


Credo che siano entrambi ottimi prodotti e cmq., dipende anche da cosa vuoi
fare.
Ho avuto occasione di provare il  Builder C++; l' impressione è di grande
potenza [anche se il compilatore è un po' più lento di quello di Delphi] e
se conosci il linguaggio C e le sue strutture, credo si possa fare
praticamente di tutto, dai gestionali ai giochi.
Delphi è il framework con il quale 4 anni fa mi sono avvicinato alla
programmazione Event-Driven di Win32 - provengo dal glorioso Clipper - e
devo dire che mi da grandi soddisfazioni. E' veloce, versatile, potente e ti
dovrebbe permettere in poco tempo di andare a regime.
Come ti hanno già risposto, prova entrambe le trial, in versione Enterprise
possibilmente, e valuta anche in base al tipo di applicazioni che vuoi
costruire.
Ciao.
Marco Soravia
Sviluppo software gestionale
E-MAIL: 
vj...@libero.it

Grazie, ma per il momento Java non mi interessa (se non per il fatto che
devo studiarlo all'universita'!)
Quello che cerco e' un'ambiente di sviluppo che mi consenta di sviluppare di
tutto(nei limiti delle mie capacita', ovvio!), dai gestionali a programmmi
con OpenGl, ad applicazioni di calcolo ingegneristico, etc... quindi credo
che la lentezza di Java in queste situazioni sia del tutto inaccettabile,
no?
Grazie della risposta
Leo
-- 
Posted from 
smtp3.libero.it
 [193.70.192.53] 


Infatti, e' proprio sulle versioni trial che sto iniziando a smanettare un
po'... per quanto riguarda JBuilder per il momento non sono interessato al
discorso, la lentezza di Java in alcune situazioni e' un problema troppo
pesante, comunque qualche giorno (magari quando avro' un po' + di tempo e un
pc un po' + potente) la installero', giusto per vedere com'e'...
Grazie della risposta
-- 
Posted from 
smtp5.libero.it
 [193.70.192.55] 


Sto gia' usando le trial, grazie...
-- 
Posted from 
smtp4.libero.it
 [193.70.192.54] 


 ritrovato il senno...
si, per fortuna hai ritrovato la retta via !!
Personalmente preferisco Delphi, ma la scelta l'ho fatta qualche anno fa ed
è stata fortemente influenzata dalla mia precedente conoscenza del Pascal.
Se avessi conosciuto meglio il C++, allora avrei optato per quello,
rimanendo però sempre nell'ambito RAD.
I due ambienti di sviluppo hanno molte cose in comune e ciò che veramente
cambia è proprio il linguaggio di programmazione. Il linguaggio C mi sembra
più ostico rispetto al pascal....almeno agli inizi.
Riguardo le potenzialità offerte dai due, credo che in qualche modo si
equivalgono. Insomma non mi è mai capitato di trovarmi in condizioni di
dire: "cavolo.......questa cosa non riesco a farla con Delphi.....con il C++
Builder sarebbe stato uno scherzetto".
Da qualche settimana sto smanettando un po' anche con il C++ Builder....ma
ho già qualche vecchia conoscenza del C++, ma nulla di speciale.
L'unica cosa che mi da l'entusiasmo di non fermarmi mai è il fatto che
riesco a fare un parallelismo tra Delphi ed il C++ e quindi il codice me lo
trovo di conseguenza.
Come ti ho detto, a livello di applicazioni non avrai problemi scegliendo o
l'uno o l'altro. Anche per i giochi, se vuoi divertiri, un simpatico
giapponese ha già creato un fantastico componente ( freeware ) per usare le
famose librerie DirectX senza impazzire.
Il fatto che molti giochi siano stati sviluppati in C, non è una questione
di potenzialità, ma credo sia collegata in qualche modo all'età del C.
Insomma ai tempi del DOS, di che so io, i giochi sono sempre stati fatti in
C con qualche ritocco di assembler o roba del genere.....diciamo che a quel
tempo il C riscuoteva maggior successo in quest'ambito.
Poi anche il pascal si è fatto avanti e sotto Windows si sono trovati sulla
stessa barca anche se qualcuno non lo vuol ammettere.
Infatti ora mi pare che stanno sulla stessa barca altrimenti io non
programmavo con Delphi e tu non avresti fatto questa domanda.
Visto che le sofware house hanno sempre fatto i giochi con il C, hanno
preferito continuare per la loro strada senza complicarsi la vita.
Anche perchè se tu fai parti di un team che fa giochi in C, tu non gli puoi
mica dire: "ah....io faccio tutto con Delphi" e viceversa.
Per finire, è una scelta che devi fare tu, considerando anche il fatto che
molto presto uscirà ufficialmente il famoso Kylix ( Delphi sotto Linux ).
Non so molto i dettagli di questo progetto, ma è comunque una cosa
interessante.
Ti saluto......ciao e scegli bene !!
Antonio Tarolla

 Builder qual'e' il migliore??
ahhahahh e' il mio incuboooo!! :)
io uso Delphi, ma conoscendo qualcosa di C++ ho provato anche C++Builder,
i due ambienti sono estremamente simili, fatta eccezione ovviamente per
il linguaggio di base, in pratica gli oggetti VCL sono gli stessi, quindi
direi che le differenze si possono ridurre a "Object Pascal vs C++".
Il c++ e' piu' vecchio, + famoso, e di conseguenza + usato e + standard,
ha alcune features in piu' che trovo molto potenti quali l'overload degli
operatori, la prima volta che l'ho visto mi sono detto, "cacchio che
figata" pero' nella pratica non ne vedo la stretta necessita'. L'object
pascal  e' piu' semplice e chiaro da leggere, ma ha anch'esso "cose" che
il C++ non ha vedi variant types, assembly in line, thread "built in"
ecc...
Pero', non so se e' la mia impressione ma mi sembra che la Borland dia
sempre piu' spazio a Delphi anziche' al BC. Uscira' delphi  for linux
per primo anziche' il CB, le vcl sono scritte in pascal (anche quelle del
CB), negli articoli viene sempre detto "Delphi and C++Builder" ;)
... boh e' forse e' solo una mia impressione
Ciao,
Alan Solo

Grazie 1000 per la risposta...
Io conosco abbastanza bene il Pascal, un po' di meno il C, ma c'e' da tener
conto anche del fatto che per me una cosa piu' e' "difficile"  e piu' mi
entusiasma :)
La gestione delle VCL comunque e' la stessa, dico giusto? Giustamente ci
saranno delle differenze, come l'operatore "." al posto del "->", ma alla
fine la logica di base dovrebbe essere uguale, no?
Il fatto che sono un po' piu' propenso verso il C++ e' che mi offre la
possibilita' di scendere un po' piu' in basso di livello piuttosto che
Delphi (almeno questa e' l'impressione a prima vista) e poi non lo so, ma
personalmente credo che se conosci bene ma bene bene il C++ tutti gli altri
linguaggi poi diventa + semplice riuscire ad impararli; te lo vedi un
programmatore cobol e basic(sotto DOS!!) che un bel giorno vuole passare a
C++?? Non mi sembra una cosa tanto semplice, mentre invece al contrario (C++
Vs. resto del mondo) secondo me e' molto piu' facile...
Va beh, e' meglio che la smetto qui e riapro il C++ (sto usando il 5.5 della
Borland, quello gratuito... e' stupendo!) altrimenti non imparo +!!
Grazie 1000 della risposta!
Leo
-- 
Posted from 
smtp3.libero.it
 [193.70.192.53] 


potuto condividere.
Perche' lo conosci ?
Conosci Eiffel, il C++ e l'Object Pascal per poter giudicare in un
confronto tra essi ?
Io dico solo che se i linguaggi non si conoscono, non ci si dovrebbe
pronunciare.
--
Andrea Laforgia (ICQ 87230455)
"programmatori si nasce, non si diventa".

di potenzialità, ma credo sia collegata in qualche modo all'età del C.
No, il fatto che venga scelto il C (senza con questo voler aprire una
discussione sui linguaggi da usare (ognuno usi quello che gli piace))
e' perche' questo linguaggio offre delle potenzialita' maggiori di
altri (un esempio spicciolo e' la gestione dell'aritmetica tra
puntatori, per esempio). Tra l'altro si sa che il C e' un linguaggio
di livello intermedio (diverso, quindi dal Pascal).
Comunque, parlando di BC++B, si parla di C++, non di C, e il C++ e' un
linguaggio molto diverso dal suo antenato.


Borland, quello gratuito... e' stupendo!) altrimenti non imparo +!!
Il C e il C++ hanno un grande vantaggio (non solo di tipo
sintattico/semantico) rispetto a Object Pascal : posseggono uno
standard internazionale. E questo fa si' che siano portabili sotto
praticamente tutte le piattaforme di sviluppo. E questo e' cio' che
influisce, poi, sulla richiesta di programmatori da parte del mercato.
Datti da fare per imparare il C++ e vienici a trovare su
it.comp.lang.c e it.comp.lang.c++.


ecc...
Spero tu stia scherzando.
Non c'e' nulla che Object Pascal abbia in piu', rispetto al C++ (o
che, comunque, non sia ricostruibile con classi).
Il C++ e' un linguaggio che pone l'accento fortemente sui tipi e
l'overload degli operatori e' solo (come dice Bruce Eckel) un
"syntactic sugar", nulla di cosi' importante.
Non e' questo uno degli elementi che fanno la differenza tra i due
linguaggi. 


 "syntactic sugar", nulla di cosi' importante.
porca v@cc@ (scusa per lo sfogo) io veramente sto vivendo
nell'indecisione, l'unica cosa sicura e' che voglio un RAD,
e i prodotti Borland sono ottimi sotto questo aspetto,
il "problema" e' BC o Delphi? Delphi penso di conoscerlo ormai abbastanza
approfonditamente e non gli manca niente, voglio dire, come disse Cantu',
tanto per fare anch'io una citazione, "non utilizzare una tecnologia se
non se ne traggono vantaggi"
(o qualcosa di simile, e' un vecchio post ;))
quello che voglio dire, non so se ne vale la pena, cioe' io potrei
passare anche ora al BC senza grossi problemi, pero' non hai livelli con
i quali sono con Delphi...
cmq, la tua e' una campana, sul sito di Borland ho visto questo
http://www.oreilly.com/catalog/delphi/chapter/ch02.html
dai un'occiata alla tabella 2.1
Ciao,
Alan Solo

dai un'occiata alla tabella 2.1
E' un confronto semplicemente assurdo.
Innanzitutto si confronta Delphi (che e' un ambiente di sviluppo) con
C++ (che e' un linguaggio) ed e' quindi un confronto errato.
Riportando il confronto tra Delphi e C++ Builder (che e' quello
corretto) si ha che il C++ Builder implementa TUTTO quello che c'e' in
Delphi.


 relativamente alla OOP.
beh, quel "molto grossi" togliamolo dai...
Ciao,
Alan Solo

beh, quel "molto grossi" togliamolo dai...
Mi piacerebbe, ma purtroppo, se confrontato al C++, ha dei difetti
"enormi".


 linguaggio molto diverso dal suo antenato.
sono d'accordo.....se ho scritto C è solo per abbreviare anche perchè già il
nome Borland C++ Builder dice tutto.
Ti saluto....bye bye
Antonio Tarolla

 entusiasma :)
In tal casi ci sono varie possibilità :-):
- Turbo C++3.1 x windows
- Assembler
- Scrivi direttamente il codice in esadecimale
- VB

 pronunciare.
Non mi sono pronunciato, ho solo detto che se il riferimento fosse stato
Eiffel, preso come modello di riferimento in molti testi che trattano
programmazione OO, avrei potuto condividere.
--
- Carlo -
c-b...@libero.it

 - VB
QUI NON MERITI RISPOSTA.
A parte il fatto che gia' ci smanetto abbastanza bene(lo uso x lavoro),
penso che x VB dovrebbero aprire un altro NG e chiamarlo
IT.COMP.LANG.GIOCATTOLI  :)
Cmq grazie della risposta & a presto!


Motiva!
Ci sono diversi motivi, alcuni dei quali gia' esposti.
Un assaggio e' la gestione dei costruttori/distruttori delle classi
(pessima a mio avviso in Delphi e buona in C++) ma, come gia' detto,
non si puo' fare un confronto che non occupi centinaia di righe.


non riesco a fare ?
In Delphi (non ne ha colpa l'Object Pascal, perche' e' un'eredita' del
Pascal) non e' possibile compiere un'aritmetica su puntatori. Non e'
possibile, in particolare, usare i puntatori alla stregua degli array
(come invece e' possibile, con qualche distinzione in alcuni casi,
fare in C e in C++). 
Esempio : 
se scrivo in C :
unsigned long *ptr ;
alloco memoria :
ptr = malloc( 10 * sizeof( unsigned long ) ) ;
poi posso gestire i valori puntati come :
ptr[0], ptr[1], ecc... sino a ptr[9]
Addirittura posso scrivere 0[ptr], 1[ptr], 2[ptr], proprio perche' in
C esiste una aritmetica dei puntatori che afferma che addizionare un
valore intero k ad un puntatore tipizzato fa si' che esso punti
all'elemento k nella sequenza.
Cioe', scrivere :
*(ptr + 2) equivale a scrivere ptr[2]
e' per questo che ptr[2] e' riscrivibile come 2[ptr], perche' si ha
che :
*(ptr + 2) = ptr[2] = 2[ptr] = *(2 + ptr)


 *(ptr + 2) = ptr[2] = 2[ptr] = *(2 + ptr)
si' caruccia, pero' e' una "fighettata" che no serve a nulla.
(scusami ma non so perche' sono portato a difendere delphi,
non lo so, mi e' simpatico ;))
Ciao,
Alan Solo

non lo so, mi e' simpatico ;))
Non sto affermando che serva a qualcosa.
Ti sto solo spiegando che cosa e' l'aritmetica dei puntatori in C,
perche' me lo hai chiesto.
Ribadisco : I confronti due linguaggi si possono fare quando i
linguaggi si conoscono.


cacchio. mi ero totalmente perso questo thread !
--
 _______________________________________
        Gnaffy SoftWare
   web: 
http://gnaffy.tripod.com/
   e-mail: Gna...@Wappi.com
   e-mail: 
bmq...@tin.it
   ICQ#: 76488613
 ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

 non si puo' fare un confronto che non occupi centinaia di righe.
Qui hai preso una cosa che è un "TUO avviso", cosa che non è oggettiva.
Ripeto se mi avessi detto "Perchè si" saremmo allo stesso punto.
--
- Carlo -
c.b...@libero.it
ps: il mio NON è un tono da flame, per cui vediamo di restare nella
discussione civile.

ptr[0], ptr[1], ecc... sino a ptr[9]
ma no, perche' ? anche ptr[92374823642837364].
andra' un po fuori dalla memoria, ma... insomma...
p.s.
resisti Andrea !!!  :-O

 conoscono.
non dico di conoscere c/c++ al 100% (sarebbe impossibile) e neanche
al 100% le basi pero' penso che la mia la possa dire...
Alan Solo

 "enormi".
Non gettare il sasso per poi nascondere la mano: spiegaci quali sono i
difetti "enormi" di Delphi riguardo la OOP; cioč fammi un esempio di cosa
puoi fare "praticamente" in C++ e che non puoi fare in OP.
--
(* MBSoftware *)
{ 
http://web.tiscalinet.it/mbsoftware
 }
///asibiri

 fare in C e in C++).
e comunque:
ptr : pointer;
a:integer;
a:= 2;
ptr := pointer ( integer(ptr) + a );
Non molto bello e comodo... su questo non c'č dubbio... perň fa il suo
compito, no?
(non abbiamo addizionato un intero ad un puntatore, č vero... ma il
risultato non č uguale?)
Ciao, Davide DG

 puoi fare "praticamente" in C++ e che non puoi fare in OP.
eheheh......guai chi ti tocca il Delphi !!! :-))))
Ormai questo thread è diventato di vitale importanza. Sicuramente quello che
l'ha iniziato avrà una confusione pazzesca in testa !! :-))
Ok, ci sentiamo. Ora sentiamoci i punti deboli di Delphi.
Ciaoo !!
Antonio Tarolla

 "programmatori si nasce, non si diventa".
affermazione filosofica molto dura !!
Ti saluto.....ciao !!!
Antonio Tarolla

migliore??
Aggiungo le mie 50 lire:
Se ne hai la possibilita': entrambi.
Se conosci il Pascal, il passaggio imho +logico e' Delphi: per diverso
tempo l'ho usato in modo procedurale senza neanche accorgermene: il
passaggio all'OOP diventa una esigenza naturale una volta che prendi
confidenza con la VCL.
Sebbene lo stesso sia possibile col C++, mi sembra che comunque la curva
sia piu' ripida (il che in un certo senso puo' essere un bene).
BCB ha tutta la VCL ed e' cmq un BCC32 completo. Se vuoi programmare per
Win32 senza VCL questo puo' essere un vantaggio.
Delphi senza la VCL e' un tantinello piu' dura.
Infine: difficile che gli annunci di ricerca del personale richiedano
conoscenze di Delphi; piu' probabili C++ o Java (quando non VB!).
Saluti
Paolo Arosio

Personalmente uso sia Builder che Delphi, ma ognuno per un suo motivo.
La cosa che mi compiace e che le VCL dei due IDE (parlo del 5.0 per
entrambi i linguaggi) sono quasi del tutto simili
(utilizzo le versioni professional).
Dire quale sia il migliore non é possibile. A monte vi sono sempre
delle scelte motivate.
Queste sono le mie motivazioni base:
- uso delphi per creare i miei controlli VCL.
  Realizzare nuovi controlli con Builder non é difficile, ma sicuramente
  lo é di più che non utilizzando Delphi. Innanzitutto i sorgenti VCL sono
  in pascal il che ti aiuta nel capire/riutilizzare e via cosí.
  Il codice necessario risulta leggermente minore, più chiaro da
  comprendere. Poi vi sono alcuni problemi dovuti alla non piena
riproducibilità
  della sintattica Pascal con il C++. Per esempio basta guardare come é
  stato riprodotto il tipo TBorderStyle in Forms.pas:
  TFormBorderStyle = (bsNone, bsSingle, bsSizeable, bsDialog,
     bsToolWindow, bsSizeToolWin);
  TBorderStyle = bsNone..bsSingle;
  Quando in Object Inspector imposti la proprietà BorderStyle trovi
solamente
  bsNone e bsSingle.
  Creando un controllo in Builder ed utilizzando la proprietà BorderStyle te
  li troverai tutti poiché in C++ viene trasformato con:
  enum TFormBorderStyle { bsNone, bsSingle, bsSizeable, bsDialog,
    bsToolWindow, bsSizeToolWin };
  typedef TFormBorderStyle TBorderStyle;
  Ti assicuro che impostandolo diversamente da bsNone e bsSingle avrai
  crash a manetta. Questo non é altro che uno dei tanti problemi.
  Se realizzi un componente in Delphi lo potrai utilizzare anche in Builder,
  mentre il contrario no !
  E via cosí
- uso Builder per creare i miei programmi.
  Questo perché utilizzando in modo intensivo la programmazione OOP
  mi sono trovato per alcuni motivi avvantaggiato da questo linguaggio.
  Non vorrei che comunque la mia scelta a riguardo fosse stata incoraggiata
  dal fatto che avevo già una grande esprienza in programmazione OOP con
  C++ mentre in object pascal, a parti i componenti, non ho mai fatto un
gran
  che.
Sicuramente il codice object pascal risulta piú semplice da leggere del C++,
in cui overload operatori, include file da paura, template a nastro, ed
altre cose
del genere si sono utili ma non aiutano sicuramente la lettura del codice.
Personalmente penso che la capacità di vedere "sotto" come te la definisci
ci sia in entrambi, sicuramente in object pascal troverai una tonnellata di
codice sorgente da sbirciare quandi anche questa cosa non é da
sottovalutare.
Per ultimo, la velocità di compilazione di Delphi é veramente incredibile,
come
anche la velocità di esecuzione dello stesso, che in piú momenti ho rilevato
superiore a quella del C++ Builder.
A te la scelta....

 conoscenze di Delphi; piu' probabili C++ o Java (quando non VB!).
su questo punto non sarei cosě sicuro. E' vero che la richiesta di
programmatori (soprattutto Java) č fortissima, ma ti assicuro che la
richiesta Delphi cresce in maniera pressochč terrificante.
Da quando ho terminato gli studi ho ricevuto ben 13 offerte di lavoro come
programmatore, di cui la maggior parte come programmatore Delphi ... questo
"fenomeno" non ha nulla di paranormale, semplicemente le aziende che
richiedevano informazioni all'istituto presso il quale mi sono diplomato
sapevano che i neo-diplomati avevano "studiato" Delphi.
Ciao! :)


E hai accettato ad una allla fine?
p.s. che studi hai fatto?
rhymes
rhy...@tiscalinet.it


 p.s. che studi hai fatto?
ITIS specializzazione informatica.


Mi sembri un pò me ^_^
Anche io sto facendo l'ITIS informatico, e ho intenzione di
fare ingegneria informatica a milano.
rhymes
rhy...@tiscalinet.it


 fare ingegneria informatica a milano.
Io non ho optato per Ingegneria, ma per Informatica pura. Ingegneria
richiedeva i primi 2 anni di solo Fisica/Matematica/Chimica, e siccome non
avevo voglia di studiare cose che non mi piacevano ho preferito informatica
pura. Infatti adesso ad Informatica devo dare 2 esami: Matematica Discreta e
Programmazione 1, mischiando le cose "pesanti" con quelle più piacevoli
tutto risulta più semplice!
Cmq anche io sono di Milano.
Ciao!


tutto risulta piů semplice!


 avevo voglia di studiare cose che non mi piacevano
Sigh... e io che mi sto sparando un mare di chimica e mi sono già sparato un
mare di fisica 8-|
Domani ho compitino di chimiche ... sigh... non so nulla ... crepi il lupo!!
Effettivamente siete (siamo) un po' OT ... !!
CIAO!! Davide DG

 Effettivamente siete (siamo) un po' OT ... !!
Gli OT non sono vietati, soprattutto in presenza di Flames!
