30 anni di Commodore 64la redazione 
03 gen 2012, 17.39
 Chiudi
Apri tutti i messaggi03 gen 2012, 18.09permalink
03 gen 2012, 19.08permalink
03 gen 2012, 20.39permalink
04 gen 2012, 12.57permalink
04 gen 2012, 14.14permalink
05 gen 2012, 11.05permalink
07 gen 2012, 17.16permalink
05 gen 2012, 18.02permalink
07 gen 2012, 17.19permalink
03 gen 2012, 21.11permalink
04 gen 2012, 14.19permalink
04 gen 2012, 14.22permalink
04 gen 2012, 15.12permalink
04 gen 2012, 16.21permalink
07 gen 2012, 18.40permalink
07 gen 2012, 18.53permalink
04 gen 2012, 12.55permalink
04 gen 2012, 13.43permalink
05 gen 2012, 01.22permalink
05 gen 2012, 10.49permalink
05 gen 2012, 13.08permalink
05 gen 2012, 13.43permalink
05 gen 2012, 13.48permalink
05 gen 2012, 15.07permalink
05 gen 2012, 15.09permalink
06 gen 2012, 20.48permalink
05 gen 2012, 13.54permalink
03 gen 2012, 19.24permalink
03 gen 2012, 19.38permalink
05 gen 2012, 22.00permalink
05 gen 2012, 21.53permalink
 Chiudi
Apri tutti i messaggi03 gen 2012, 19.43permalink
03 gen 2012, 19.52permalink
03 gen 2012, 20.03permalink
04 gen 2012, 16.27permalink
03 gen 2012, 19.56permalink
03 gen 2012, 19.59permalink
03 gen 2012, 20.12permalink
04 gen 2012, 12.24permalink
04 gen 2012, 14.08permalink
03 gen 2012, 20.59permalink
04 gen 2012, 12.27permalink
04 gen 2012, 12.07permalink
04 gen 2012, 12.17permalink
04 gen 2012, 12.18permalink
 Chiudi
Apri tutti i messaggi03 gen 2012, 20.35permalink
04 gen 2012, 20.48permalink
10 gen 2012, 16.37permalink
05 gen 2012, 13.23permalink
10 gen 2012, 16.40permalink
 Chiudi
Apri tutti i messaggi03 gen 2012, 20.47permalink
03 gen 2012, 22.59permalink
 Chiudi
Apri tutti i messaggi03 gen 2012, 22.33permalink
03 gen 2012, 23.05permalink
04 gen 2012, 20.21permalink
04 gen 2012, 20.57permalink
03 gen 2012, 23.26permalink
03 gen 2012, 23.42permalink
04 gen 2012, 12.01permalink
04 gen 2012, 12.24permalink
04 gen 2012, 16.56permalink
04 gen 2012, 20.24permalink
05 gen 2012, 10.35permalink
In ordine di astrazione framework, api stratificate, driver.
Macchine come C64 e Amiga avevano hardware praticamente immutabile, con 4 righe di codice potevi accedere ad esso pienamente, senza dipendere da un solo byte di codice scritto da terzi.
Volevi disegnare un cerchio? lo disegnavi pixel per pixel nella bitmap della memoria, accedendo direttamente ad essa calcolando le coordinate dei pixel con un algoritmo tuo.
Oggi useresti una funzione del framework, che dialoga con un api dell'OS, che a sua volta dialoga con l'api del driver.
E scriveresti una roba tipo "mywindow.drawcircle(x,y,r,color)" senza avere la più pallida idea di quale sia il modo efficiente per calcolare le coordinate del cerchio.
Certo, è comodo e ti astrae dall'hardware: fingiamo di avere una scheda che disegna cerchi in hardware, zac! , se il driver è furbo, usa tale funzione e tu senza saperlo hai un metodo velocissimo per disegnare cerchi. Ottimo dirai.
Ma quando fai il deploy di un programma (immaginario) che si basa sulla velocità di disegno dei cerchi, devi:
-accertarti che chi scarica il tuo programma abbia installato il framework (magari esattamente la versione che usi tu), che a sua volta ha le sue dipendenze.
-accertarti che utilizzi un driver aggiornato che sfrutti l'eventuale accelerazione hardware della scheda
-pregare che le schede video che non hanno tale accelerazione siano comunque abbastanza veloci (quindi testare decine di combinazioni di configurazioni e stabilire caratteristiche minime/ottimali).
In pratica vengono introdotte tutta una serie di problematiche con l'aggravante che ogni step che ho riportato potrebbe avere bug (che non dipendono affatto da te) che magari capitano solo in alcune configurazioni e che sono tanto più probabili quanto è lungo questo processo di astrazione.
Le poche righe assembly sui vecchi computer invece, continuano e continueranno a girare perfettamente senza dipendere da nulla e nessuno, finché l'hardware non si guasterà.
unaDuraLezione
10.795
 
 
05 gen 2012, 10.40permalink
05 gen 2012, 12.26permalink
05 gen 2012, 16.34permalink
04 gen 2012, 13.51permalink
04 gen 2012, 16.55permalink
05 gen 2012, 11.02permalink
05 gen 2012, 11.10permalink
05 gen 2012, 14.31permalink
05 gen 2012, 14.31permalink
05 gen 2012, 15.12permalink
08 gen 2012, 23.35permalink
04 gen 2012, 12.27permalink
 Chiudi
Apri tutti i messaggi04 gen 2012, 13.03permalink
04 gen 2012, 13.38permalink
04 gen 2012, 13.49permalink
05 gen 2012, 01.24permalink
08 gen 2012, 17.49permalink
05 gen 2012, 01.08permalink
06 gen 2012, 14.28permalink
06 gen 2012, 15.50permalink
04 gen 2012, 14.21permalink
04 gen 2012, 14.34permalink
04 gen 2012, 14.43permalink
04 gen 2012, 16.05permalink
 Chiudi
Apri tutti i messaggi04 gen 2012, 15.22permalink
04 gen 2012, 15.39permalink
04 gen 2012, 16.09permalink
04 gen 2012, 16.55permalink
05 gen 2012, 11.00permalink
05 gen 2012, 11.27permalink
05 gen 2012, 14.07permalink
05 gen 2012, 17.32permalink
05 gen 2012, 13.26permalink
 Chiudi
Apri tutti i messaggi04 gen 2012, 18.15permalink
05 gen 2012, 18.27permalink
05 gen 2012, 21.14permalink
07 gen 2012, 20.15permalink
04 gen 2012, 23.32permalink
 Chiudi
Apri tutti i messaggi04 gen 2012, 23.33permalink
05 gen 2012, 01.11permalink
05 gen 2012, 09.46permalink
05 gen 2012, 12.18permalink
05 gen 2012, 12.40permalink
 Chiudi
Apri tutti i messaggi05 gen 2012, 13.26permalink
05 gen 2012, 14.36permalink
05 gen 2012, 14.58permalink
 Chiudi
Apri tutti i messaggi05 gen 2012, 18.18permalink
05 gen 2012, 18.31permalink
06 gen 2012, 10.30permalink
 Chiudi
Apri tutti i messaggi08 gen 2012, 12.31permalink
08 gen 2012, 14.49permalink
08 gen 2012, 23.57permalink
 Chiudi
Apri tutti i messaggi10 gen 2012, 16.56permalink
10 gen 2012, 18.25permalink