Newsgroup: it.comp.lang.delphi
Titolo: VB vs Delphi

Ciao a tutti,
Sono un programmatore per hobby, ho sempre usato VB.
Ho deciso di cambiare perché non sopporto piu' MS.
Ho deciso quindi di migrare verso Delphi. Ho scaricato la ver 6.0 ed ho
cominciato ad usarla.
Non posso per ora dirvi se é meglio un programma VB o Delphi pero ho la
sensazione che l'IDE di VB sia migliore. per esempio: per evitare di fare
degli errori d'ortografia dichiaravo le mie variabili mettendo la prima
lettera in maiuscolo. Quando usavo questa variable nel listato la scrivevo
tutta in minuscolo e se non facevo errori l'IDE di VB mi metteva la prima
lettera in maiuscolo. Questo mi dava la certezza di non aver fatto errori.
E poi perché molte parole chiave, tipo STRING o ARRAY o FORcc. me li mette
in grassetto al contrario di INTEGER, STR, VAL ecc.?
Forse non so usare ancora delphi, ma se é cosi, illuminatemi.
Ciao e grazie.

 wrote in message
news:3c8e092f$0$14889$626a...@news.free.fr...
E poi perché molte parole chiave, tipo STRING o ARRAY o FORcc. me li mette
in grassetto al contrario di INTEGER, STR, VAL ecc.?
Forse non so usare ancora delphi, ma se é cosi, illuminatemi.
Tool->Editor Options -> linguettina Color

 Questo mi dava la certezza di non aver fatto errori.
Il problema con Delphi non si pone neanche.
Object Pascal ti obbliga a dichiarare tutte le variabili utilizzate.  
Se sbagli il nome di una variabile, vuol dire che stai cercando di usare
una variabile che non esiste e il compilatore ti blocca in fase di
compilazione del programma. Meglio di cosi'...
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 lettera in maiuscolo.
anch'io sono migrato (da un po' ormai e preciso, senza rimpianti) da VB a
Delphi per cui capisco che all'inizio l'impatto può sembrare difficile
(parere personale: è solo questione di abituarsi), cmq ai post precedenti
aggiungo (è la cosa più banale e ovvia ma potrebbe esserti sfuggita) che ci
sono dei meccanismi denominati Code Completition, Code Insight e Code
Parameters che permettono di scrivere per esempio:
    app
e poi premere CTRL+SPACE per vedere una lista (intelligente, cioè con solo
le variabili, le costanti, procedure, funzioni, ecc.. effettivamente
disponibili in quel punto del codice senza errori) e continuare a digitare
per restingere la lista delle voci oppure premere RETURN per selezionare la
voce.
In questo caso per esempio scrivo
    Application.
e premo CTRL+SPACE, ecc...
Il meccanismo ha un'intelligenza molto superiore a quello fornito da VB6 (ce
ne si accorge solo usandolo) e permette di scrivere codice molto
velocemente. Nota che la finestra del Code Completition è ridimensionabile e
ha un context menu per cambiare il tipo di ordinamento degli items.
Il Code Insight è altrettanto comodo e permette di scrivere per esempio
    m
e premere CTRL+J per espandere il tutto in qualcosa come
  case Application.MessageBox(
   PChar('|'),
   PChar(Application.Title),
   MB_YESNO + MB_ICONQUESTION) of
  IDYES:
    begin
    end;
  IDNO:
    begin
    end;
  end;
(dove | sta per la posizione del cursore dopo l'espansione)
sempre che tu l'abbia definito in Tools > Editor Options > Code Insight,
naturalmente. Premendo CTRL+J in un punto vuoto si ha la lista di tutti i
templates disponibili.
Infine, Code Parameters funziona in maniera anche più estesa di VB e si
ottiene o in automatico alla scrittura di una funzione o procedura o
premendo CTRL+SHIFT+SPACE (lista dei parametri disponibili anche per le
funzioni overloaded).
Infine, quella che reputo una grande comodità è che se nella scrittura di un
tipo come il seguente
type
  TFmChatMain = class(TForm)
    //........
  private
    procedure AddUser(UserName, Address: string);
  end;
scrivo lo dichiarazione della procedura privata AddUser e premo
CTRL+SHIFT+C, viene automaticamente aggiunto il seguente codice
procedure TFmChatMain.AddUser(UserName, Address: string);
begin
end;
e posso spostarmi dal corpo di una procedura alla sua dichiarazione con
CTRL+SHIFT+ARROWUP e viceversa con CTRL+SHIFT+ARROWDOWN. Forse non sai anche
che si può NAVIGARE attraverso i sorgenti tenendo premuto CTRL e cliccando
col mouse su variabili, costanti, tipi, procedure, ecc... (per non perdersi
tra i sorgenti e tornare al punto di partenza poi nella finestra del codice
ci sono in alto a dx due frecce celesti, che hanno la stessa funzione di
"Indietro" e "Avanti" di Internet Explorer).
Code Completition funziona anche in altri casi, ma il più utile in assoluto
trovo che sia nel caso delle proprietà, infatti se scrivo:
type
  TFmChatMain = class(TForm)
    property Example: Integer;
e premo CTRL+C ottengo l'aggiunta automatica delle seguenti righe nella
sezione private del tipo:
  private
    //.......
    FExample: Integer;
    procedure SetExample(const Value: Integer);
e anche l'aggiunta di questo codice:
procedure TFmChatMain.SetExample(const Value: Integer);
begin
  FExample := Value;
end;
(anche se personalmente trovo che sarebbe meglio se la funzionalità
aggiungesse invece codice come questo:
procedure TFmChatMain.SetExample(const Value: Integer);
begin
  if FExample <> Value then
  begin
    FExample := Value;
  end;
end;
)
Ma c'è molto, molto, molto altro in più di VB e cito per esempio: breakpoint
condizionali, possibilità di scrivere codice assembler all'interno delle
procedure, vista dello stato della CPU e dei registri, possibilità di
commenti nidificati e multilinea con //, {} e (* *). Tip: le {} si ottengono
facilmente con SHIFT+ALTGR+[ e SHIFT+ALTGR+].
Bye e buon divertimento con Delphi.
--
Mauro Falzari.
"Se guardi nell'abisso, anche l'abisso guarda in te."
(Friedrich Nietzsche)

Ciao Marco
io, invece, ho fatto il percorso inverso ed ho approcciato VB in una seconda
fase.
Quello che secondo me fa una buona parte della differenza e' il fatto che VB
non implementa
tutti e tre i paradigmi della OOP (scusate se non menziono le altre 10000
caratteristiche) e
questo si sente un po' quando programmi architetture che hanno poco a che
fare con l'interfaccia
grafica: l'ereditarieta' e' insostituibile in molti casi.
Per quanto riguarda l'editor, mi sento invece in dovere di contraddire i
"colleghi" ed anche ammettendo
che spesso e volentieri Delphi ha precorso i tempi anche dal punto di vista
dell'IDE, devo dire che
le performance dell IDE Microsoft sono piuttosto buone: Code completion
immediata, tempi di caricamento
dell'IDE nettamente inferiori a Delphi e decisamente meno bachi.
Scagli la prima pietra chi non ha mai avuto problemi con l'explorer delle
unit.
Comunque se una discussione deve continuare ti consiglio di accantonare le
caratteristiche dell'IDE
(per quanto non del tutto trascurabili)
Ciao Ciao

Penso che l'IDE di Delphi abbia talmente tante e tali caratteristiche
da renderne lungo l'apprendimento, e spesso non si usano neppure tutte
(come capita a me)
Con un pň di tempo e pazienza sicuramente non rimpiangerai l'IDE di VB
(personalmente, non ne sopporto la vista neppure in snapshot, e quando
devo scrivere qualche breve procedura in VBA di Access mi viene
davvero male.......)
Saluti
Andrea
----------------------------------------------
<< Dubito, quindi potrei essere >>
-----------------------------------------------


Questa é una risposta da stampare e da incorniciare. Grazie.
Ho provato ( non tutte pero )  e ne sono stato stupefatto.

Salve a tutti,
condivido tutto quello che avete scritto, ma se proprio devo dire un
sola cosa che del VB mi manca molto (e che probabbilmente in Delphi
non riesco ad ottimizzare) è la gestione dei bookmark sul codice per
muoversi velocemente da un punto all'altro.
Ciao
Bruno

muoversi velocemente da un punto all'altro.
Guarda che c'è!
CTRL + MAIUSCOLO + numero = imposto bookmark alla riga corrente
CTRL + numero = vado al bookmark
Attenzione:
se fissi un bookmark usando un indice già presente, lo sovrascrivi.
Non basta ?


 Ciao e grazie.
Prego, e se mi vuoi fare un favore usa Delphi piuttosto che VB, Ciao e buon
lavoro con il magnifico Delphi.
Xoen
xo...@libero.it