[Tech] Gestionali, Mysql e altre domande

Marco Ermini markoer@usa.net
Mer 12 Feb 2003 16:50:58 CET


Christian Surchi <csurchi@mclink.it> wrote:
[...]
> Dove sta scritto, scusa, quando si parla (o si parlav, se preferisci) di
> client server, che il client e il server devono necessariamente essere
> "unici"?
[...]
> Non mi pare che le definizioni in senso stretto varino cosi' tanto nel
> corso degli anni. Puo' cambiare la metodologia ma non la definizione,
> altrimenti non vedo' perche' chiamarla definizione. ;)

Scusami se sembro insistente, ma qui si sente un po' lo "sgrat sgrat"...

Innanzitutto vorrei dire che sono stato un po' esagerato. Il client/server non
e' certamente morto e sepolto, almeno, non in senso pratico; e' morto nel
senso che e' un paradigma poco proponibile se si vuole realizzare qualcosa di
non dico innovativo, ma che si adatti per lo meno alle esigenze di oggi.

Uno la puo' rigirare come vuole, ma quando si parla di client/server si parla
di client (come dice Massimiliano, tecnicamente "fat client"), che si installa
e che deve subire un progesso di distribuzione e manutenzione; tale client si
connette ad un RDBMS. No, il client non deve essere unico, e non deve essere
unico nemmeno l'RDBMS, perche' ci sono le eccezioni (esistono decine di client
che si connettono ad un listener Oracle, l'lsql, l'ODBC, il JDBC... ma
comunque lo rigiri e' un client che si connette ad un server :-). Allo stesso
modo, oggi non si parla piu' nemmeno di three-tier, si parla di n-tier (ma
questa discussione ci porta lontano). Rimane il fatto che il paradigma di
sviluppo che ha dominato le software house per anni e' sempre stato chiamato,
genericamente, "client/server", ed ora questo paradigma e' considerato
obsoleto.

Poi si possono giocare con le definizioni, vedere che uno dei sottosistema di
un'architettura n-tier e' a sua volta un'architettura client/server...  ;-)
ecc. ecc., ma rimane il fatto che il modo "moderno" di progettare
un'applicazione segue paradigmi molto diversi da quelli di qualche anno fa.

Ti consiglio fortemente la lettura di Booch "Objectifying Information
Technology" http://www.rational.com/products/whitepapers/394.jsp , dove egli
dice:

"What client/server computing is and is not is still a hotly debated topic.
(Not unlike what is and what isn't object oriented.) Client/server computing
can perhaps be best defined as:

* Whatever you want it to be, in order to explain to your management what you
plan to do with all those personal computers that seem to be popping up in
every department.
* Whatever the vendor currently pitching his/her products to you wants it to
be. 

A more serious definition suggests that client/server computing denotes "a
decentralized architecture that enables end users to gain access to
information transparently within a multivendor environment. Client/server
applications couple a GUI to a server-based RDBMS.""

L'architettura del software ha fatto bassi da gigante in questi ultimi anni,
con la standardizzazione operata da UML e dalla Rational chi non si e'
aggiornato si e' perso qualche passaggio (io, lo confesso, faccio *molta
fatica*).


> Vallo a dire ad un certo Al Kuwarizmi... :P

Sono ignorante, ma Google mi dice "Forse cercavi ...: Al Khwarizmi". Un sito
che parla di lui mi dice "One unfortunate effect of this lack of knowledge
seems to be the temptation to make guesses based on very little evidence"...

Ammetto che non so chi sia, anche se ho letto (mooolto tempo fa) un libro
sulla storia della matematica...


ciao


---
Marco Ermini
http://macchi.markoer.org - ICQ 50825709 - GPG KEY 0x64ABF7C6 - L.U. #180221
Perche' perdere tempo ad imparare quando l'ignoranza e' istantanea? (Hobbes)




Maggiori informazioni sulla lista flug-tech