Dr. Carlo Pescio
Recensione: Windows NT Network Programming


Scheda Libro
Autore: Ralph Davis Titolo: Windows NT Network Programming
Editore: Addison-Wesley ISBN: 0-201-62278-5
Lingua: Inglese Anno: 1994 Pagine: 576 Allegati: floppy con sorgenti

Commenti
Il miglior complemento al testo di Richter è proprio Windows NT Network Programming. Esiste, come è logico aspettarsi, una certa sovrapposizione tra i due testi, ma in gran parte il libro qui presentato inizia proprio dove Advanced Windows NT lascia il lettore: ai confini della singola macchina, per passare invece sulla rete. Nel fare questo, copre anche le carenze del testo di Richter sull’interprocess communication. Il libro è diviso in quattro parti, le prime due delle quali dedicate alla programmazione "generale" sotto NT, mentre la terza riguarda la programmazione di rete vera e propria e la quarta copre alcuni aspetti interessanti anche se spesso considerati marginali (security API, performance monitoring) ed alcune altre API di networking. Le prime due parti rendono il libro leggibile anche a chi non abbia già avuto una precedente esposizione alla struttura di NT, anche se per ovvie ragioni non approfondiscono molto i temi trattati. La terza parte discute named pipes, mailslot, windows socket, NetBIOS e remote procedure call, con un occhio alle prestazioni e l’altro alla creazione di una libreria C++ per la programmazione di rete.

Pro
I dati di performance ricavati dall’autore (per quanto relativi ad una versione 3.x di NT) sono molto utili per un dimensionamento di massima del sistema. L’autore punta a creare una libreria di classi che virtualizza il meccanismo di interazione utilizzato, presentando una interfaccia il più possibile uniforme indipendentemente dall’uso di pipe, socket, NetBIOS, eccetera. Per quanto il compito in sé possa essere di scarso interesse per alcuni programmatori, nel perseguire il suo fine l’autore espone con chiarezza le differenze tra i vari meccanismi, e questo può sicuramente aiutare a scegliere il sistema di comunicazione più adatto ai nostri scopi.

Contro
Non vengono considerati alcuni sviluppi più recenti, come il DCOM e gli Activex. Come sempre, la scelta di sviluppare una libreria autonoma è interessante ma destinata a scontrarsi con la realtà, dove esistono molte librerie commerciali (e quindi supportate) che coprono la parte di networking. In ogni caso il testo rimane molto leggibile anche se non si intende usare la libreria fornita a corredo, in quanto la discussione è comunque svolta a livello di API.