Newsgroup: it.comp.lang.delphi
Titolo: [lungo]: consigli per un potenziale programmatore Delphi...

Salve a tutti ragazzi, contravvengo alla usuale regola che un newbie di un
NG debba lurkare per un po' di tempo prima di postare per la prima volta, ma
il mio tempo è veramente esiguo, per cui ecco la presente... (scusate...)
Il problema è che sono un *appassionato* di programmazione, ma in realtà ho
programmato poco e niente, poco + che le tesine che ho dovuto approntare per
_fondamenti di informatica_ in turbo pascal...
Per il resto ho appreso (in teoria) i rudimenti della programmazione in C,
C++ ed ultimamente anche in Java, purtroppo non ho il tempo materiale da
spendere per mettere in pratica quello che ho appreso - e sono del parere
che i suddetti linguaggi necessitino di un lungo periodo per essere
produttivi (beh, io in effetti vorrei fare solo qualche programmino, niente
di impegnativo...) -, e vorrei sapere se mi consigliereste di passare a
Delphi (sebbene siate evidentemente di parte... :) ) date le mie *discrete*
conoscenze di TP (nel senso che è l'unico linguaggio il cui studio ho avuto
modo di mettere in pratica).
Vorrei sapere se il passaggio dal TP a Delphi è, a vostro parere, *indolore*
oppure no...
Del TP non ho mai appreso le funzionalità orientate agli oggetti; ho
utilizzato la versione 5.0 per le tesine, e mi sembra che ancora non fossero
presenti (comunque il corso in questione trattava la soluzione di problemi
tramite un linguaggio procedurale, non ad oggetti)..., d'altro canto ho
avuto modo di imparare il paradigma ad oggetti con il C++ e Java:
*l'approccio è così diverso?*
Implementa tutte le caratteristiche tipiche dei linguaggi OO (come il C++ ad
esempio)?
Cioè: incapsulamento, ereditarietà, polimorfisno etc. etc.
Esiste il supporto nativo per i thread come in Java?
E le eccezioni?
Ultima domanda: ho trovato Delphi 1.0 su un cd in edicola, è + che
sufficiente per iniziare? e se no, dove mi suggerite di scaricare una
versione, trial magari,  + recente (poi, nel caso mi interessi, ho
intenzione
di comperare il prodotto completo)?
Mi scuso per il messaggio-fiume, e ringrazio chiunque volesse rispondermi
(anche solo parzialmente).
Grazie a tutti per l'attenzione...
santo giuseppe

E le eccezioni?
Si'.
Esiste una gerarchia delle VCL dedicata.
--
Andrea Laforgia (
andrea_...@bigfoot.com
)
---------------------------------------------
#exclude <windows.h>

 Andrea Laforgia (
andrea_...@bigfoot.com
)
Ti ringrazio Andrea.....
santo giuseppe

 
Az! Questa poi, gli argomenti opzionali sono supportati da VB.
Bene, allora devo aggiornare il punteggio: VB vs Delphi 1 a ... 256!
A proposito, potresti essere piu' dettagliato sul polimorfismo?
Di quale genere: overloading su metodi di classe, overloading
su funzioni (stesso nome ma diversi parametri di chiamata),
overriding (di operatori del linguaggio)? E per quanto riguarda
i metodi virtuali, la firma deve essere la stessa o si 
puo' applicare la regola della controvarianza? (Ovvero restrizione
del risultato ad una classe derivata e riduzione degli
ingressi ad una classe madre, rispettando quindi il principio
di sostituibilita' alla base del polimorfismo).
Grazie e ciao
Andrea

>
Mancano pero' molte caratteristiche utili che ci sono in
altri linguaggi come il C++ (vedi i template o l'ereditarieta'
multipla, gli argomenti opzionali per le funzioni...)
<<
Una correzione per quel che riguarda i parametri di default: (v.
Del5Op.hlp) "Default parameters"
Saluti
Paolo Arosio

Del5Op.hlp) "Default parameters"
Non confondere i parametri "di default" con i parametri "opzionali".
Sono due cose ben diverse.


 multipla, gli argomenti opzionali per le funzioni...)
Scusa se mi intrometto, ma perchè dici che non ci sono gli argomenti
opzionali ? Ci sono sia per i metodi che per le funzioni, basta scrivere, ad
esempio
    function MyFunc(ParamUno : Integer = 100)
e usare la funzione con o senza il passaggio del parametro (viene assunto di
default 100). O intendevi un'altra cosa ?
E poi non mi sembra che l'implementazione dell'OO di Delphi sia così male,
anzi è molto pulita e ha una sua coerenza. L'unica cosa di cui sento la
mancanza sono i Template e overloading degli operatori. Certo, non è una
implementzione OO *pura*, ma del resto anche quella del C++ non lo è.
Ciao
Franco B.

default 100). O intendevi un'altra cosa ?
Gli argomenti opzionali sono quelli che possono comporre una lista
variabile di argomenti (opzionali = possono esserci o non esserci), il
che vuol dire che una lista di parametri puo' essere lunga quanto si
vuole, ma il compilatore non conosce il tipo di ogni singolo
parametro, deve essere determinato a run-time.
Gli argomenti di default, invece, sono parametri che vengono
*comunque* passati (ci sono sempre), il cui tipo e' noto al
compilatore a compile-time.


 default 100). O intendevi un'altra cosa ?
Come ha già detto Andrea Laforgia, non sono da confondere gli argomenti
opzionali
da quelli di default.
Un argomento opzionale è per esempio (mi corregga qualcuno se sbaglio!) il
  "Result" della funzione BlockRead.
Gli argomenti opzionali sono "simulabili" utilizzando gli array come
parametri :
   Function FunzAParamOpz ( parametri : array of const ) : integer;
Tuttavia non credo sia proprio la stessa cosa... :)
Ora magari mi vado a vedere il codice della blockread  !!
Ciao! Davide DG

>
Non confondere i parametri "di default" con i parametri "opzionali".
Sono due cose ben diverse.
<<
Pensavo fossero la stessa cosa. Cosa sono i parametri opzionali? In che
contesto risultano utili?
Grazie in anticipo
Paolo Arosio