Newsgroup: it.comp.lang.c++
Titolo: C++ & Internet

Il C++ è efficiente nello sviluppo di applicazioni per Internet e remote in
genere, o è meglio ad affidarsi a Java?
Come potrei sviluppare un programma server/client(in particolare un chat che
possa gestire + utenti e la spedizione di msg privati)?

 possa gestire + utenti e la spedizione di msg privati)?
In tantissimi modi diversi, ovviamente.  Se ti appoggi sull'HTTP,
hai il vantaggio potenzialmente enorme di potere superare
eventuali firewall senza particolari sforzi (e` questo che rende
SOAP cosi` interessante, in buona parte: poggia su HTTP!).
Almeno come prototipo dell'applicazione che indichi, io
partirei sicuramente da un semplice e leggero servente
HTTP (Xitami e` il mio consiglio, a meno che uno non sia
un patito di Python, nel qual caso Xitami va comunque
benissimo ma Medusa puo` andare anche meglio!), e
realizzerei il prototipo dell'applicazione come estensione
del server HTTP (inizialmente, magari, addirittura con
banalissimi script CGI, naturalmente in Python ma se uno
proprio insiste anche in Perl:-) e semplici form HTML (con
un minimo di scripting).  Sono tutte tecnologie che, per
chi naturalmente ne sia padrone, danno vantaggi di
elevatissima produttivita`.
Poi, gradualmente, e se occorre, si puo` sostituire la
parte GUI con opportune applet Java e/o controlli Active/X
(ma secondo me del purissimo HTML dinamico, con CSS
e scripting, fa gia` tutto quel che serve per la GUI), e/o
il lato server con un server HTTP special-purpose (in
Python, ad esempio, un paio di semplicissimi server
HTTP sono parte, con tutti i loro sorgenti, della standard
library, e possono essere facilmente estesi usando
naturalmente una impostazione ad oggetti).  Dubito che
ci sia particolare bisogno di questo, in realta`.
Dubito, in particolare, che mi troverei a scrivere anche
una sola riga di Java o di C++ per questo progetto (al
massimo, forse, qualcosina per la GUI, piu` che altro
se voglio avere un look strano e originale), operando
invece interamente in linguaggi di scripting con l'enorme
produttivita` che essi consentono.  I vincoli sulle
prestazioni sono comunque quelli della rete, ecc, quindi
non ci sarebbe beneficio dalla maggiore efficienza in
termini computazionali che e` permessa da Java, e
ancor piu` da C++, rispetto, ad esempio, a Python.
Alex

Da vero principiante mi accingo a studiare il VC++.
Dal libro in oggetto
(edizione Tecniche Nuove 1999 , espressamente dedicato al VC++ 6)
tento di editare il seguente codice sorgente:
// Esempio " Hello World"
#include <iostream>
using namespace std;
int main()
{
    cout <<"Hello World!" << end1
    return 0:
}
Beh! ci sono vari erroretti , mi dice il debugger , secondo il mio compitore
(VC++ 6.0 enterprise).
(come inizio non č male, pag.11!!)
Cosě modificato :
// Esempio " Hello World"
#include <iostream.h>
using namespace std;
;int main()
;{
    ;cout <<"Hello World!" << end1
    ;return 0:
;}
mi fermo davanti ad un errore (3) C2871: "std" non esiste o non č un
namespace!?
e (5) error C2447 missing function header ( old-Style formal list)
Premesso che "il livello č basso" ,come diceva Catalano, mi scuso con i +
esperti e chiedo umilmente se qualcuno mi puň aiutare?
Fabio Manganelli
Fam...@tin.it

 Beh! ci sono vari erroretti , mi dice il debugger , secondo il mio compitore
Io vedo 1 errore, grosso, ed e` la fine dell'ultima riga che ho
citato.
Presumibilmente, intendi usare endl (finisce con una l minuscola)
e non end1 come sopra e` scritto (finisce con una cifra 1).
Inoltre, dopo la fine riga dovrai avere un punto-e-virgola (non
ho capito bene il tuo "fix", dove hai messo un mucchio di ";"
all'_inizio_, hai sostituito l'include standard con uno non standard
che continua a essere distribuito solo per compatibilita` con un
remoto passato, ecc -- c'erano meno problemi in questa versione,
un semplice errore di battitura alla fine di questa riga, direi).
Alex

 Beh! ci sono vari erroretti ,
A parte il punto e virgola che manca dopo endl e i due punti messi al
posto del punto e virgola dopo il return 0, non vedo altri errori.
EMG

    ;return 0:
?????? ma che razza di stile di programmazione é questo? Mettere il
puntoevirgola all'inizio di una nuova istruzione anziche alla fine
dell' istruzione precedente. Certo, funziona lo stesso ma come stile
mi sembra a dir poco selvaggio. Ultima cosa: vedo i due-punti in fondo
all'istruzione 'return 0', toglili immediatamente e mettici un
puntoevirgola, e vedrai che a questo punto il tuo programma funzionerà
alla perfezione. Non riesco proprio a capire da dove tu abbia
estrapolato un listato cosi' strampalato: credo proprio che tu abbia
commesso alcuni errori di battitura nella trascrizione del listato.Se
invece é il tuo libro che fa degli esempi del genere mi sa che farai
meglio a buttarlo nella spazzatura.
Il Ghenio