Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Redmi Watch 6 in prova: lo smartwatch con ampio display da 2000 nit a meno di 100 euro
Redmi Watch 6 in prova: lo smartwatch con ampio display da 2000 nit a meno di 100 euro
Xiaomi ha portato Redmi Watch 6 anche sul mercato italiano, puntando su un display AMOLED da 2,07 pollici con picco di luminosità a 2000 nit, frame in alluminio da 9,9mm e un'autonomia dichiarata di 12 giorni. Lo smartwatch gira su HyperOS 3 e integra GPS, Bluetooth 5.4 e oltre 150 sport mode. Il tutto a meno di 100 euro
Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ADV, ma con molti più pulsanti
Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ADV, ma con molti più pulsanti
Con 22 tasti, il pulsante 5D, lo Shift Mode e il sensore PixArt 3395 da 26.000 DPI, il nuovo mouse wireless di Mad Catz si rivolge in modo preciso ai giocatori di MMO e RPG. Ma chi conosce già il R.A.T. 8+ ADV si accorgerà subito di quanto i due prodotti condividano, e di dove invece divergono
Radeon RX 9070 GRE, AMD la porta in tutto il mondo | Recensione Gigabyte Gaming OC
Radeon RX 9070 GRE, AMD la porta in tutto il mondo | Recensione Gigabyte Gaming OC
Abbiamo provato la Gigabyte Radeon RX 9070 GRE Gaming OC, nuova proposta RDNA 4 che si inserisce tra GeForce RTX 5060 Ti e RTX 5070. Prestazioni solide in rasterizzazione e ray tracing, frequenze elevate grazie all'overclock di fabbrica e raffreddamento efficace: ecco come si comporta nei nostri test.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 09-01-2008, 20:52   #21
tomminno
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 3306
Quote:
Originariamente inviato da cdimauro Guarda i messaggi
Il C++, che è un superset del C, quindi puoi fare ESATTAMENTE le stesse cose che fai in C, ma hai a disposizione tanti altri strumenti che sono utili per:
- velocizzare la scrittura del codice;
- strutturare meglio il codice;
- facilitarne la manutenibilità.

Oggi non c'è alcun motivo per continuare a usare il C, che è un linguaggio della preistoria informatica.

Certo, se proprio non c'è un compilatore C++ per il microcontrollore che devi programmare c'è poco da fare: ti accontenti di quello che hai...
Generalmente almeno per micro e DSP il compilatore è sempre C/C++ però nessuno nell'ambiente osa usare il C++.

Ci sono tanti ambienti dove anche il "costo" di una chiamata a funzione è troppo elevato per cui non si muovono dall'assembly.

Dove lavoravo, per lo sviluppo firmware si affidavano ad una azienda esterna dove lavorano mostri della programmazione (un titolare è finito al MIT allo sviluppo dell'OLPC) beh non ritenevano opportuno il passaggio al C++ in quanto "troppo peso" per un micro come l'ARM7.
Evidentemente c'è del vero visto che una sprintf è già troppo pesa per questi sistemi, figuriamoci il resto.
tomminno è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2008, 20:57   #22
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Ogni caratteristica del C++ ha un "peso" ben preciso: basta conoscere bene il linguaggio e il codice generato del compilatore.

La conoscenza del linguaggio è a dir poco ovvia (anche se, purtroppo, non è affatto scontata: vedi le sparate di un certo Torvalds sul C++).

Quella del codice generato è necessaria per chi lavora così a basso livello.

Alla fine è sempre un discorso di conoscenza ed esperienza.

P.S. Per inciso: C++ != oggetti.
__________________
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
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2008, 21:00   #23
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da a2000.1 Guarda i messaggi
e prenderlo direttamente in c. invece ?
se vuoi le chiappe son le tue
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2008, 21:04   #24
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da cdimauro Guarda i messaggi
Oggi non c'è alcun motivo per continuare a usare il C, che è un linguaggio della preistoria informatica.
ce n'è invece, per esempio in situazioni in cui l'operatore new non è stato / non può essere implementato, e quindi non puoi gestire oggetti nel modo classico. per esempio quando si programma un driver WDM è possibile allocare memoria in più modi diversi (pool paginato e non, con il tag e senza tag), e un semplice "new" da solo non è abbastanza eloquente.

in questi casi il tuo discorso (il C++ fa almeno quanto il C) rimane valido, ma praticamente si riduce ad utilizzare le sole features del C.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2008, 21:38   #25
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Innazitutto ti ricordo che in C++ puoi configurarti gli handler per l'allocazione della memoria come desideri.

Poi gli oggetti si possono creare anche staticamente.

Infine avevo scritto che C++ != oggetti: il linguaggio offre diverse caratteristiche che non sono legate espressamente agli oggetti.

In soldoni: se il C++ è un superset del C, non lo è soltanto perché offre la possibilità di programmare a oggetti.
__________________
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
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2008, 21:46   #26
k0nt3
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 7262
beh si.. d'altra parte non capisco perchè qualcuno usa ancora l'automobile considerando il fatto che hanno inventato l'aereo
k0nt3 è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2008, 21:57   #27
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Esempio che non c'entra NULLA e volutamente capzioso.

Ritenta la prossima volta: magari sarai più fortunato...
__________________
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
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2008, 22:03   #28
k0nt3
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 7262
Quote:
Originariamente inviato da cdimauro Guarda i messaggi
Esempio che non c'entra NULLA e volutamente capzioso.

Ritenta la prossima volta: magari sarai più fortunato...
in realtà c'entra più di quello che credi visto che non era una risposta a un tuo commento.. se poi si può applicare anche al tuo commento è un caso :P

@javaboy
il D farà ben poca strada finchè non fanno una documentazione degna di questo nome.
k0nt3 è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2008, 22:09   #29
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da k0nt3 Guarda i messaggi
in realtà c'entra più di quello che credi visto che non era una risposta a un tuo commento..
Non era chiaro, visto che i precedenti messaggi li ho scritti io.
Quote:
se poi si può applicare anche al tuo commento è un caso :P
Questo puoi dirmelo soltanto tu.
__________________
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
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2008, 22:33   #30
k0nt3
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 7262
Quote:
Originariamente inviato da cdimauro Guarda i messaggi
Non era chiaro, visto che i precedenti messaggi li ho scritti io.

Questo puoi dirmelo soltanto tu.
è che non avevo nemmeno letto tutti i commenti
comunque lo sai che considero il C un linguaggio ancora utile per cui non è il caso di discuterne di nuovo tanto non si va da nessuna parte
k0nt3 è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2008, 22:49   #31
AnonimoVeneziano
Senior Member
 
L'Avatar di AnonimoVeneziano
 
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
Ma quali sono le funzionalità del C++ utili per programmare microcontrollori che il C non ha ?

Quali potrebbero essere i vantaggi dal passare al C++?

Non ci capisco molto di programmazione di microcontrollori

Grazie
__________________
GPU Compiler Engineer
AnonimoVeneziano è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2008, 22:59   #32
vizzz
Senior Member
 
L'Avatar di vizzz
 
Iscritto dal: Mar 2006
Città: Bergamo
Messaggi: 2499
Quote:
Originariamente inviato da cdimauro Guarda i messaggi
Certo, se proprio non c'è un compilatore C++ per il microcontrollore che devi programmare c'è poco da fare: ti accontenti di quello che hai...
è esattamente il caso a cui volevo arrivare
anche se comunque in questi casi il C è più che sufficente allo scopo anche perchè certe comodità del C++ non si potrebbe avere il lusso di usarle, quando hai 4K di ram si sta molto bene attenti a come si usano.
__________________
ho concluso con: kvegeta, doctordb, Leland Gaunt.
vizzz è offline   Rispondi citando il messaggio o parte di esso
Old 10-01-2008, 00:06   #33
a2000.1
Senior Member
 
L'Avatar di a2000.1
 
Iscritto dal: Aug 2004
Messaggi: 311
ai Bamboccioni viziati della glue-programming alla copia&incolla, 10 milioni di righe di assembler forzato a testa:

Assembler Macht Frei

__________________
Senior Member
Registrato il: Jan 2001
Messaggi: 2609
a2000.1 è offline   Rispondi citando il messaggio o parte di esso
Old 10-01-2008, 02:10   #34
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da cdimauro Guarda i messaggi
P.S. Per inciso: C++ != oggetti.
Purtroppo...ed è forse uno dei motivi principali per cui la gente programma con i piedi con C++.

Io la vedo in modo complementare al tuo: va bene utilizzare C per la programmazione a basso livello, va bene per utilizzarlo sui microcontrollori (non è vero che C++ è sempre chiaro sull'utilizzo implicito e non di puntatori per chi non conosce A FONDO il linguaggio, al contrario l'uso della memoria in C è sempre esplicito), ma se si programma in C++ ci si programmi bene e sfruttando a pieno gli strumenti che il linguaggio mette a disposizione.

IMHO C++ in qualche prossimo standard dovrebbe abbandonare la compatibilità con C e diventare finalmente adulto...

Ultima modifica di cionci : 10-01-2008 alle 02:17.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 10-01-2008, 07:57   #35
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da AnonimoVeneziano Guarda i messaggi
Ma quali sono le funzionalità del C++ utili per programmare microcontrollori che il C non ha ?

Quali potrebbero essere i vantaggi dal passare al C++?

Non ci capisco molto di programmazione di microcontrollori

Grazie
Il passaggio di parametri per riferimento, ad esempio.
Quote:
Originariamente inviato da cionci Guarda i messaggi
Purtroppo...ed è forse uno dei motivi principali per cui la gente programma con i piedi con C++.

Io la vedo in modo complementare al tuo: va bene utilizzare C per la programmazione a basso livello, va bene per utilizzarlo sui microcontrollori (non è vero che C++ è sempre chiaro sull'utilizzo implicito e non di puntatori per chi non conosce A FONDO il linguaggio, al contrario l'uso della memoria in C è sempre esplicito), ma se si programma in C++ ci si programmi bene e sfruttando a pieno gli strumenti che il linguaggio mette a disposizione.

IMHO C++ in qualche prossimo standard dovrebbe abbandonare la compatibilità con C e diventare finalmente adulto...
Conoscere a fondo il linguaggio è il minimo richiesto per un professionista.

Per l'ultima affermazione, onestamente non mi piace proprio il C++ come linguaggio, e da quel che m'ha fatto vedere Jappilas sul prossimo standard per quanto mi riguarda la situazione è peggiorata. :|
__________________
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 : 10-01-2008 alle 08:01.
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 10-01-2008, 08:53   #36
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da cdimauro Guarda i messaggi
Conoscere a fondo il linguaggio è il minimo richiesto per un professionista.
Il fatto, imho, è che in C++, come in altri linguaggio ad alto livello, molti comportamenti sono impliciti e/o determinabili solo a runtime (vedi la STL), quindi non va assolutamente bene per programmare a bassissimo livello. Anche se il linguaggio lo conosci estremamente bene, l'utilizzo della memoria non è così facile da predeterminare, esattamente all'opposto del C

A meno che tu non voglia continuare ad usare il C++ a la C, ma a me questa cosa ha sempre fatto schifo Tanto vale usare il C
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 10-01-2008, 09:04   #37
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Indubbiamente, il tutto va valutato "cum grano salis".

Anche Fran nell'altro thread ha spiegato in che modo risolve alcuni problemi di questo tipo che si presentano nella realizzazione di un gioco.

Certamente non si diventa lead programmer, o in generale programmatori esperti con un linguaggio come il C++ dal giorno alla notte.

P.S. Per inciso: io NON lo sono.
__________________
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
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 10-01-2008, 09:10   #38
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Io ho visto cente che programma i microcontrollori...ho visto fare degli #include nel mezzo al codice al posto di chiamare funzioni Tanto per farti capire quanto cercano di risparmiare anche il passaggio di parametri nelle chiamate a funzione
Tanto il programma gira molto spesso da ROM o da Flash mappate in RAM, mentre la ram vera è minima
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 10-01-2008, 09:16   #39
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Posso immaginare.

In passato ho sviluppato giochi per Amiga, e stavo a spaccare il ciclo di clock, inventandomi qualunque cosa pur risparmiare tempo d'esecuzione e/o memoria.

Per conto dell'STM ho sviluppato un decoder JPEG 2000, da implementare in hardware, e anche lì i requisiti erano molto stringenti (non potevo nemmeno usare i puntatori a funzione, tanto per dirne una; purtroppo si usava soltanto un subset dell'ANSI C standard).

Non è facile sviluppare sui microcontrollori, e onestamente m'è passata la voglia da un bel pezzo di andare a smanettare così a basso livello.
__________________
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
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 10-01-2008, 09:56   #40
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Quote:
Originariamente inviato da k0nt3 Guarda i messaggi
beh si.. d'altra parte non capisco perchè qualcuno usa ancora l'automobile considerando il fatto che hanno inventato l'aereo
Perche' in aereo non puoi andare in autostrada da Milano a Torino, mentre in C++ puoi fare esattamente tutto quello che fai in C con la stessa efficienza e molte altre cose con efficienza maggiore.

Mi fai un esempio di un costrutto in C standard che, a meno di errori di sintassi, non e' compilato da un compilatore C++ standard con la medesima efficienza?

C++ non vuol dire programmare a oggetti.
fek è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Redmi Watch 6 in prova: lo smartwatch con ampio display da 2000 nit a meno di 100 euro Redmi Watch 6 in prova: lo smartwatch con ampio ...
Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ADV, ma con molti più pulsanti Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ...
Radeon RX 9070 GRE, AMD la porta in tutto il mondo | Recensione Gigabyte Gaming OC Radeon RX 9070 GRE, AMD la porta in tutto il mon...
Reolink OMVI 3i WiFi: videosorveglianza più intelligente e facile da usare Reolink OMVI 3i WiFi: videosorveglianza pi&ugrav...
Recensione Vivo X300 Ultra: fotocamera eccezionale, ma prezzo proibitivo Recensione Vivo X300 Ultra: fotocamera ecceziona...
Xference e Aruba insieme per l'IA privat...
Google Wallet, in arrivo i documenti d'i...
Recensione OPPO Enco Clip2: tanta tecnol...
Altro passo dei cinesi in Europa: Chery ...
AMD FSR 4.1: l'architettura RDNA 3.5 pot...
L'Economist dice di non dare la colpa al...
Meta frena sul tracciamento dei dipenden...
Falla zero-click su Android, anche Linux...
AMD ha nascosto il vero segreto di EXPO ...
TRYX porta la personalizzazione a un nuo...
Designer di auto cinesi all'attacco di F...
Oltre 3.000 posti di lavoro a rischio: l...
Uber taglia il 23% del personale HR, ma ...
Amazon TOP 7 rinnovata: in posizione 2 u...
HTTP/2 Bomb: il nuovo attacco DoS che ab...
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: 15:22.


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