Newsgroup: it.comp.lang.c
Titolo: C e Windows

Ho iniziato a studiare il C
un po' di tempo fa per l'universita' e ora continuo
a fare qualche programmino per divertimento e perche'
la programmazione mi affascina,pero' ho una domanda da fare.
Io uso il turbo C sotto dos e sinceramente programmare ancora sotto
dos lo trovo un po' superato,vorrei sapere se e' possibile programmare
in C sotto Windows e cosa occorre avere.
Inoltre qualcuno potrebbe spiegarmi brevemente la differenza tra C ,C++
e altri simili (tipo Visual C ,ecc.)?
Grazie
xi...@usa.net

e altri simili (tipo Visual C ,ecc.)?
Il C++ puo' essere inteso in 2 modi:
- l'evoluzione del C
- un nuovo linguaggio compatibile con il C
Senza voler scatenare "thread" di protesta io opto per la seconda
possibilita'. Ad ogni modo il C++ e' un linguaggio Object Oriented quindi
permette di scrivere componenti riutilizzabili usando classi, proprieta',
metodi e compagnia bella.
Tanto per fare un esempio: un bottone 3D non e' altro che un bottone
standard disegnato un po' diversamente. Il C++, come altri linguaggi
orientati agli oggetti, permette di sviluppare cose di questo tipo
riutilizzando completamente il codice gia' scritto senza modificarlo, ma con
la possibilita' di sostituire al volo "pezzi di comportamento". Nell'esempio
di prima si "intercetterebbe" il disegno del bottone.
Il Visual C++ e gli altri sono i compilatori che permettono di scrivere i
programmi in C++. Differiscono tra di loro perche' forniscono anche un
insieme di librerie per "agevolare" lo sviluppo. Il Visual C++ fornisce MFC
(Microsoft Foundation Class), mentre Borland (se non ha cambiato idea)
fornisce OWL (Object Windows Library).
Questo li rende "incompatibili" nel senso che un'applicazione sviluppata con
un compilatore non e' immediatamente "portabile" nell'altro compilatore.
A presto.
Angelo.
----------
Rimuovere la protezione anti-spam dall'indirizzo di posta prima di
rispondere. Grazie.
Please remove anti-spam protection from my e-mail address before answering.
Thank you.
----------

e altri simili (tipo Visual C ,ecc.)?
Non confondiamo.... C e C++ sono linguaggi ..... Visual C e' un ambiente di
sviluppo (...o poco piu'...) visuale(...quasi....), per chi sviluppa in C++.
Per quanto riguarda invece le differenze tra C e C++ ....il discorso sarebbe
lunghetto e, in questa sede, sicuramente lacunoso...ti invito quindi a
leggerti qualche buon libro.
Solo una nota se stai pensando di passare al C++...... del C++ il difficile
non e' la sintassi (...che comunque a volte e' un po' contorta...) ma e' il
modo di "progettare" il programma che ti mettera' in difficolta'....e' un
po' come il C...il difficile non e' la sintassi dell'istruzione IF o FOR
....cio' che e' difficile e' trovare l'algoritmo giusto!
Ciao BR66

e altri simili (tipo Visual C ,ecc.)?
Programmare in C sotto Windows e' ormai lo standard della
programmazione "seria".
Per farlo si possono usare ambienti di sviluppo come il Visual C++ o i
compilatori Borland.
Per quanto riguarda la differenza tra C e C++, si potrebbe dire che il
secondo e' una vera e propria evoluzione del primo.
Tant'e' vero che il C++ all' inizio degli anni '80 erano chiamato "C
con classi".
La programmazione, con il C++, si e' evoluta al punto da non
considerare dati e funzioni come due cose separate, cosi' come nella
programmazione classica, ma fusi insieme in "oggetti" unici.
E quindi la programmazione diventa modulare, secondo un principio che
e' piu' comune all'hardware che non al software.
Cioe' si possono utilizzare oggetti scritti da altre persone, o
riutilizzarne di gia' scritti, semplicemente sapendo quale sia la loro
interfaccia con l'esterno e senza preoccuparsi di come funzionino
internamente.
La programmazione oop si basa sostanzialmente su 3 principi
1) L'incapsulamento : i dati e i "metodi" (le funzioni che
appartengono all'oggetto e ne costituiscono la parte attiva) sono
contenuti "dentro" l'oggetto, appartengono ad essi.
2) l'ereditarieta' :  gli oggetti possono "derivare" da molti altri
oggetti dai quali ereditano alcune caratteristiche e allo stesso tempo
ne implementano di nuove.
Da questi nuovi oggetti ne potranno derivare altri e cosi' via.
3) Il polimorfismo : diversi oggetti, discendenti da genitori comuni,
possono cambiare alcune caratteristiche, ma l'interfaccia con
l'esterno rimane comune.
La buona riuscita di un programma scritto sfruttando le MFC o le OWL,
di cui ti e' gia' stato detto qualcosa, dipende proprio dal saper
sfruttare al meglio queste caratteristiche.
La programmazione oop, nella sostanza, consente di risolvere i
problemi in un modo piu' intuitivo.
E comunque va' ricordato che tutto cio' che e' possibile fare con la
oop si puo' fare in modo classico e viceversa. 
Andrea
------------------------------------------------
combatti anche tu il "nano scemo" :
http://www.geocities.com/Hollywood/Studio/6989
------------------------------------------------