> Non mi pare di avere letto alcuna di queste mail. > Ad ogni modo sono sicuro che portando anche la tua esperienza non puoi > che alzare il livello della discussione. > > La mia esperienza è quella espressa all'inizio. Non esiste dire che l'UML fa schifo. Come non ha senso dire Java fa schifo, Perl fa schifo, il minestrone fa schifo. Come già detto ci sono diversi campi di applicazione. Personalmente l'ho usato solo *una* volta, e con profitto, durante lo svolgimento del tirocinio. Tutte le altre volte (siti web e robe del genere) mi sono fatto due pallini a penne in un foglio e ho risolto egregiamente.
Qualuno ha fatto notare che "If the implementation is hard to explain, it's a bad idea;". Ma purtroppo la mondo esistono cose complicate da spiegare a voce e/o con codice vario. Se devo fare un'applicazione che regola il braccio meccanico che esegue un'operazione laser sugli occhi, l'UML serve. Prima di tutto potrei non sapere che linguaggio di programmazione usare: Capo: "Hey tu? Ci serve un programma che permetta di utilizzare questo fantastico dispositivo "embeddato" all'interno di un vibratore che regoli la frequanza degli impulsi." Io: "Ah, si ok, in cosa lo scrivo? c, c++ o turbo pascal?" Capo: "Non lo so, non ci è ancora arrivato, però mi assicurano che è a oggetti" Io: "Hey! Ma se non è ancora arrivato come faccio a sviluppare qualcosa? Ho il codice?" Capo: "Col cazzo, eccoti gli schemini UML. Tu devi estendere la classe "Vibro" implementando qualcosa per la regolazione dell'intensità" Quindi mooolto prima che inizi l'implementazione, tutti i diagrammi vengo analizzati da diverse persone, in diretto rapporto con il commitente e con esperti del settore, ad esempio medici e ingegneri biomedici. Perciò il progetto subirà svariate modifiche. Iniziare a scrivere codice ora, sarebbe una cosa piuttosto noiosa. Dato che molto di esso verrà cancellato e/o profondamente modificato. Poi supponiamo che questo software si faccia. E che il braccio meccanico regoli male l'intensità del laser decapitando il paziente e distruggendo l'intera ala ovest dell'ospedale. Di chi è la colpa? Si prendono specifiche, progetto UML e implementazione. E si controlla se il progetto rispetta le specifiche, e se l'implementazione rispetta il progetto. _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python