Newsgroup: it.comp.lang.c++
Titolo: Sono nuovo, Aiuto !!!

Premetto che non capisco nulla di programmazione dato che l'ho scoperta da
pochissimo tempo.
Ho "Borland c++ compiler" e anche se ho consulatato la guida in linea sono
riuscito a capire ben poco, allora ho deciso di comprare un buon manuale,
devo comprare un libro "generico" sul C++ o devo chiederne uno specifico per
"Borland c++ compiler" ?
Grazie.
Ellesse
luc...@narni.it

...


"Borland c++ compiler" ?
Diciamo che e` fondamentale un libro che parli solo del C++ senza alcun
specifico riferimento ad un particolare compilatore. In effetti un libro su un
certo compilatore non ti servira` a molto (almeno nella fase iniziale in cui impari
a scrivere piccoli programmi C++).
Sulla rete puoi trovare l'ottimo libro di Bruce Eckel (anche se non e` ancora
completo) e molto altro materiale.
Dai una occhiata a 
http://www.geocities.com/SiliconValley/Foothills/6336/
Paolo
P.s.
   Io comunque sono sempre dell'opinione che il C++ non sia adatto come
   primo linguaggio!
-----------------------------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
-----------------------------------------------------------------

    primo linguaggio!
A rigore anch'io ma il tempo spesso stringe e non ci si può più permettere di
ripercorrere tutte le tappe della programmazione. D'altra parte se è l'OOP che uno
vuole studiare, non sarebbe neanche adatto il C++ in quanto non vincola in alcun modo
lo sviluppatore. In generale il C++ non è un linguaggio didattico, ma è un buon
compromesso.
Quando feci l'esame di Informatica I, il linguaggio era il Pascal (concetto chiave:
programmazione strutturata, gli oggetti? fantascienza). Ora la OOP è quasi scontata e
si inizia subito dal C++.
Penso comunque che un senza una guida un autodidatta ha grosse possibilità di imparare
benissimo un linguaggio e di diventare un pessimo sviluppatore.
--
Gabriele Cannata
g.ca...@bo.nettuno.it

 benissimo un linguaggio e di diventare un pessimo sviluppatore.
Non darei peso tanto alla guida, che può essere (anzi è in molti casi)
pessima, quanto alla propria predisposizione e forza di volontà. Io, ad
esempio, non mi sono mai trovato bene nelle strutture scolastiche.
EMG

benissimo un linguaggio e di diventare un pessimo sviluppatore.
Pensierino del tutto personale:
Il linguaggio è solo una componente (e neppure la più importante) per diventare ottimi
sviluppatori.
Fine pensierino personale.
Andrea

benissimo un linguaggio e di diventare un pessimo sviluppatore.
Infatti e` per questo che sconsiglio il C++ come primo linguaggio, pone pochi vincoli
e un libro non ti fornisce risposte e chiarimenti su domande che non sono state
previste.
Paolo


Fine pensierino personale.
Ottimo pensierino... dovrebbe essere scritto
a caratteri cubitali in ogni aula di informatica...
tipo "La legge e uguale per tutti" nei tribunali!!!!!!


non mi sono mai trovato bene nelle strutture scolastiche.
Le grandi squole (la q e` voluta) italiane!!!!!!!
Saluti,


esempio, non mi sono mai trovato bene nelle strutture scolastiche.
Io mi auguro che si desse per sottointeso di aver a che fare con una guida *buona*. Sono
d'accordo con te circa la predisposizione e la forza di volontà. Però penso anche che se
sei affiancato da qualcuno molto in gamba, puoi imparare moltissimo e molto più in fretta.
Credo che il senso dell'affermazione fosse più o meno questo.
Andrea

 mi piacque subito...
In effetti io iniziai prima di avere un computer sotto mano. E lo studio
teorico dell'informatica (che prima non conoscevo affatto) cambiň la mia
vita e da quel momento ne divenne una delle cose piů importanti. Mi
ricordo che all'inizio i programmi che scrivevo me li eseguivo da solo
come fossi un computer... :-)
EMG


WOW ma allora siete TOSTI!!!!!!!    :)

WOW ma allora siete TOSTI!!!!!!!    :)
Diciamo (per quanto mi riguarda) che ho superato
i 14 anni da un (bel) pezzo!!!!       Ari-sigh!!!
(come si fa la faccina nostalgica?)


programmazione strutturata, gli oggetti? fantascienza). Ora la OOP è quasi
scontata e
Io l'esame di Informatica I lo ho sostenuto lo scorso anno avendo come
oggetto la programmazione in C++. Tuttavia l'80% del corso si sofferma solo
sulla programmazione strutturata, lasciando alle ultime  settimane una
introduzione quantomai veloce delle classi: tanto per dirne una non ci è
stato mai nemmeno spiegato come importare librerie create personalmente,
rendendo di fatto incomprensibile il perchè dell'esistenza di questi
"oggetti"(a che servono infatti se ciascuno può essere manipolato solo
all'interno del file nel quale vi è la definizione della classe stessa?).
Tanto vale a questo punto parlare di C e non di C++ solo per sembrare di
essere una scuola al passo con i tempi.
Marco.

previste.
Ciao a tutti. 
Ho da sempre nutrito un profondo interesse per la programmazione e una
grande fascinazione nei confronti della "macchina", e ho da poco
deciso di cominciare a studiare programmazione sul serio, inventandomi
un percorso che partisse dal C++ per arrivare a Java anche per poter
lavorare meglio su eventuale produzione/vendita di pagine web (lo so,
e' un mercato intasato)...
Non conosco gli altri linguaggi, ma mi sto accorgendo che il C++ da
autodidatta e' davvero una brutta bestiolina, soprattutto se come ho
fatto io hai preso un libro povero di esempi, dai quali e' piu' spesso
facile desumere la regola che dalla descrizione della regola stessa.
Spero di non avere fatto una scelta sbagliata, ma del resto a livello
di passione personale desidero arrivare il piu' possibile "dentro" la
macchina ma tutti mi hanno sconsigliato di cominciare con assembly (se
non volevo finire in manicomio)...
Tutto cio' cmq solo per affermare che sono convinto che la tenacia nel
lavoro possa portare a buoni risultati in qualsiasi cosa, al di la
dell'essere autodidatti o meno.
Aggiungo come post scriptum che ho 34 anni, {sono (o dovrei essere)
quindi oltre la passioni "adolescenziali"}, facendo il musicista
professionista da tempo ho osservato tanti musicisti completamente
autodidatti che con la tenacia (specialmente se accoppiata al talento)
hanno ottenuto ottimi risultati.
Speriamo bene....
Ciao a tutti. Ampex


Beh se è per quello pure io tanto vicino non ci sono :)
Nostalgica? Mah possiamo provare ad inventarla. Che ne dici? :-[
mmmm bruttina no?
Forse è meglio usare la triste comunque.


 essere una scuola al passo con i tempi.
Questo dimostra quanto ho detto sopra. Infatti mi sembra tu non abbia
capito molto bene il senso della OOP. Direi che la possibilità di creare
librerie personali non c'entra molto con le classi e gli oggetti i quali
possono essere utilizzati tranquillamente semplicemente includendoli tra
i files dell'applicazione e compilando e linkando tutto insieme.
EMG

e' un mercato intasato)...
Forse sarebbe stato meglio il percorso contrario, ovvero
iniziare con java e poi passare al C++.
Non ho conoscenze di java tali da poter affermare questo con
completa sicurezza, ma mi pare che le esemplificazioni di
Java siano tali da consigliare tale percorso (ad esempio java non
e` multiparadigma...).


 Grazie.
Io ti consiglierei prima di imparare il linguaggio C, poi, quando lo conosci
bene, non ci vuole nulla per passare alla programmazione in C++ visto che le
differenze non sono molte.
Ciao


Anche io! Sto diventando bravo? :-PPPPP

 hanno ottenuto ottimi risultati.
Alcuni scienziati dicono che il talento musicale sia congenito e dipendente
da alcune conformazioni del cervello.
Non so se sia vero...


 Paolo
:°°°-(

 Marco.
Tu pensa che da me danno per scontata la conoscenza del C e ti dicono un po'
di differenze col C++...
--
San Vegeta from Hell
"...il bugzilla più sgangherato che esista" (La Repubblica)

 Anche io! Sto diventando bravo? :-PPPPP
Non credo. :-))) Io lo facevo perché non avevo il computer...
EMG

Non credo. :-))) Io lo facevo perché non avevo il computer...
Ah Ah Ah!!!!!  ;)
Bella questa, complimenti!
Paolo
P.s.
  Vi e` mai capitato di dover ricopiare degli appunti scritti a mano,
  stare 3 ore a guardarli insieme ad un foglio bianco e a domandarvi
  perche` il cut & paste non funziona?



Non credo scherzasse: lo facevo anche io....
Marco

 Non credo scherzasse: lo facevo anche io....
Infatti non scherzavo affatto. Scrivevo i listati con una vecchia
macchina per scrivere meccanica illudendomi cosě di avere quasi un
computer ma poi quei listati mi toccava eseguirli da solo per
controllarne la correttezza. Sono passati 18 anni...
EMG

controllarne la correttezza. Sono passati 18 anni...
Che non scherzassi l'avevo capito... ci sono passato anch'io
(allora in un laboratorio si dispone di un solo calcolatore per
20 persone oltretutto con solo il registratore a cassetta)
mi era comunque piaciuta la risposta "fulminante" ;)
Paolo


 differenze non sono molte.
Scusami ma il C e il C++ sono due linguaggi che hanno in comune solo il
fatto che il C è (anche se non completamente) un sottoinsieme del C++.
Per il resto sono molto diversi. Basterebbe solo citare la OOP...
EMG

differenze non sono molte.
Non sarei molto sicuro di quanto affermi, C e C++ si basano su paradigmi
radicalmente diversi, non e` semplicemente questione si somiglianza
sintattica.


 differenze non sono molte.
Ohibo... io la penso esattamente al contrario di te... la differenza tra C++
e C è abissale...
Come linguaggio propedeutico al C++ penso sia molto meglio java.

 Paolo
Io mi riferivo alle differenze sintattiche, visto che il linguaggio C++ è
SINTATTICAMENTE uguale al C, ma con alcune aggiunte, Ciao
        Fabio


SINTATTICAMENTE uguale al C, ma con alcune aggiunte, Ciao
Vero, ma la sintassi di un linguaggio e` il problema meno
importante con cui ha a che fare chi deve imparare tale linguaggio.
Tant'e` che gli errori sintattici che all'inizio si commettono in numero
elevato, scompaiono nel giro di poche settimane di esperienza al punto
che dopo un po' si riesce spesso a scrivere codice senza commettere
alcun errore sintattico.
Quello che conta nei linguaggi e` esattamente cio` che sta sotto i vari
costrutti. Da questo punto di vista non solo imparare prima il C e` una
perdita di tempo, ma sarebbe addirittura fuorviante perche` l'ottica
procedurale del C mal si sposa con quella ad oggetti o generica del C++.
Se mi si lascia passare un mio pensierino direi che il motto del C (e di
ogni linguaggio procedurale) e`
"Strutture dati + algoritmi = programmi"
mentre in un linguaggio a oggetti (come il C++) sarebbe piu` corretto dire
"Oggetti + cooperazione = programmi"
Puo` sembrare solo una estrapolazione filosofica, ma le conseguenze
pratiche sono assai rilevanti.
Paolo


 wrote in message
37707690...@proxy.cli.di.unipi.it...

Sono d'accordo con tutto ciò che dici, però credo che guardare il C++
principalmente come linguaggio orientato agli oggetti non è sempre giusto.
E' verissimo che *è* un linguaggio OO, ma si presta comunque molto bene per
un approccio procedurale. In fondo se lo si sfruttasse solo come procedurale
non si perderebbe nulla alla fine: magari sarebbe un peccato non utilizzare
tutte le altre possibilità offerte dal linguaggio...

"Oggetti + cooperazione = programmi"
Grande espressione!! Penso che catturi proprio bene le differenze concettuali.
Complimenti.
Non mi ricordo dove, ma ho letto una frase sibillina che suonava piů o meno cosě:
"Imparare il C prima del C++ non č utile. Anzi, č indispensabile, cosě capisci quello che
NON devi fare in un programma C++!". Ammetto che č un'esagerazione (forse volutamente
polemica) perň rende l'idea.
Andrea

tutte le altre possibilità offerte dal linguaggio...
Tuttavia ti faccio notare che contrariamente a quanto affermi perderesti
moltissimo ovvero tutti i vantaggi della che i nuovi costrutti offrono:
1) Maggiore astrazione 
2) Riuso del codice
3) maggiore modularita` degli applicativi, facilitata dal concetto di classe
    che consente di separare sottoproblemi diversi
4) minore costo in fase di manutenzione (legato ovviamente alla fase di design,
    ma in generale minore in applicativi OO per via della maggiore modularita`
    delle applicazioni e della separazione dei ruoli indotta dalle tecnologie OO)
Inoltre a svantaggio dei linguaggi procedurali parla la storia, la metafora della
scatola chiusa (la procedura) che "ultimata non deve piu` essere toccata" e` stata
smentita dai fatti. La OOP tenta di rimediare a cio` su due fronti:
a) Stimola la stesura di funzioni piccole facilmente manutenibili (i linguaggi
     tradizionali invece tendono a produrre funzioni molto piu` lunghe e meno
     mantenibili).
b) L'uso di interfacce ed ereditarieta`, uniti al polimorfismo facilitano il compito
     di revisione e manutenzione, se qualcosa non va si butta via solo cio` che non serve,
     ovvero se una classe non ti soddisfa per via di qualche metodo, butti solo
     quei metodi grazie all'ereditarieta` ed al polimorfismo. Questo in genere
     vale molto meno nei linguaggi procedurali in cui tipicamente le relazioni tra
    le varie funzioni sono piu` difficili da tracciare (una classe ben fatta isola
    completamente un certo problema localizzando tutti gli aspetti che riguardano
    il problema e la sua soluzione).
Il punto non e` che queste cose non sono raggiungibili con la programmazione
procedurale, ma in generale questa non aiuta quanto la OOP; lo dimostra
l'importanza che gli ADT (tipi di dato astratti) hanno in informatica nella
progettazione e manutenzione di sistemi che richiedono modularita`, efficenza,
robustezza e manutenibilita`.


 -----------------------------------------------------------------
Ciao


una maggiore riusabilità del codice e a tante altre belle cose.
Il punto di forza del Pascal e` proprio il fatto che ti costringe a pensare prima
di scrivere codice poiche` non lascia "liberta` stilistiche".
Saluti,
