Mi mancava il pro player della situazione...Forsr ignori che i compilatori C Java se ne fregano dell aspetto o degli spazi. quindi tabbare è sempre stato un mero vezzo estetico. cosa che qui non è.
Printable View
Mi mancava il pro player della situazione...Forsr ignori che i compilatori C Java se ne fregano dell aspetto o degli spazi. quindi tabbare è sempre stato un mero vezzo estetico. cosa che qui non è.
La leggibilità del codice non è un mero vezzo estetico, così come non lo sono i commenti.
Sto 3d è epico :sneer:
cavolo che merda il python! molto meglio il c con vi!
:sneer:
Mi convinco giorno dopo giorno che tu abbia dei difetti di comprensione dell'italiano.
Evidentemente non comprendi la differenza tra Estetica e Funzionalità.
Vediamo se ti è piu chiaro.
In C++ / C scrivere:
Funziona diversamente da:Code:if (a==b){ for(int i=0;i<=a;i++) for (j=0;j<=b;j++) x=i;y=j; cout << vector[x][y] << endl; cout << "Prova Prova"; }
La Risposta è NO. Ergo l'estetica in C/Java/C++ si segue solo ed esclusivamente per rendere il codice leggibile, python ti obbliga a torto/ragione invece ad avere un codice esteticamente piacevole.Code:if (a==b){
for(int i=0;i<=a;i++)
for(int j=0;j<=b;i++)
x=i;
y=j;
cout << vector[x][y] << endl;
cout << "Prova Prova";
}
Mi sembra che facciate i pro player per una questione che non esiste.
Vuoi scrivere codice bello, fai pure. Io ho pagine di codice ottimizzato al cui interno vi sono sberle di SSE2, e segmenti __asm, e non è certo piacevole esteticamente.
Sinceramente ritengo che scrivere del codice leggibile sia obbligatorio o comunque necessario per permettere successive modifiche o permettere a estranei di leggere il codice, ma questa è un regola di "educazione", non una regola dettata dal linguaggio o dal compilatore.
Ma sicuramente sei migliore di me e sinceramente non me ne può fregar di meno.
Vabbè rigira la frittata come vuoi, il senso tanto è chiaro a tutti.
La cosa fun è che insisti ancora dopo una figura a dir poco barbina, gg :sneer:
Sicuramente Axet, guarda io ho scritto questo:
Ed è alquanto chiaro, ma evidentemente sei molto bravo a scrivere codice e poco a leggere un libro, punti di vista :)
A dimostrarti ancor, come se non si fosse già capito, che l'estetica != funzionalità. Il codice di seguito, è l'inverso della radice quadrata, scritto da Carmack per Quake 3 Arena, operazione che va come un treno, sicuramente molto leggibile....
Arrogante come sei dirai che non è vero. Link : http://en.wikipedia.org/wiki/Fast_inverse_square_rootCode:
float Q_rsqrt (float number)
{
long i;
float x2, y;
const float threehalfs = 1.5F;
x2 = number * 0.5F;
y = number;
// evil floating point bit level hacking [sic]
i = * ( long * ) &y;
// what the fuck? [sic]
i = 0x5f3759df - ( i >> 1 );
y = * ( float * ) &i;
// 1st iteration
y = y * ( threehalfs - ( x2 * y * y ) );
return y;
}
Ora tornatene a spingere l'alfa nella notte.
Ma che minchia di senso ha sto reply? :rotfl: :rotfl: :rotfl: :rotfl:
Oltretutto il codice alla pagina che wiki che hai linkato è indentato correttamente, ti sei perso la formattazione con il copia-incolla :rotfl: :rotfl: :rotfl: :rotfl:
Oh cmq contento te, scrivi pure il codice come un babbuino senza spazi, indentazioni (giusto non sai che sono :sneer:) e commenti. Però hai le parentesi che delimitano i blocchi di codice, eh!
Sei sicuro che ti stai per laureare in informatica e non in veterinaria?
Mi spiace Axet, riprova :)
. L'argomento è: Scrivere codice estetico o no cambia l'effetto su un compilatore C?. Ma tu as usual devi passare sul piano personale che non centra niente, non avendo mai visto del codice scritto da me.Quote:
Sinceramente ritengo che scrivere del codice leggibile sia obbligatorio o comunque necessario per permettere successive modifiche o permettere a estranei di leggere il codice, ma questa è un regola di "educazione", non una regola dettata dal linguaggio o dal compilatore.
Ti consiglio un buon libro, potresti imparare a comprendere l'italiano. :)
Mi stupisco del fatto che essendo tu un genio dell'informatica ignori cosa sia quel codice. Ma forse io da povero agrario ti insegnerò una cosa. Un codice non è leggibile solo perchè è tabbato, ma anche perchè si capisce cosa fa.
Carmack dovette spiegare perchè usava quei numeri e cosa diavolo faceva, perchè pur essendo identato nessuno ci aveva capito na mazza.
Cristo santo :rotfl:
Scusa, che intendi con funzionalita`? Maggiore velocita`? Non mi risulta che se nel listato metti spazi, tabulazioni e commenti l'eseguibile poi e` piu` lento... Il compilatore ci passa sopra con signorilita`. O almeno dovrebbe.
Quel codice e` piu` efficiente perche` per la combinazione di istruzioni (oltre che per alcune istruzioni nello specifico), non per come e` scritto.
Sia chiaro, uno puo` scrivere il codice come cazzo gli pare, purche funzioni. Ma visto che uno dei trend che piu` si e` affermato negli ultimi decenni e` quello della riutilizzabilita` del codice, chi poi ci dovra`ravanare in quel codice potrebbe apprezzare avere il tutto indentato e ordinato a dovere. In generale, noi umani ci troviamo piu` comodi cosi`.
Poi se a te danno fastidio fronzoli come indentazione e leggibilita`, non capisco perche` perda tempo con linguaggi ad alto livello invece che dedicarti alla scrittura direttamente in codice macchina.
E' quello che sto cercando di dire, in C estetica non vuol dire funzionalità, non cambia assolutamente niente. Puoi tabbare o no, per rendere il codice leggibile, non hai aumenti di prestazioni.
Ma poi dove avrei detto che mi da fastidio la tabulazione o avere un codice leggibile, ho pure scritto che dovrebbe essere obbligatorio scrivere codice leggibile.
Per dovere di cronaca il codice di Carmack era veloce, quasi a livello di un SIMD, grazie a quel famoso Evil Number, che gli permetteva di approssimare la rsqrt. Non ha mai spiegato come l'abbia trovato o chi effettivamente l'abbia scoperto.
Il senso di quel codice perke l'ho messo non è: TABBI = CODICE LEGGIBILE, puoi anche tabbare quanto vuoi ma di quel codice non si capì nulla fino a che in una conferenza non venne spiegato.
Cioè ora posso scrivere blocchi assembler, ma se l'idento è tutto comprensibile. E' un ragionamento un po del cavolo.
Il codice non è leggibile solo perchè tabbato, ma anche perchè si riesce a comprendere semplicemente cosa fa, grazie a commenti, ecc. Spesso inoltre scrivere del codice leggibile (che ripeto non è solo l'identazione....) comporta dall'altro cali prestazionali.
ah ok.
Cmq l'indentazione serve per far capire il flusso del programma non il suo funzionamento
Esatto, a me pareva abbastanza chiaro che identare = aiutare una persona che legge il codice. Cosi come molti altri approcci nella codifica servono per rendere il codice comprensibile. Tutto il mio discorso era, mentre in C uso l'identazione per un utente, in python devo usarla anche riferito al compilatore. Ma i pro player non san leggere a quanto pare.