|
|
|
![]() |
|
Strumenti |
![]() |
#121 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
x samslaves: bella la tua storia.
![]() Anch'io alla scuola superiore mi sono scontrato con i PC e i pacchetti Borland usati per programmare, ma mi devo dire che mi sono piaciuti molto e ne ho sempre desiderato un porting per Amiga. Infatti a casa avevo un Amiga 2000 con 1MB di ram, e usavo un lentissimo emulatore PC per lavorare col Turbo Pascal. ![]()
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
#122 |
Senior Member
Iscritto dal: Jun 2003
Messaggi: 1498
|
>Una curiosità: cosa te ne fai dei file .NIB? <
Nella maggior parte delle tools C++ e Java (lo stesso VB) lo sviluppatore subclassa le classi standard e scrive linee di codice per fare in modo che i controlli o le finestre ad esempio, sebbene usino un RAD che permetta di posizionarli e definirne certe caratteristiche, rispondano ad eventi o interagiscano tra di loro e con la logica dell'applicazione. Usando l'Interface Builder (gia' dal NeXT poi OpenStep e ora OS X) non si ha a disposizione un RAD classico; una volta posizionati i controlli ecc... non si deve scrivere codice per gestire interazioni tra finestre, controlli e logica. Si usano connessioni grafiche. I files NIB (Next Interface Builder) conterranno tutte queste informazioni. Sono files che contengono non codice (classi) ma oggetti gia' istanziati con informazioni sulle connessioni/azioni verso o da altri oggetti (ad esempio quelli della logica dell'applicazione). A differenza delle altre tools quindi nel codice non troverai mouseDown ecc... ma tutto questo e' trasparente non ti interessa. Inoltre l'interfaccia non viene creata a runtime quando il codice viene eseguito, ma si trova gia' congelata su disco. Poi puoi proseguire anche nel modo classico, ma questo ha fatto (a suo tempo) la fortuna di OpenStep a livello Enterprise e per i centri tipo CIA (ne ordinarono a migliaia) dove il rapid prototyping (vero) era necessario. Il primo browser fu creato su di un NeXT Cube cosi'. Poi Sun, per beghe interne, passo a Java riportandoci indietro di 10 anni. |
![]() |
![]() |
![]() |
#123 | ||
Member
Iscritto dal: Sep 2004
Messaggi: 64
|
Quote:
L'articolo a cui ti riferisci è infatti scritto sulla release 10.1 (settmbre 2001) e Quartz non si appoggiava su OpenGL. Il discorso dell'autore è piuttosto oggettivo a riguardo: But like much of the rest of OS X, pervasive window buffering is slightly ahead of current state of hardware. Long-term, this is also a good thing, in my opinion. It's easier to wait for hardware to catch up to your ambitious (but clean) software architecture than it is to try to revamp your operating system in response to advances in hardware (just ask Apple ;-) Quote:
Avalon lavorerà su DirectX per gli stessi motivi per i quali Quartz usa OpenGL. Quartz è stato il primo della sua "specie" ad usare un'API che sfrutta le gpu per la gui. E' una novità. Poco importa cosa potevi fare con l'Amiga, al tempo qualsiasi applicativo "intensivo" veniva scritto col compilatore da un lato e l'editor binario dall'altro, non c'era certo il livello di astrazione nello sviluppo raggiunto oggi nè la stessa integrazione, nè le stesse funzionalità nelle interfacce. |
||
![]() |
![]() |
![]() |
#124 | |
Senior Member
Iscritto dal: Dec 2000
Città: Carrara
Messaggi: 505
|
Quote:
Ti quoto qui perché in altre occasioni hai fatto lo stesso discorso per Longhorn ![]() W la gina sempre
__________________
Apple Powerbook17 - Asus A7Jc Million Dollar Square Hai partecipato anche tu al sondaggio per il Miglior disco rock? |
|
![]() |
![]() |
![]() |
#125 | |||||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
La questione è nella modalità con cui ogni s.o./applicazione effettua la gestione, e di conseguenza il redraw, degli oggetti grafici. Quote:
Quote:
Quote:
Pensa che nelle prime versioni di AmigaOS. avevano usato il Blitter perfino nell'implementazione della WritePixel e della ReadPixel, tanto era l'uso smodato che si faceva dell'hardware custom di cui erano dotati questi computer: poi sono state scritte usando solamente la CPU perché per questo tipo di operazioni era l'unità più adatta. Per Windows vedi sopra: da anni la GDI è implementata nelle GPU, e le tutte le chiamate vengono smistate a quest'ultima. Quote:
E' chiaro che ai tempi le primitive implementate in hardware non erano molte (mancava, ad esempio, quella per disegnare ellissi), ma la GUI di AmigaOS è stata sempre molto funzionale e comoda, e col tempo ha subito notevoli migliori, com'è ovviamente avvenuto per ogni s.o... Poi la Commodore è fallita e chiaramente lo sviluppo s'è arrestato, ma se ancora oggi vai a dare un'occhiata a quello che si riusciva a fare, anche con GUI di terze parti / commerciali (la MUI, ad esempio, è semplicemente impressionante a vederla ancora in funzione), penso che AmigaOS non ha mai avuto nulla da invidiare e ancora oggi potrebbe dire la sua, pur con tutti i limiti di cui sopra.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys Ultima modifica di cdimauro : 20-01-2005 alle 08:21. |
|||||
![]() |
![]() |
![]() |
#126 | ||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
![]() Quote:
![]()
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
||
![]() |
![]() |
![]() |
#127 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
x samslaves: grazie per le informazioni. Mi sembra molto interessante, e per questo la sua conoscenza meriterebbe di essere approfondita...
![]()
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
#128 | |
Senior Member
Iscritto dal: Dec 2000
Città: Carrara
Messaggi: 505
|
Quote:
__________________
Apple Powerbook17 - Asus A7Jc Million Dollar Square Hai partecipato anche tu al sondaggio per il Miglior disco rock? |
|
![]() |
![]() |
![]() |
#129 | ||||
Member
Iscritto dal: Sep 2004
Messaggi: 64
|
Quote:
HAI COMUNQUE CITATO UN'ARTICOLO SU OSX 10.1 e stiamo parlando di Panther ![]() Quote:
Quote:
Quote:
|
||||
![]() |
![]() |
![]() |
#130 | |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|
![]() |
![]() |
![]() |
#131 | |||||||||||||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
Quote:
Quote:
La differenza fra OS X 10.1 e Panther è che quest'ultimo usa le funzionalità OpenGL della GPU per visualizzare la grafica. Ma il window server di cui parlava samslaves si basa sempre sullo stesso principio (windows buffer per ogni finestra). Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Ricordo che ai tempi della conversione de "Il Re Leone" dalle console dell'epoca (SuperNintendo e Megadrive/Genesis) venne fuori che il programmatore che aveva realizzato quel gioco odiava il Blitter, e che aveva preferito usare la CPU per visualizzare la grafica. Infatti i risultati si sono visti: il gioco scattava che era una bellezza, perfino la versione per Amiga1200/4000 (per il chipset AGA). La verità è che non sapeva come usarlo: forse era troppo abituato a impostare le coordinate x e y per gli sprite hardware delle console (che, quindi, facevano tutto il lavoro). ![]() Comunque, per mi riguarda ho programmato per anni il Blitter e tutto mi puoi dire fuorché che fosse instabile o addirittura inefficiente: un pezzo di silicio in grado di spostare fino a circa 4 MB/s applicandoci delle funzioni logiche, shift e maskeramento ai dati, e per il 1985 era NOTEVOLE. D'altra parte se fosse stato instabile alla Commodore sarebbero dei pazzi da legare, visto che l'hanno usato per la de/codifica dei dati (nel trackdisk.device, il "driver" che si occupa di gestire i floppy) e che vengono letti/scritti sui floppy. Immagino già le urla disperate degli utenti che non riescono neppure a fare il boot perché il Blitter fa i capricci... Quote:
Io ho sviluppato sia giochi, sfruttando direttamente l'hardware, sia applicazioni, usando chiaramente le API dell'AmigaOS, e ancora oggi ricordo piuttosto bene parecchi dettagli in merito. E non mi permetterei mai di dire cose che non stanno né in cielo né in terra, come hai fatto tu. Quote:
Quote:
Quote:
Un consiglio: evita di "alzare la voce". Finora ho usato un tono cordiale e ho preferito discutere, ma sai che so essere anch'io molto feroce nelle risposte, se voglio.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|||||||||||||
![]() |
![]() |
![]() |
#132 | |
Bannato
Iscritto dal: Jun 2004
Messaggi: 4607
|
Quote:
|
|
![]() |
![]() |
![]() |
#133 |
Member
Iscritto dal: Sep 2004
Messaggi: 64
|
E' vero ma IMHO è per alcuni un argomento di contestazione assurdo. Anche in windows una finestra di un'applicazione "piantata" può essere mossa per lo schermo, ridimensionata, ridotta e ripristinata. Dipende da diversi fattori, non ultimo ad esempio il fatto che un'app "spalmata" su più processi resti viva nonostante il fallimento di una sua "parte". I benefici di cui l'autore parla e che altri (se non sbaglio samslaves) su questo 3d hanno evidenziato sono legati più che altro all'architettura client/server del sottosistema grafico: liberare l'"applicazione" dalla "visualizzazione" è un vantaggio esattamente come separare i "dati" dalla "presentazione" nella comune programmazione. Il che implica l'adozione di un buffer per le informazioni delle finestre così come in un qualsiasi sottosistema client/server sia l'uno che l'altro possono utilizzare un buffer per un qualsiasi altro motivo. Che i buffer introducano "inefficenza" è una posizione assolutamente soggettiva.
La considerazione che i buffer possono appunto essere compressi (questo dalle mie parti si chiama "efficenza" della gestione della memoria) credo debba essere comunque valutata insieme alla questione del rendering effettuato tramite OpenGL, perchè nel momento in cui una finestra diventa texture e viene "lavorata" su opengl il benedetto buffer in questione non conterrà certo la texture della finestra in questione (come vogliono far credere alcuni), nè interesserà significativamente più di prima il processore. Il che, ripeto, porta ad un utilizzo più ragionevole di acceleratori grafici che nel 90% dei casi resterebbero pressochè inutilizzati. E direi che è questo che spiega la fluidità di applicazioni come exposè, più che il buffering o la struttura client/server in sè. Poteva essere un "killer" in 10.1, di sicuro non lo è oggi. |
![]() |
![]() |
![]() |
#134 | |
Member
Iscritto dal: Sep 2004
Messaggi: 64
|
Quote:
|
|
![]() |
![]() |
![]() |
#135 | |
Senior Member
Iscritto dal: Jul 2000
Messaggi: 2574
|
Quote:
![]() Certo che 'ste questioni vi stanno VERAMENTE a cuore eh ? ![]() Allora, dicevamo, Macworld Expo 2005 ?
__________________
---- noivelocisti.net ---- |
|
![]() |
![]() |
![]() |
#136 | |
Senior Member
Iscritto dal: Jan 2003
Città: Milano - Udine
Messaggi: 9418
|
Quote:
Se decidi di impostare la conversazione su di un certo tono devi essere anche conscio che l'altro potrebbe non "mandartele a dire"; e la minaccia cmq era solo verbale, nel senso che nello scontro tra opinioni diverse avrebbe cercato tramite info tecniche ( sempre + accurate) di smontarti; mica esce di casa prende la lupara e ti bussa alla porta ![]() Cmq Giava&Pis per tutti ![]() n sò se era stato postato in precedenza, cmq lascio l'url del sito link Saluti ![]() |
|
![]() |
![]() |
![]() |
#137 | ||||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
L'unico inconveniente si verifica quando un'applicazione non risponde: qui chiaramente OS X la fa da padrone, perché permette di visualizzarne comunque il contenuto. Ma non so quanto possa essere importante poterlo fare, visto lo stato in cui versa l'applicazione. Quote:
Quote:
Quote:
Comunque, come ho già detto, ogni sistema ha i suoi pro e i suoi contro. Windows e Mac OS Classic permettono di avere e mantenere un elevato numero di finestre anche su sistemi dotati di poca memoria. Inoltre Windows fa già uso da tempo della GPU per implementare le funzioni della GDI, per cui il carico sulla CPU risulta comunque molto più ridotto.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
||||
![]() |
![]() |
![]() |
#138 | ||||||||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
Quote:
Quote:
Quote:
Quote:
Invece in Windows e MacOS Classic non sprechi la CPU per queste operazioni, e il consumo di memoria è enormemente ridotto: quindi sono sicuramente più efficienti (Windows particolarmente, visto che sfrutta la GDI implementata in hardware nelle schede video). Quote:
Quote:
Quote:
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
||||||||
![]() |
![]() |
![]() |
#139 | |||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
![]() Inoltre non accetto sermoni da chi passa più tempo a provocare che ad argomentare le proprie tesi: Quote:
Quindi se c'è qualcuno che si deve moderare qui sei tu. ![]() D'altra parte qualche giorno fa in questo stesso thread t'avevo scritto questo: Quote:
Ma evidentemente è più forte di te: il tuo spirito da troll non riesce a starsene fermo, se non per un breve periodo. Poi deve per forza liberarsi e sfogarsi. Per quanto mi riguarda, e come ti ho già anticipato, se non torni sui binari giusti la prossima volta i miei commenti non saranno così pacati come lo sono stati finora: saranno mazzate. Verbali come ha giustamente sottolineato DioBrando. D'altra parte sei tu stesso che te le stai cercando. Invece di perdere tempo con delle stupide provocazioni, cerca di documentarti invece di uscirtene fuori con delle assurdità come "Copper e Blitter gestivano gli SPRITE ed in maniera MOLTO primitiva il disegno/filling PIENO degli oggetti 3d, non certo la gui del WORKBENCH": può far presa soltanto con chi, come te, ignora completamente come funzionasse sia l'hardware sia il s.o. dell'Amiga... ![]() ![]()
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|||
![]() |
![]() |
![]() |
#140 | |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
Erano tempi in cui l'"Hardware Manual" e i "ROM Kernel Manuals" erano la bibbia per chi programmava l'hardware direttamente o utilizzava le API del s.o... Erano tempi in cui ci si sbatteva la testa per risparmiare anche un ciclo di clock, visto l'hardware limitato che era disponibile. Erano tempi in cui si fagocitavano avidamente le pagine di quel manuale e facendo prove su prove per cercare di spremerlo come un limone. E mi dà veramente fastidio che uno come lui, che di tutto ciò NON CONOSCE NULLA, si permetta criticare e d'inventarsi addirittura delle cose di sana pianta (come l'instabilità e l'inefficienza del Blitter). Qualunque programmatore Amiga rimarrebbe indignato a sentire tutte queste falsità, e Jay Miner si starà già ribaltando nella tomba...
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 03:54.