PDA

View Full Version : Delphi o Visual Basic? Quale preferite?


Marc8
11-10-2008, 09:52
Ciao a tutti,
come da titolo, quale linguaggio preferite fra Delphi e Visual Basic?
Mi piacerebbe imparare uno di questi due linguaggi, ma volevo sentire qualche opinione... premetto che conosco il Pascal, e un po' di Basic.
Grazie

Tommy81
11-10-2008, 10:56
Io preferisco da sempre il Delphi, principalmente perchè il VB è rimasto decisamente indietro rispetto alle uscite annuali del Delphi.
Spesso il VB viene considerato più immediato da imparare per i novizi anche se non sono affatto d'accordo... soprattutto per chi conosce già il Pascal e considerando che questo è nato come linguaggio didattico molto strutturato (il Delphi in questo è solo un'evoluzione... la grammatica di base è la stessa... niente stravolgimenti per chi è abituato a pensare in Pascal).
Inoltre il Delphi è mediamente più veloce, RAD davvero evoluta e sofisticata,suite dei controlli superiore (libreria dei componenti VCL di Delphi neanche paragonabile ai VBX di Visual Basic), oramai si possono creare DLL agevolmente anche con Delphi, Delphi è un vero linguaggio object-oriented (OOP), ottima gestione di Delphi dei database.

variabilepippo
11-10-2008, 11:32
Se il confronto è tra Delphi e VB6 allora la scelta è obbligata (tra una Ferrari nuova fiammante ed una 500 scassata tu cosa sceglieresti?): DELPHI. Delphi poggia su un framework molto solido (la VCL), ha prestazioni notevolmente superiori rispetto a VB, non è un progetto abbandonato, ha un linguaggio ad oggetti serio, supporta Unicode, l'Assembly e tante caratteristiche considerate "moderne", ...

Se invece il confronto è tra VB.NET e Delphi, allora se ne può discutere... :)

Marc8
11-10-2008, 11:47
Grazie a tutti, mi avete chiarito le idee...
infatti stavo pensando proprio al Delphi, e penso che studierò questo.
Domanda un po' stupida: con Delphi si possono fare gli stessi "programmi" del Visual Basic e viceversa?

Tommy81
11-10-2008, 11:59
Grazie a tutti, mi avete chiarito le idee...
infatti stavo pensando proprio al Delphi, e penso che studierò questo.
Domanda un po' stupida: con Delphi si possono fare gli stessi "programmi" del Visual Basic e viceversa?

Con Delphi puoi fare potenzialmente TUTTO, dipende solo dalle tue capacità.

variabilepippo
11-10-2008, 12:07
Con Delphi puoi fare tutti i programmi che puoi fare anche in VB6 (in maniera più elegante, professionale e performante), non è vero il viceversa. Come ti ho detto prima Delphi ha un framework molto potente ed un vero linguaggio orientato agli oggetti.

variabilepippo
11-10-2008, 12:08
Con Delphi puoi fare potenzialmente TUTTO


Quasi tutto, anche se qualcuno (un folle) si è "divertito" nella creazione di un wrapper del DDK, in Delphi non è consigliato sviluppare device drivers. Per tutto il resto... C'è Delphi! :)

Marc8
11-10-2008, 16:47
Altra domanda da ignorante: Delphi e C++ sono 2 cose completamente diverse o hanno qualcosa in comune?

variabilepippo
11-10-2008, 16:59
Hanno in comune il fatto di essere 2 linguaggi di programmazione che condividono gli stessi paradigmi, con entrambi si può programmare ad oggetti o in modo procedurale... E' un po' come confrontare l'italiano con l'inglese, con entrambe le lingue puoi dire tante cose, ma hanno grammatiche/sintassi/lessici/livelli di diffusione/prolissità diverse.

Il linguaggio usato da Delphi è l'Object Pascal.

Marc8
11-10-2008, 17:14
Però, se non mi sbaglio, il Delphi è "solo per" i programmi Windows (volendo anche Linux) "con le finestre", mentre con il C, C++ ecc. oltre a questi programmi si possono fare anche tante altre cose... (che menata ho scritto? :eek:, correggimi se sbaglio :D )

variabilepippo
11-10-2008, 17:35
Infatti ho tirato in ballo i "livelli di diffusione"... Delphi/Kylix esistono per Windows/Linux (e su tante altre piattaforme se si prende in considerazione FreePascal), compilatori C/C++ invece esistono per tutti i sistemi operativi ma questo non implica che:

1) Scrivere un programma in C/C++ significhi farlo girare automaticamente su Windows/Linux (anzi!!!);

2) Convenga usare il C/C++ solo perché è un linguaggio più diffuso. Se l'obiettivo è, per esempio, creare un programma per Windows e tu impieghi 1 anno per svilupparlo in C++, mentre io (con molta meno fatica) lo finisco in 3 settimane allora forse uno di noi 2 non ha scelto lo strumento migliore. :rolleyes:

3) Con Delphi tu non possa sviluppare programmi "senza finestre" (console applications, Windows services, siti Web dinamici, ...)

C/C++ sono indispensabili in alcuni contesti, ma nella maggior parte dei casi non rappresentano la scelta ottimale: esistono linguaggi più produttivi, più semplici da padroneggiare e dunque più programmer-friendly. :)

cdimauro
11-10-2008, 18:08
Delphi è disponibile anche in versione .NET, per cui può generare assembly .NET che potenzialmente potrebbero girare anche su altri s.o. (grazie a strumenti come Mono). :cool:

Marc8
11-10-2008, 20:14
Quindi, concludendo, si può dire che per sviluppare certi programmi, è meglio usare un linguaggio invece che un altro, anche se si può ottenere lo stesso risultato, ma impiegando più tempo e più stringhe... o no? :)

@ cdimauro: interessante anche il Python!

ech0s
11-10-2008, 20:24
interessante anche il Python!
In effetti se proprio devi imparare un nuovo linguaggio, ti conviene molto di più il Python (l'ho fatto anch'io) , cerca i libri che sono nella firma di cdimauro. ;)

Marc8
11-10-2008, 20:33
In effetti se proprio devi imparare un nuovo linguaggio, ti conviene molto di più il Python (l'ho fatto anch'io) , cerca i libri che sono nella firma di cdimauro. ;)Proprio qualche giorno fa ho scaricato quel libro... beh, per ora l'ho solo "sfogliato", ma penso che approfondirò la lettura. Ho sentito parlare bene di questo linguaggio...

cdimauro
12-10-2008, 07:44
Quindi, concludendo, si può dire che per sviluppare certi programmi, è meglio usare un linguaggio invece che un altro, anche se si può ottenere lo stesso risultato, ma impiegando più tempo e più stringhe... o no? :)
Ogni linguaggio ha un diverso grado di produttività, a seconda del tipo di applicazione.
@ cdimauro: interessante anche il Python!
Proprio qualche giorno fa ho scaricato quel libro... beh, per ora l'ho solo "sfogliato", ma penso che approfondirò la lettura. Ho sentito parlare bene di questo linguaggio...
Se devi iniziare è LA strada da seguire: semplice, veloce, elegante, leggibile e con un bel po' di strumenti che ti rendono la vita molto facile.

Comunque io lo uso da 4 anni non soltanto per "giocarci". Tutt'altro. :cool:

Dimenticavo: esiste anche Python 4 Delphi che ti consente di integrare Python in applicazioni Delphi. In questo modo si realizza il meglio dei due mondi: sviluppare facilmente applicazioni dotate di GUI con Delphi delegando quanto più possibile logica a Python. ;)

Marc8
12-10-2008, 10:09
Ogni linguaggio ha un diverso grado di produttività, a seconda del tipo di applicazione.Quindi, per certri programmi è più indicato usare un certo linguaggio invece che un altro?!

Se devi iniziare è LA strada da seguire: semplice, veloce, elegante, leggibile e con un bel po' di strumenti che ti rendono la vita molto facile.Beh, non parto proprio da zero :)

variabilepippo
12-10-2008, 10:22
Quindi, per certri programmi è più indicato usare un certo linguaggio invece che un altro?!


Esatto... I linguaggi di programmazione sono degli strumenti, per esempio, come in alcuni casi bisogna scegliere tra il martello e la motosega in altri bisogna scegliere tra il C ed il Prolog. Poi c'è chi preferisce usare sempre la motosega, anche per piantare i chiodi... ;)

Marc8
12-10-2008, 12:46
Ecco, appunto... è questo che stavo cercando di capire! Qualcuno preferisce usare la motosega per piantare i chiodi, e magari ci riesce :p
stavo cercando di capire se "un linguaggio vale l'altro", sempre che che non ci saino grandi e particolari esigenze... qualcuno conferma? :confused:

variabilepippo
12-10-2008, 13:15
stavo cercando di capire se "un linguaggio vale l'altro", sempre che che non ci saino grandi e particolari esigenze... qualcuno conferma?


Un "Hello World" puoi scriverlo in qualsiasi linguaggio, poi però ci sono:

1) Linguaggi adatti per un particolare scopo
2) Linguaggi inadatti per un particolare scopo
2a) Linguaggi inadatti per quasi tutti gli scopi (es. VB6)
3) Linguaggi con i quali non si può implementare un determinato software (es. prova a sviluppare un device driver per Windows in COBOL)
4) Linguaggi con i quali non si dovrebbe implementare un determinato software
...

Come ti ho detto prima i linguaggi sono strumenti, quindi andrebbero scelti in funzione del loro utilizzo. Nessuno ti vieta di realizzare un'applicazione dotata di GUI in Assembly (tanto per fare un esempio), di sicuro raggiungeresti prima e con minori sforzi l'obiettivo se utilizzassi altri linguaggi.

Marc8
12-10-2008, 14:26
Credo di aver capito...

Marc8
12-10-2008, 16:05
Un "Hello World" puoi scriverlo in qualsiasi linguaggio.Ecco, infatti intendevo programmini così, non troppo complessi...

variabilepippo
12-10-2008, 16:23
E dopo i programmini semplici non vengono, mano mano, quelli più complessi?

"Buongiorno" puoi dirlo in qualsiasi lingua, ma che senso ha imparare a dirlo in tedesco se nel futuro intendi andare a vivere in Cina? :)

Ci sono dei linguaggi relativamente semplici da imparare e abbastanza potenti da poter essere usati con produttività in svariati contesti: Python, Java, C#, Delphi (Object Pascal), ...

Marc8
12-10-2008, 17:00
Ok, grazie per l'aiuto :)
darò un'occhiata al Delphi e al Python, quando avrò abbastanza tempo e voglia, soprattutto :D (per ora programmo, anzi, faccio qualche programma, anzi, qualche programmino solo per hobby...).

Comunque io lo uso da 4 anni non soltanto per "giocarci". Tutt'altro. :cool:Ehm, se posso chiedere... più o meno, che programmi "tiri fuori" dal Python?

cdimauro
12-10-2008, 18:19
Mi occupo principalmente di server (web service, HTTP, Ice), ma realizzo anche applicazioni che lavorano con XML, HTML, file di testo, database, ecc.

Non ho ancora realizzato applicazioni dotate di GUI, ma aspetto soltanto l'occasione buona per farlo.

Marc8
13-10-2008, 16:39
Ho capito... e ti trovi bene con questo linguaggio?

cdimauro
13-10-2008, 19:09
Guarda il mio avatar. :cool:

Marc8
13-10-2008, 19:28
Eheh, potevo evitare la domanda :D