Newsgroup: it.comp.lang.c++
Titolo: OT VB to VC++

Ciao a tutti,
vorrei porre una domanda (che prob molti hanno già fatto):
sto valutando l'idea di iniziare VC++ proveniendo da VB e conoscendo
abbastanza bene OOP (sono nel ramo programmazione da 13 anni - ho iniziato
con TURBO PASCAL OOP :-)).
Conosco genericamente il linguaggio C (università).
Realizzo programmi professionali ed ora anche in C/S con tecnologia ADO,
COM, DCOM.
Quali saranno le difficoltà iniziali + grosse secondo voi? (qualcuno avrà
pur fatto questa strada...)
Per quanto riguarda i vantaggi, immagino, la potenza del linguaggio.
Ringrazio e mi scuso per l'OT
Franco

Penso che la difficoltà più grossa sia passare dal VB al C++ ^_^
Comunque date le tue conoscenze non penso che avrai ulteriori
problemi, ti impari la sintassi e l'OOP in C++ e poi approfondisci
quel che ti interessa usando VC++ come ambiente di sviluppo.
rhymes
rhy...@insieme.net
"La realtà delle cose si nasconde dietro 
la loro reale apparenza (Maestro Hiamuri)"


 pur fatto questa strada...)
Direi che per quanto riguarda il linguaggio potresti avere qualche
difficolta' a capire alcuni costrutti sintattici (dichiarazioni, e
template soprattutto) e a comprendere tutta la logica dei template. Se
vuoi capire molto bene il funzionamento del preprocessore, anche
questo argomento non e' banale (io stesso piu' di tanto non mi ci
raccapezzo) ma non e' fondamentale ne necessario (anzi e'
sconsigliato) fare troppi giochetti con le macro.
La vera difficolta' non sta nel linguaggio ma nella piattaforma
(quindi ricordati che ui' saresti OT). In particolare dici di lavorare
in VB e di usare ADO, COM e DCOM (e suppongo anche degli elementi
dell'interfaccia utente come finstre, bottoni e cose simili).
Quando passi al C++ sappi che l'accesso a tutte queste tecnologie lo
ottieni "down to iron". Immaginati di lavorare con un vecchio commodor
64. Se abituato ad usare il suo Basic (quello vecchissimo con i numeri
di linea davanti alle istruzioni). Pero' ti da accesso alle varie
funzioni del linguaggio. Supponi di dover scendere all'assembler. Su
quel procesore la matematica in assembler voleva dire somme e
sottrazioni fra interi. Niente moltiplicazioni. Niente divisioni.
Manco a parlare di floating point. Ora immagina di dover lavorare con
un problema di trigonometria.
Si puo' fare? Si certo. Non ti resta che scrivere nell'ordine:
-) routine di moltiplicazione e divisione fra interi basate su somma e
sottrazione
-) routine di somma e sottrazione fra floating point basate su
aritmetica intera
-) routine di moltiplicazione e divisione fra floating point basate su
somma e sottrazione e/o sull'aritmetica intera
-) le altre routine floating point (trigonometria, radici etc.)
Ecco: la sensazione che avrai sara' quella.
Quello che VB magari fai in una riga in C++ ti richiede alcuni moduli.
Ma non per il linguaggio: per le API di M$. Il VB non e' basic. Lo
hanno inventato loro. E quando tu scrivi una riga lui genera 4
chiamate a routine della libreria interna di VB (che non esiste in
C++) e ciascuna di queste routine e' scritta in C e consta di
parecchie decine (e spesso anche qualche centinaio) di linee di
codice. In C++ te la devi scrivere da te.
Come quando sul commodore passi dal basic all'assembler. E quello che
devi scrivere e':
10 INPUT A
20 INPUT B
30 PRINT SQR( SIN(A) + COS(B) )
Andrea Ferro
---------
Brainbench C++ Master. Scored higher than 97% of previous takers
Scores: Overall 4.46, Conceptual 5.0, Problem-Solving 5.0
More info 
http://www.brainbench.com/transcript.jsp?pid=2522556