Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    differenza performace - osservare un elemento

    Mi domandavo se le performance tra le due seguenti soluzioni sono rilevanti (quindi quale mi conviene utilizzare nel caso medio), oppure se le prestazioni sono quasi identiche e quindi utilizzare l'una o l'altra risulta indifferente?

    codice:
    <html>
    <thead>
    <script type="text/javascript" src="http://prototypejs.org/assets/2009/8/31/prototype.js"></script>
    <script type="text/javascript">
    myFunction(elt) {
           alert(elt);
    }
    </script>
    </thead>
    <tbody>
    <div id="aaa" onclick="myFunction(this)"> cliccami </div>
    </tbody>
    </html>
    codice:
     
    <html>
    <thead>
    <script type="text/javascript" src="http://prototypejs.org/assets/2009/8/31/prototype.js"></script>
    <script type="text/javascript">
    functin myFunction(elt) {
        alert(elt);
    }
    function init() {
            Event.observe($('aaa'), 'click', function(event){
    		myFunction(this);
    	});
    }
    window.onload = init;
    </script>
    </thead>
    <tbody>
    <div id="aaa"> cliccami </div>
    </tbody>
    </html>
    Grazie

  2. #2
    Mi domandavo se le performance tra le due seguenti soluzioni sono rilevanti
    Scusate, volevo scrivere:

    se la differenza di prestazioni tra le due soluzioni proposte è simile o se una è decisamente migliore (più performante in termini di computazione e spazio occupato in memoria) dell'altra

  3. #3
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    aldila' delle performance, la seconda presuppone che il documento venga completamente caricato prima di assegnare il gestore evento
    la prima immerge javascript nel markup, approccio parecchio datato
    e non sfrutta pienamente una libreria come prototype

    per riassumere: usa la seconda, ma richiama init al dom:loaded
    http://www.prototypejs.org/api/document/observe

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    se e' solo la performance che ti interessa, la prima non puo' che essere piu' veloce

    pero' valutane la duttilita' e la difficolta' di manutenzione e passerai immediatamente alla seconda

  5. #5
    Grazie! Come pensavo! La prima è più performante, ma la seconda è da preferire per questioni legate alla manutenzione

    Ultima domanda:
    Mettiamo caso che devo realizzare uno script JS per la gestione delle tabelle.
    Questo script mi permetterà di eseguire le operazioni di "aggiungi una riga", "elimina una riga", ecc
    Potrei realizzare questo script in due modi:
    1 Prototype mi da la possibilità di creare delle classi JS. Quindi creo l'oggetto DataGrid
    2 Utilizzo semplicemente delle funzioni, senza creare una classe
    La soluzione 1 mi sembra molto elegante, ma non si rischia di appesantire troppo l'apllicativo? La soluzione 2 mi sembra molto performante, non mi dire che anche quest'ultima è datata? Quale delle due mi consigli?

    (con questa domanda non voglio soffermarmi sulla gestione delle tabelle, è solo un esempio per sapere se mi conviene, nel caso medio, scrivere classi in JS o semplici funzioni - vorrei riuscire a scrivere applicativi web con una certa logica e ordine, ma allo stesso tempo performanti)

  6. #6
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    la scelta tra OOP e procedurale dipende molto dal progetto

    una libreria come prototype, come il nome stesso suggerisce, si presta bene all' approccio OOP

  7. #7
    Ok grazie 1000 per i consigli!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.