Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico
Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico
Nothing Phone (4a) Pro cambia pelle: l'alluminio unibody sostituisce la trasparenza integrale, portando una solidità inedita. Sotto il cofano troviamo uno Snapdragon 7 Gen 4 che spinge forte, mentre il display è quasi da top dig amma. Con un teleobiettivo 3.5x e la Glyph Matrix evoluta, è la prova di maturità di Carl Pei. C'è qualche compromesso, ma a 499EUR la sostanza hardware e la sua unicità lo rendono un buon "flagship killer" in salsa 2026
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
Con Midnight, Blizzard tenta il colpaccio: il player housing sbarca finalmente su Azeroth insieme a una Quel'Thalas ricostruita da zero. Tra il dramma della famiglia Ventolesto e il nuovo Prey System, ecco com'è la nuova espansione di World of Warcraft
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Nuova frontiera per i robot tagliaerba, con Ecovacs GOAT O1200 LiDAR Pro che riconosce l'ambiente in maniera perfetta, grazie a due sensori LiDAR, e dopo la falciatura può anche rifinire il bordo con il tagliabordi a filo integrato
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 14-01-2006, 14:04   #1
NeoNum6
Senior Member
 
Iscritto dal: Feb 2004
Città: BhO
Messaggi: 3701
Obbiettivo risparmio risorse in C

secondo voi in una logica di rispiarmio delle risorse di sistema è una buona tecnica di programmazione utilizzare che magari variabili sono state utilizzate in un'altra parte di codice(naturalmente facendo in modo che questo non influisca la corretta riuscita del programma)
__________________
Linux User 414915 linux counter
Ho concluso con yorick, gor, djgusmy85, sulphur, Rospaccio, Leland Gaunt, paciuli
NeoNum6 è offline   Rispondi citando il messaggio o parte di esso
Old 14-01-2006, 14:23   #2
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Quote:
Originariamente inviato da NeoNum6
secondo voi in una logica di rispiarmio delle risorse di sistema è una buona tecnica di programmazione utilizzare che magari variabili sono state utilizzate in un'altra parte di codice(naturalmente facendo in modo che questo non influisca la corretta riuscita del programma)
No.
fek è offline   Rispondi citando il messaggio o parte di esso
Old 14-01-2006, 14:55   #3
NeoNum6
Senior Member
 
Iscritto dal: Feb 2004
Città: BhO
Messaggi: 3701
e perchè no??
__________________
Linux User 414915 linux counter
Ho concluso con yorick, gor, djgusmy85, sulphur, Rospaccio, Leland Gaunt, paciuli
NeoNum6 è offline   Rispondi citando il messaggio o parte di esso
Old 14-01-2006, 14:58   #4
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Quote:
Originariamente inviato da NeoNum6
e perchè no??
Perche' no

A parte gli scherzi, perche' la risorsa piu' limitata e che va ottimizzata quando si programma e' il cervello del programmatore. E riutilizzare variabili globali e' sicuramente il modo peggiore di aiutarlo. Quindi no, non e' una buona pratica di programmazione.

Il tuo obiettivo deve essere sempre e solo la correttezza di cio' che scrivi e la sua leggibilita'. Quando hai raggiunto questi due obiettivi, quando hai dei requisiti chiari riguardo all'uso delle risorse a tua disposizione, allora puoi passare all'ottimizzazione. Ma non prima.
fek è offline   Rispondi citando il messaggio o parte di esso
Old 14-01-2006, 16:45   #5
NeoNum6
Senior Member
 
Iscritto dal: Feb 2004
Città: BhO
Messaggi: 3701
...bhè si hai sicuramente ragione...ma un programmatore esperto come si comporta??
__________________
Linux User 414915 linux counter
Ho concluso con yorick, gor, djgusmy85, sulphur, Rospaccio, Leland Gaunt, paciuli
NeoNum6 è offline   Rispondi citando il messaggio o parte di esso
Old 15-01-2006, 19:27   #6
rdefalco
Senior Member
 
L'Avatar di rdefalco
 
Iscritto dal: Feb 2005
Città: Napoli (provincia)
Messaggi: 2372
Se dopo aver riutilizzato le variabili sposti alcuni frammenti di codice (magari per anticipare la chiusura di alcune risorse) potresti mandare in overlap i due utilizzi e non capiresti più perché il programma prima andava, dopo no.
__________________
Raffo™ (io, non la birra) | informatica»unisa.it | my terzigno | για να είναι ή για να μην είναι
rdefalco è offline   Rispondi citando il messaggio o parte di esso
Old 15-01-2006, 20:27   #7
17Qwerty71
Senior Member
 
Iscritto dal: Jul 2005
Città: San Marino
Messaggi: 309
Quote:
Originariamente inviato da NeoNum6
...bhè si hai sicuramente ragione...ma un programmatore esperto come si comporta??
Un programmatore è esperto quando scrive codice chiaro e autoesplicativo
__________________
17Qwerty71 è offline   Rispondi citando il messaggio o parte di esso
Old 15-01-2006, 21:53   #8
tglman
Senior Member
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 414
be io direi che variabili del tipo i,k si possono riutilizzare, con molta attenzione....

mai capitato:
Codice:
for(i=0;i<n;i++)
{
     for(i=0;i<n;i++);
}
e poi non ha funzionato più niente.....

comunque personalmente prima creo 300 variabili all'inizio e cerco di scrivere codice comprensibile, poi salvo e metto da parte per rileggere in futuro, poi passo al massacro, cioe i 3000 puntatori diventano un'unico void *, i 300 indici diventano tutti i, e alla fine non si capisce più niente....
però dorebbe esere più veloce

ciao !
tglman è offline   Rispondi citando il messaggio o parte di esso
Old 15-01-2006, 22:04   #9
17Qwerty71
Senior Member
 
Iscritto dal: Jul 2005
Città: San Marino
Messaggi: 309
Quote:
Originariamente inviato da tglman
be io direi che variabili del tipo i,k si possono riutilizzare, con molta attenzione....

mai capitato:
Codice:
for(i=0;i<n;i++)
{
     for(i=0;i<n;i++);
}
e poi non ha funzionato più niente.....

comunque personalmente prima creo 300 variabili all'inizio e cerco di scrivere codice comprensibile, poi salvo e metto da parte per rileggere in futuro, poi passo al massacro, cioe i 3000 puntatori diventano un'unico void *, i 300 indici diventano tutti i, e alla fine non si capisce più niente....
però dorebbe esere più veloce

ciao !
Ma perchè invece di utilizzare variabili come i, j, h, è, z... e chi più ne ha più ne metta non utilizzare identificativi come ContUp (possibile nome di un contatore), oppure PosCharStr (Contatore per la posizione all'interno di un'array di caratteri) ?
Poi nel caso di una variabile che serve da contatore è un po' diversa la cosa, se sai già (e sei sicuro) che nei due casi in cui le utilizzi, seppur per cicli diversi, non avviene nessun tipo di conflitto puoi farlo senza danneggiare la leggibilità del codice.
__________________
17Qwerty71 è offline   Rispondi citando il messaggio o parte di esso
Old 15-01-2006, 22:08   #10
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Quote:
Originariamente inviato da tglman
comunque personalmente prima creo 300 variabili all'inizio e cerco di scrivere codice comprensibile, poi salvo e metto da parte per rileggere in futuro, poi passo al massacro, cioe i 3000 puntatori diventano un'unico void *, i 300 indici diventano tutti i, e alla fine non si capisce più niente....
però dorebbe esere più veloce

ciao !
Dovrebbe e nella maggior parte dei casi non lo e'
Pero' hai perso in leggibilita'.

Condividere variabili temporanee e' perfettamente inutile in termini di prestazioni perche' e' un lavoro che il compilatore gia' fa e lo fa meglio di quanto lo possa fare il programmatore (si chiama register allocation).

Le regole per usare le variabile dovrebbero essere:

- Dichiarare la variabile solo quando e' usata (non all'inizio della funzione) e inizializzarla.

- Dare uno e un solo scopo ad ogni variabile (non riutilizzarle).

- Minimizzare la vita di una variabile, ovvero il numero di linee di codice in cui la variabile e' usata
fek è offline   Rispondi citando il messaggio o parte di esso
Old 16-01-2006, 11:57   #11
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
aggiungo piuttosto che un risparmio intelligente che un programmatore potrebbe (e dovrebbe sempre) fare è quello di deallocare risorse allocate dinamicamente il prima possibile (analogamente a come si dovrebbe fare per le variabili insomma ). altra cosa importante è evitare i leak, non solo nell'heap (malloc/realloc/free) ma anche qualsiasi altro tipo di leak di risorse, ad esempio handles di Windows, file descriptors di Linux, oggetti, risorse allocate tramite funzioni intermedie fornite da librerie statiche o dinamiche, eccetera.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 16-01-2006, 11:58   #12
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
oppure alternativa sarebbe quella di usare un garbage collector, ma purtroppo non sempre se ne ha la possibilità.
71104 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico Recensione Nothing Phone (4a) Pro: finalmente in...
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro WoW: Midnight, Blizzard mette il primo, storico ...
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato Ecovacs Goat O1200 LiDAR Pro: la prova del robot...
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere? Recensione Samsung Galaxy S26+: sfida l'Ultra, m...
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti Zeekr X e 7X provate: prezzi, autonomia fino a 6...
Roscosmos aggiorna le tempistiche per la...
Confermato il ritardo delle missioni rob...
L'Intelligenza Artificiale ora può...
Il data center del futuro secondo Huawei...
Spesa a domicilio senza conducente: robo...
Satoshi Nakamoto ha finalmente un volto?...
La Corea del Sud taglia fuori i bus elet...
GoPro taglia ancora: licenziato il 23% d...
Muse S Athena: la fascia che ti legge ne...
PS5 Pro e PSSR 2.0: tutti i giochi compa...
Dimensity 9600 Pro promette prestazioni ...
BMW i7 2026 adotta celle cilindriche Gen...
Cyberpunk 2077 si aggiorna su PS5 Pro co...
Valve porta Steam Link su Vision Pro per...
Google Maps: ufficiali 3 novità c...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 22:07.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v