[Flug] Voi che ci capite a pacchi: mysql
Gian Uberto Lauri
saint@eng.it
Mer 19 Mar 2014 15:59:30 CET
Massimiliano Masi writes:
> >> E no invece! Non mi interessa nemmeno se programo in C!
> >
> > Errore. Ed anche grave. Non viviamo nel mondo della lavagna.
> >
> > Non dico di arrivare a sapere dove e come ti verrà invalidata la
> > pipeline del processore[1], ma sapere cosa accade come oggetti
> > allocati et similia è dannatamente doveroso.
> >
> > Piccolo quiz: hai un array di integer, ne devi caricare alcuni nei
> > registri (meglio avere un RISC, che con gli Intel e Intel-derivati hai
> > pochi registri). I dati li leggi per indirizzi crescenti o
> > decrescenti?
>
> Vedi, il programmatore Java dice: non mi interessa. Perché devo caricare
> degli interi nei registri del processore?
Un programmatore Java non ha questa arma (a dire il vero nemmeno un
programmatore C su una macchina intel).
> Perché mi devo interessare su come mi viene implementata la new()?
>
> No. A quello ci pensa la JVM. Quello che devo fare io è pensare di
> creare un bel servizio web che mi garantisca l'adesione ad una SOA,
Magari in questi casi metto in campo un service bus...
> che non sia suscettibile ai rewrite attacks,
> che non abbia problemi di injection,
Per quest'ultima un prepared statement salva già da molte cose e, cosa
che non guasta, migliora le prestazioni.
> che il mio token SAML sia coerente con il TGT kerberos emesso,
> che autenticazione, autorizzazione, e integrità siano rispettate.
>
> Fine.
Fine per nulla, mi spiace.
Hai dimenticato: deve farlo in tempi accettabili sull'hw previsto dal progetto.
Altrimenti ti trovi i sistemisti (quelli che dico io, non quelli che
sanno mettere dentro il CD e premere next a manetta) si guardano e si
chiedono chi è quello scrotocefalo che ha fatto quel carrozzone
immobile.
E gli utenti che pensano ancora peggio.
E non ti dico cosa possono pensare i contribuenti con i cui soldi è
stato pagato quel programmatore...
> Se mi specializzo su una architettura, ho sbagliato mestiere.
>
> Perché lo devo fare?
Specializzarsi no, ma scegliere l'architettura che esegue meglio il
tuo codice magari si.
E anche se non sai come la new() funziona DEVI sapere che la new()
esplicita o implicita costa.
Così come è molto meglio che il programmatore in C sappia che accedere
per indirizzi crescenti può costare la metà di accedere per indirizzi
decrescenti...
> Che dipartimento eri? Che BBS?
DEI di Padova (inizialmente alessia.dei.unipd.it (3B2 prima, LSX3020
poi), infine un cluster di dataless sun servite da una SS?
biprocessore a 40Mhz, maya.dei.unipd.it)
> > Oggi oramai Java è abbastanza bravo da non fare perdere tempo se
> > invece di una invokevirtual se non hai variabili volatili. Altrimenti
> > evitare l'estremismo di usare le interfacce localmente...
>
> Detta così è una supercazzoRa, lo sai vero? :)
No. In caso di variabili volatili la invokevirtual costa il 38% in più.
> >> Certamente invece! Con i puntatori, come fai a fare analisi statica
> >> del codice?
> >
> > Vieni a lavorare con me, vieni a lavorare con me. Che ti mostro come la OOP
> > NON ti salva.
>
> Ma che fai di preciso?
In questo momento mi sto dannando l'anima con un bean che non so
quanti anni fa hanno cominciato a scrivere, su cui hanno messo le mani
legioni di decerebrati, che hanno legato ad una operatività di [BEEP]
per quello che riguarda la user experience e che non ho ancora il
permesso di buttare nella cloaca dei bit avariati.
Una architettura piena di paroloni, di framework dagli obiettivi
altisonanti che, arrivata al DB, ha bisogno do un mostro alimentato da
due Chernobil in paralleo (parlo della potenza dissipata dai botti)
perché lo SQL generato pare attuare ogni possibile manovra lecita ed
illecita per impedire all'ottimizzatore di query di fare qualcosa.
Adesso stiamo iniziando la sostituzione utilizzando una infrastruttura
per il rendering web molto carina, molto elegante, moderna, che segue
i dettami... E che va costantemente in crisi col bean su cui mi sto
dannando l'anima.
Sufficientemente chiara come esposizione :) ?
> >> No. Ci sono concetti di linguaggi error prone. E' anche vero che è
> >> una teoria datata, visto anche gli arrosti che fecero coi linguaggi
> >> di 4 livello.
> >
> > È l'uomo a fare gli errori, è l'uomo che scrive il codice. Un
> > linguaggio è error prone se richiede all'uomo di essere migliore (più
> > attento, più disciplinato).
> Ma se da che mondo è mondo si tende a fare dispositivi sempre piu'
> tolleranti agli errori. È il concetto di Usability (merged with)
> Safety.
Non mi fanno fare il macchinista se non ho imparato a menadito
l'architettura della motrice e non ho dimostrato di aver imparato a
manovrare i treni per cui sono abilitato. Ma ancora prima se non ho
passato test fisici e psicoattitudinali.
Quando la mia vista andrà a farsi friggere o i miei riflessi,
whichever comes first, mi toglieranno la patente di guida.
A programmare ci mettono letteralmente cani e porci.
Detto questo non è che sia scomodo non doversi ricordare le free(), ma
in compenso ti capitano più facilmente le vaccate quando lavori con
risorse che devi liberare esplicitamente.
E poi vedo che sempre più spesso con Java si tende a voler buttare via
tutto quello che il linguaggio ha di buono come aiuto a non fare
errori come controlli a compile time, eccezioni - che sono errori, ma
errori ambientali[1] e non del programma a cui il programma deve
essere pronto e saper reagire adeguatamente.
[1] Ci sono anche gli errori di programmazione tra le eccezioni. Il
buon Gosling, da brava persona cortese, li ha chiamati
RuntimeException. Doveva chiamarli TheCoderIsADonkeyException...
> Me lo sogno la notte, lisp. Me lo sogno quando dovevo fare le macro
> col cad 11!!!
Ah, avere le macro in Java....
Una volta adoravo Java. Poi lo hanno trasformato in una specie di
Cobol per cani e porci... Thank you Oracle, (anche se l'ultima Sun...)
--
/\ ___ Ubuntu: ancient
/___/\_|_|\_|__|___Gian Uberto Lauri_____ African word
//--\| | \| | Integralista GNUslamico meaning "I can
\/ coltivatore diretto di software not install
già sistemista a tempo (altrui) perso... Debian"
Warning: gnome-config-daemon considered more dangerous than GOTO
Maggiori informazioni sulla lista
flug