Vai al contenuto
PLC Forum


Reimparare C E C++


Lupone883

Messaggi consigliati

Ciao a tutti vorrei dopo 10 anni riimparare un po' di programmazione c e c++ perche' ormai e' usata sui plc,micro controllori,linux ecc....

Ormai son 10 anni che non pratico e son perito elettronico e delle telecomunicazioni.

Sto seguendo un corso a padova ma il docente da per scontate diverse cose e durante le lezioni si fa un po' gli affari suoi quindi piu' di chiedergli di ragionarci altro non fa.

Ci sono dei validi libri o ci sono dei video qui sul forum?

Soprattutto per capire bene sulle pre dichiarazioni e gli if else.

Grazie a tutti

Link al commento
Condividi su altri siti


  • 7 months later...

Io inizierei con la bibbia del C:
"Il linguaggio C" di "by Brian Kernighan" e "Dennis Ritchie". (Lo studiai la prima volta a 14 anni, ma lo ripresi in mano molte volte negli anni a seguire)
Uno dei due (Denis Ritchie, mancato ormai da due anni) è anche stato uno dei genitori di Unix e di conseguenza di molte cose che conosciamo anche con i sistemi GNU/Linux in quanto derivano da Unix.

Lo imparai su quel libro, poi lo ristudiai al politecnico sul libro di "fondamenti di informatica". A parte argomenti diversi, sulla programmazione non aggiungeva nulla al primo.

Successivamente imparerei in modo astratto cos'è il paradigma della programmazione orientata agli oggetti.
In questo caso senza soffermarmi su nessun libro mi documenterei velocemente su internet.
L'importante è padroneggiare bene il concetto di classe, oggetto, metodo e scambio di messaggi tra oggetti.

In fine prenderei un libro dedicato al C++ (Io usai Programmare in C++ di "Stephen Blaha"), non prima di avere però capito il paradigma della programmazione ad oggetti.
Il rischio è quello di imparare solo pezzetti del C++ e usarli in programmazione procedurale facendo una cozzaglia tra C e C++.

Anche se hanno un nome simile e condividono buona parte della sintassi, la programmazione in C++ richiede un approccio completamente diverso a livello di progettazione. Purtroppo la loro stretta parentela permette di mischiarli con troppa semplicità. Cosa che in alcuni casi fa perdere i vantaggi della programmazione ad oggetti.

In fine un paio di consigli indispensabili!
Come per quasi qualunque cosa nella vita è facile prendere brutti vizzi da subito, togliere tali vizi in un secondo tempo è difficilissimo.
Alcune dritte sono:

- Usa nomi per variabili ed oggetti che abbiano un significato. Una variabile che si chiama "indice" è molto esplicativa una che si chiama "d" e magari tiene un conteggio non ha significato.
- Usa un identazione chiara e pulita e costante in tutte le parti di un applicativo.
- Usa i commenti in tutte le parti che potresti faticare a rileggere in un secondo tempo.

- Fai finta che il GOTO non esista. È stato introdotto solo per agevolare il porting di software scritto 40 anni fa in altri linguaggi!

Soprattutto con il C è molto facile scrivere applicativi velocemente e poi non venirne più a capo per trovare un BUG per carenza di commenti o per un codice poco chiaro.

Mi ricorderò sempre il mio docente di Fondamenti di informatica. Dal primo all'ultimo giorno ci ha stressati con apparenti paranoie sullo stile, che molte volte sembravano assurde, ma che assurde non erano.
Penalizzava molto di più un brutto stile che un BUG non considerato.

Modificato: da Marco Mondin
Link al commento
Condividi su altri siti

Grazie per la risposta.

Ho già sentito parlare di quel librone e mi sa che alla fine lo prenderò

Dici che si puà reimparare,togliere la polvere?

Link al commento
Condividi su altri siti

Ti consiglio anche

"La guida completa C"

autore Herbert Schildt - ed. McGraw-Hill

Dello stesso autore, successivamente "La guida completa C++", molto esplicativa su tutte le caratteristiche tipiche della programmazione ad oggetti.

In fine un paio di consigli indispensabili!

Come per quasi qualunque cosa nella vita è facile prendere brutti vizzi da subito, togliere tali vizi in un secondo tempo è difficilissimo.
Alcune dritte sono:

- Usa nomi per variabili ed oggetti che abbiano un significato. Una variabile che si chiama "indice" è molto esplicativa una che si chiama "d" e magari tiene un conteggio non ha significato.
- Usa un identazione chiara e pulita e costante in tutte le parti di un applicativo.
- Usa i commenti in tutte le parti che potresti faticare a rileggere in un secondo tempo.

- Fai finta che il GOTO non esista. È stato introdotto solo per agevolare il porting di software scritto 40 anni fa in altri linguaggi!

Soprattutto con il C è molto facile scrivere applicativi velocemente e poi non venirne più a capo per trovare un BUG per carenza di commenti o per un codice poco chiaro.

Mi ricorderò sempre il mio docente di Fondamenti di informatica. Dal primo all'ultimo giorno ci ha stressati con apparenti paranoie sullo stile, che molte volte sembravano assurde, ma che assurde non erano.
Penalizzava molto di più un brutto stile che un BUG non considerato.

concordo con Marco Mondin

Buona "rispolverata"! :thumb_yello:

Link al commento
Condividi su altri siti

  • 2 weeks later...
  • 3 months later...

Forse è tardi, io sono a zero per quanto riguarda la programmazione C/C++ e mi sto documentando.

A tal riguardo vorrei consigliare un sito interessante seguito da un docente di un istituto Superiore, il quale ha anche postato su youtube delle video lezioni, che utilizza DEV-C++ e Code::Block:

www.camuso.it

Inoltre, per gli appassionati dei microcontrollori, c'è un altro sito altrettanto interessante:

www.settorezero.com

Link al commento
Condividi su altri siti

Io mi trovai molto bene con i libri Deitel&Deitel per la preparazione dei miei esami di programmazione, li trovai molto chiari e con tanti esercizi svolti e da svolgere.

Cercando sul web si trovano anche vecchie versioni.

Link al commento
Condividi su altri siti

  • 1 month later...

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...