Newsgroup: it.comp.lang.c++
Titolo: Librerie per protocolli di comunicazione.

Ciao.
Mi potreste consigliare quale librerie usare per poter sfruttare i più 
diffusi protocolli di comunicazione per pc (RS232, USB, Ethernet..) ed 
internet (ftp, http, telnet..ecc..UDP/TCP.. ecc...) in C/C++?
..meglio se multipiattaforma...
Un Grazie anticipato.

usergroup ha scritto:

Sarebbe meglio che ci/ti chiarissi il problema. La seriale sta all' USB
come il cacio con il cavallo. Per i protocolli internet prova ad andare
su 
http://curl.haxx.se/
, ma trovi qualcosa di buono anche sul sito
"ufficiale" 
http://www.w3.org/

 
Per la gestione di socket esistono varie librerie con differenti 
complessita' e completezza, puoi (l'OP) cercare su google per "socket++" 
e "ADAPTIVE Communication Environment" (ACE), tanto per cominciare.
Per altre librerie, potresti iniziare dai primi link che trovi cercando 
"available c++ libraries".
-- 
Roal Zanazzi

 e "ADAPTIVE Communication Environment" (ACE), tanto per cominciare.
ACE è un framework enorme, tu gli vuoi male.
Oppure bene, dipende da cosa cerca.
Secondo me chi ha iniziato questo thread non ha le idee chiare, o alla
peggio non ha posto la domanda in modo chiaro. Sarebbe bene (per me)
partire da lì. Se poi non vuole farlo, pace.

 partire da lģ. Se poi non vuole farlo, pace.
Ho interesse a studiare possibili implementazioni tramite C++ dei 
suddetti protocolli.
Ho piacere a studiare le varie possibilitą, per come dite l' ACE pare 
una buona cosa, no?
Grazie:-)

 
E' pero' un framework piuttosto complesso, con particolari 
architetturali che potrebbero risultare di non facile comprensione.
A suo tempo l'avevo guardato un po', ma era decisamente troppo complesso 
per i miei scopi.
Se il tuo scopo e' studiare le possibilita' offerte dal C++ 
nell'implementazione E hai tempo, potresti analizzare il design di varie 
librerie. Su ACE hanno scritto un paio di libri:
- "C++ Network Programming: Mastering Complexity Using ACE and Patterns"
- "C++ Network Programming: Systematic Reuse with ACE and Frameworks"
mi ero ripromesso di leggerli, ma il tempo e' tiranno...
-- 
Roal Zanazzi

 mi ero ripromesso di leggerli, ma il tempo e' tiranno...
Io li ho letti tempo fa e devo dire che li ho trovati ben fatti.
L'approccio e' decisamente pragmatico, un esempio dietro l'altro,
basati su programmi limitati ma sufficienti a presentare casi d'uso
realistici. Tutto il codice e' disponibile e funziona.
Ciao,
Nicola

Nicola Musatti ha scritto:

Opinione interessante, grazie.
Una domanda: quanto quei libri sono legati al framework ACE e quanto, 
invece, possono essere utili a livello piu' generale?
-- 
Roal Zanazzi


I principi soggiacenti sono di carattere generale, ma proprio la natura
pratica del libri li rende totalmente legati a ACE. Per gli aspetti
piu' teorici e generali gli stessi autori rimandano di continuo a
POSA2: "Pattern-Oriented Software Architecture, Volume 2, Patterns for
Concurrent and Networked Objects" di Douglas Schmidt, Michael Stal,
Hans Rohnert e Frank Buschmann, Wiley 2000, che da tempo contribuisce
ad elevare la mia pila di libri da leggere.
Ciao,
Nicola



Interessante. Io ho provato utilisare ACE, e non ho mai
riesciuto. O bene, l'interfacia non offravano la funzionnalità
di cuì avevo bisogna, o bene, hò trovato errori. (Bisogna dire
que provavo utilisarlo per un protocole abbastanza basso,
Radius, e UDP, non TCP. Ed anche, sotto Solaris, e non Windows.
Penso che per TCP sotto Windows, deve funzionnare. Almeno tanto
che il processore non è dual core.)
--
James Kanze                                           GABI Software
Conseils en informatique orientée objet/
                   Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, 
+33 (0)1 30 23 00 34

 che il processore non è dual core.)
Tieni presente che mi riferisco esclusivamente agli esempi presenti nei
libri di cui si parlava, non ho mai provato ad usare ACE a livello
professionale. Pero' conosco almeno un'azienda che ci ha costruito
sopra l'infrastruttura di comunicazione del proprio sistema di trading,
se non sbaglio su Linux.
Ciao,
Nicola