Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 21
  1. #1

    Scrivere buon codice?Voi che fate?

    Salve,
    mi piacerebbe sapere gli utenti di questo forum come preferiscono scrivere il loro codice...
    mi spiego meglio:
    stavo prendendo in considerazione di creare il prossimo progetto tramite template in modo da rendere sia a me che al mio grafico la vita un po' più semplice, ma mi stavo chiedendo se fosse il modo migliore per scrivere del buon codice, leggibile e manutenibile.
    Mi piacerebbe sapere come scrivete il vostro codice, che tecniche usate, classi, template o altro, separate grafica e codice o mischiate tutto, e cose di questo tipo, insomma il vostro modo di "codare" in php, magari scappa fuori qualche buona idea (che non ho trovato tramite la ricerca) della quale nessuno ha mai parlato...

  2. #2
    io fino adesso usavo un metodo molto sempliciotto di template, nel senso che la parte statica delle pagine, head, foot e alcune parti le buttavo in un file .tpl e me lo prendevo con php stampandolo direttamente... ora che inizio a fare cose "serie", ho provato smarty, ma non mi hanno fatto una buona impressione (mi aspettavo qualcosa di più versatile) ma allo stesso tempo mi sono scritto una classe per gestirmi i miei template come servono a me, e questa volta tutta la parte della pagina comprese tabelle sono scritte in un file tpl...
    quando devo sostituire qualche pezzo, taglio cosa mi serve, elaboro e mando in output con la parte sostituita... e devo dire che fino adesso, tutti i test che ho fatto sono andati a gonfie vele

    ps: la classe sono 3 funzioni in croce

  3. #3
    consiglio spassionato: prenditi qualche progetto che sicuramente è fatto bene e guarda com'è strutturato.
    Oscommerce, sugarcrm o altro.


  4. #4
    Utente di HTML.it L'avatar di flessciato
    Registrato dal
    Jun 2002
    Messaggi
    1,522
    Originariamente inviato da neohack
    io fino adesso usavo un metodo molto sempliciotto di template, nel senso che la parte statica delle pagine, head, foot e alcune parti le buttavo in un file .tpl e me lo prendevo con php stampandolo direttamente... ora che inizio a fare cose "serie", ho provato smarty, ma non mi hanno fatto una buona impressione (mi aspettavo qualcosa di più versatile) ma allo stesso tempo mi sono scritto una classe per gestirmi i miei template come servono a me, e questa volta tutta la parte della pagina comprese tabelle sono scritte in un file tpl...
    quando devo sostituire qualche pezzo, taglio cosa mi serve, elaboro e mando in output con la parte sostituita... e devo dire che fino adesso, tutti i test che ho fatto sono andati a gonfie vele

    ps: la classe sono 3 funzioni in croce
    io non la sparerei così grossa su smarty... :rollo:
    Slack 10 - Apple G5 2.5 - winzoz xp
    php/mysql/apache
    Flash MX / roba in 3D / roba per il video e l'audio

  5. #5
    io ho letto il manuale ufficiale si smarty... ma quello che serve a me non lo fa

  6. #6
    Io cerco di organizzare il codice a funzioni, in modo da poter riutilizzare codici.

    Più nel dettaglio, quando debbo sviluppare un sito dinamico, comincio col fare una pagina campione vuota (cioè col titolo, intestazione, menù, pié di pagina, stili etc.).
    Ovviamente i contenuti andranno in una ben definita posizione all'interno del codice della pagina campione: quindi, posso dividere la pagina campione in due parti logiche che chiamo "testa" e "coda".
    Poi faccio così: tutta la parte di codice iniziale la metto in una funzione che chiamo proprio "testa", e tutta la parte finale in una funzione di nome "coda". Le funzioni le metto poi in un file incluso in tutte le pagine (es. config.php), ed ogni pagina php avrà la chiamata alla testa, poi mostrerà il contenuto e poi chiamerà coda.
    Ovviamente le funzioni possono essere parametrizzate (es. col titolo della pagina o con l'indice del menù attivo).

    Alla stessa maniera, parti di codice che vengono riutilizzate le implemento come funzioni.

    Come esempio, questo è il codice di una pagina di un sito sviluppato (http://www.galleriadellamusica.it/index.php )

    codice:
    <?
    include ('config.php');
    
    $ddd = '';
    testa(1);
    stili();
    ?>
      	<?	$msp =  20;
    		$m1 = 725;
    	?>
    <table border="0" width="100%" cellspacing="0" cellpadding="0">
      <tr>
        <td width=<?= $msp ?>></td>
        <td valign="top" width=<?= $m1  ?>>
    	<? box() ?>
    	</td>
        <td width=<?= $msp ?>></td>
      </tr>
    </table>
    
    <?
    coda();
    
    
    // FUNZIONI
    
    function box() {
    	sezioneapri("Galleria della Musica");
    	?>
    	<table background="img/img_home.jpg" width="100%" height="370"><tr><td></td></tr></table>
    	<?
    	sezionechiudi();
    }
    
    ?>


    Un altra regola che mi imposto è quella di fare connessioni al database PRIMA di mandare l'output. Cioè, se devo caricare una lista di nomi e visualizzarli, li carico prima in un array, poi chiudo la connessione al db ed infine invio l'output. Questo per dare un minor carico al server e quindi un tempo di caricamento pagina più efficiente.

  7. #7
    Utente di HTML.it L'avatar di flessciato
    Registrato dal
    Jun 2002
    Messaggi
    1,522
    ovvero?!
    Slack 10 - Apple G5 2.5 - winzoz xp
    php/mysql/apache
    Flash MX / roba in 3D / roba per il video e l'audio

  8. #8
    Utente di HTML.it L'avatar di flessciato
    Registrato dal
    Jun 2002
    Messaggi
    1,522
    Originariamente inviato da cicciox80
    Io cerco di organizzare il codice a funzioni, in modo da poter riutilizzare codici.

    Più nel dettaglio, quando debbo sviluppare un sito dinamico, comincio col fare una pagina campione vuota (cioè col titolo, intestazione, menù, pié di pagina, stili etc.).
    Ovviamente i contenuti andranno in una ben definita posizione all'interno del codice della pagina campione: quindi, posso dividere la pagina campione in due parti logiche che chiamo "testa" e "coda".
    Poi faccio così: tutta la parte di codice iniziale la metto in una funzione che chiamo proprio "testa", e tutta la parte finale in una funzione di nome "coda". Le funzioni le metto poi in un file incluso in tutte le pagine (es. config.php), ed ogni pagina php avrà la chiamata alla testa, poi mostrerà il contenuto e poi chiamerà coda.
    Ovviamente le funzioni possono essere parametrizzate (es. col titolo della pagina o con l'indice del menù attivo).

    Alla stessa maniera, parti di codice che vengono riutilizzate le implemento come funzioni.

    Come esempio, questo è il codice di una pagina di un sito sviluppato (http://www.galleriadellamusica.it/index.php )

    codice:
    <?
    include ('config.php');
    
    $ddd = '';
    testa(1);
    stili();
    ?>
      	<?	$msp =  20;
    		$m1 = 725;
    	?>
    <table border="0" width="100%" cellspacing="0" cellpadding="0">
      <tr>
        <td width=<?= $msp ?>></td>
        <td valign="top" width=<?= $m1  ?>>
    	<? box() ?>
    	</td>
        <td width=<?= $msp ?>></td>
      </tr>
    </table>
    
    <?
    coda();
    
    
    // FUNZIONI
    
    function box() {
    	sezioneapri("Galleria della Musica");
    	?>
    	<table background="img/img_home.jpg" width="100%" height="370"><tr><td></td></tr></table>
    	<?
    	sezionechiudi();
    }
    
    ?>


    Un altra regola che mi imposto è quella di fare connessioni al database PRIMA di mandare l'output. Cioè, se devo caricare una lista di nomi e visualizzarli, li carico prima in un array, poi chiudo la connessione al db ed infine invio l'output. Questo per dare un minor carico al server e quindi un tempo di caricamento pagina più efficiente.
    Per mandarti in crash il server basta dare

    http://www.galleriadellamusica.it/pr...p?m=cat&id=xxx

    se vuoi posso "svilupparla meglio"
    Slack 10 - Apple G5 2.5 - winzoz xp
    php/mysql/apache
    Flash MX / roba in 3D / roba per il video e l'audio

  9. #9
    Utente di HTML.it L'avatar di flessciato
    Registrato dal
    Jun 2002
    Messaggi
    1,522
    il sito si apre?
    Slack 10 - Apple G5 2.5 - winzoz xp
    php/mysql/apache
    Flash MX / roba in 3D / roba per il video e l'audio

  10. #10
    Utente di HTML.it L'avatar di flessciato
    Registrato dal
    Jun 2002
    Messaggi
    1,522

    un altra cosa

    Un altra regola che mi imposto è quella di fare connessioni al database PRIMA di mandare l'output.
    perchè secondo te si può dare in output qualcosa senza aver prima dato una connessione ad un database

    e poi scrivendo lo script in quel modo (e anche la query)
    mostri all'utilizzatore malintenzionato che stati usando Access tramite ODBC (non è vero?! )

    Ti CONSIGLIO MySQL... e alla svelta...
    Slack 10 - Apple G5 2.5 - winzoz xp
    php/mysql/apache
    Flash MX / roba in 3D / roba per il video e l'audio

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 © 2025 vBulletin Solutions, Inc. All rights reserved.