Dal Pascal al C++

Pubblicità
Beh, io avevo letto una classifica dove erano messi così, in sequenza: C#, Java e C++.
Però ovviamente posso essermi sbagliato, anche se io vedo in giro solo codice riguardante il C Sharp, si sta diffondendo parecchio.. ma comunque, non volevo imporre un linguaggio in particolare.

Semplicemente io uso il C# e ho voluto dare un mio consiglio, riguardo le mie esperienze.

Non posso di certo, consigliare il Rudy o il Python, che non utilizzo.
 
E' dall'inizio di quest'anno scolastico che a scuola stiamo studiando il linguaggio di programmazione Pascal. E' un linguaggio semplice ed efficace, ma confrontandolo con il C++, beh non è di certo sullo stesso livello.

Premesso che C++ è un linguaggio da CONOSCERE ASSOLUTAMENTE!!! C'è un ampissimo mercato sia per C che per C++ ed è il mercato embedded ( mercato in forte crescita ). Ho specificato questa cosa del mercato, perchè è quello il discriminatore tra un linguaggio ed un altro.

Ad esempio tu hai detto che il Pascal è più limitato rispetto al C++, ma in quale senso? Il Pascal tradizionale esiste sotto DOS, non supporta nessuno dei framework e api recenti. In questo forse è limitato, ma semanticamente può fare le stessissime cose del C/C++ ( qualcuno c'ha realizzato un sistema operativo col Pascal!! ).

Delphi/Object Pascal nacque proprio per portare il Pascal nel mondo moderno. Infatti se provi ad usare Delphi di Embarcadero, noterai che supporta le ultimissime api windows, fu rilasciato una versione per linux anni fa ( ormai non più mantenuta ). Puoi usare Freepascal che è multipiattaforma e compatibile in buona parte con Delphi.

Come vedi non è che il Pascal stia messo tanto male, è solo che a livello "politico" altri linguaggi lo hanno scalzato ( negli anni '80 il Pascal era un must per ogni programmatore!! ).
 
Ciao pabloski, io credo che si stanno sottovalutando molti linguaggi di programmazione.

Gente che dice che il C# non è da utilizzare, soltanto perché non è adatto a creare Sistemi Operativi, non capisco che cavolo voglia dire questo.

Innanzitutto esiste un progetto, di nome Cosmos, che è un Sistema Operativo creato in C Sharp.
E anche la Microsoft stessa aveva creato un OS con il C#, si chiama Singularity.

Ci sono milioni di programmi realizzati con questo linguaggio.
Paint.NET è stato creato in C Sharp, per esempio.

Io credo(ovviamente è un mia opinione, ma non sono l'unico a pensarla così) che il C++ non sia un linguaggio da imparare dopo il Pascal.
Ci sono altri linguaggi come il Java, il Python o appunto il C#, che sono molto più facili e permettono di creare praticamente le stesse cose ma in minor tempo, che come dicono anche altri è DENARO.

Ed è questo che il programmatore d'oggi vuole.

In C++ reinventi la ruota, in C# no.

Ma ovviamente, ci sono motivi che a volte mi spingono invece ad usare il C++.

Poi va bene che non c'è l'Ereditarietà Multipla in C# e in C++ si, ma son cose a cui sinceramente non ho mai neanche fatto caso.
E credo che si possa risolvere con l'utilizzo delle Interface, se non sbaglio.

Concludo dicendo che io li uso entrambi e mi trovo meglio con il C Sharp, proprio perché è molto più veloce programmare e ci sono tantissimi progetti e framework.
 
Ciao pabloski, io credo che si stanno sottovalutando molti linguaggi di programmazione.

Gente che dice che il C# non è da utilizzare, soltanto perché non è adatto a creare Sistemi Operativi, non capisco che cavolo voglia dire questo.

Innanzitutto esiste un progetto, di nome Cosmos, che è un Sistema Operativo creato in C Sharp.
E anche la Microsoft stessa aveva creato un OS con il C#, si chiama Singularity.

Ci sono milioni di programmi realizzati con questo linguaggio.
Paint.NET è stato creato in C Sharp, per esempio.

Io credo(ovviamente è un mia opinione, ma non sono l'unico a pensarla così) che il C++ non sia un linguaggio da imparare dopo il Pascal.
Ci sono altri linguaggi come il Java, il Python o appunto il C#, che sono molto più facili e permettono di creare praticamente le stesse cose ma in minor tempo, che come dicono anche altri è DENARO.

Ed è questo che il programmatore d'oggi vuole.

In C++ reinventi la ruota, in C# no.

Ma ovviamente, ci sono motivi che a volte mi spingono invece ad usare il C++.

Poi va bene che non c'è l'Ereditarietà Multipla in C# e in C++ si, ma son cose a cui sinceramente non ho mai neanche fatto caso.
E credo che si possa risolvere con l'utilizzo delle Interface, se non sbaglio.

Concludo dicendo che io li uso entrambi e mi trovo meglio con il C Sharp, proprio perché è molto più veloce programmare e ci sono tantissimi progetti e framework.
Forse non hai capito quello che ho scritto. Anzi ne sono sicuro.
Mi spiace doverlo dire, ma il C# sembra essere il linguaggio più usato al mondo. Come secondo, trovi il Java e poi il C++. I programmatori stanno smettendo di utilizzare il C++, perché su di esso devi partire sempre da zero, ci sono veramente pochi Framework. E il C++ non offre niente di diverso, dal C#. Comunque sia, il VB.NET non sarà mai superiore al C#, non sto dicendo che non è un buon linguaggio.. però non può essere confrontato con i linguaggi sopra citati.
Per un novellino è bene iniziare "a mano". Anche un semplice algoritmo di ricerca, ordinamento. Una volta assimilati, puoi usare la pappa pronta. Oppure scrivere una tua classe che esegua queste operazioni.
Non capisco cosa tu voglia dire che col C++ devi rifare tutto da zero; dovresti sapere che a volte è meglio riscrivere un determinato elemento anziché utilizzarne uno già pronto.
Essendo il C# un derivato del C++ vale che il secondo offre cose che il primo non ha.
 
Credo che anche tu hai capito male i miei precedenti post.

Io non ho detto che il C++ è inutile, ma per un "novellino" non è adatto, il mio consiglio è soltanto questo: non fare il passo più lungo della gamba.

Io ho imparato studiando, ma devo ammettere che tutto quello che so ora è grazie al "provare e riprovare" di continuo.
Per iniziare a programmare sul serio, bisogna provare e riprovare.

Leggersi le definizioni di ogni singolo codice, avere pazienza e capire il suo funzionamento.
Poi di nuovo provare e riprovare.

Io sono contro al "iniziare a mano", ma preferisco iniziare con esempi capendoli, provando a modificarli e rifarli.
Mia esperienza, ovviamente.

Dico che in C++ devi rifare tutto, perché non trovi praticamente niente di già fatto, se non guide su come fare un Gioco del Tris.

Pensa se un'azienda ti chiedesse di fargli un programma, per esempio, il Software per una macchina da stampa continua.

In C# la fai in pochissimo tempo e facilmente.

Il C++ e' un po piu' complesso rispetto al C#.
Specialmente perché quest'ultimo non pensa molto alla locazione della memoria, esattamente come il Java.

Ma ci son tantissime altre cose, non è possibile determinare quale sia il migliore, ma il C# è più semplice da imparare per un "novellino".
 
Gente che dice che il C# non è da utilizzare, soltanto perché non è adatto a creare Sistemi Operativi, non capisco che cavolo voglia dire questo.

Innanzitutto esiste un progetto, di nome Cosmos, che è un Sistema Operativo creato in C Sharp.

ci sono pure sharpos e singularity

il limite non è il linguaggio quanto il runtime e il relativo framework .net....ad esempio ms ha creato il compilatore bartok e un runtime apposito per poter realizzare il suo os in c#....stessa cosa hanno fatto quelli di cosmos

il grosso limite di c# è il fatto che dietro ci sia ms, che ha creato parecchia sfiducia nella comunità allargata degli sviluppatori ( soprattutto quelli opensource )...per il resto il linguaggio non ha nessun limite particolare



Io credo(ovviamente è un mia opinione, ma non sono l'unico a pensarla così) che il C++ non sia un linguaggio da imparare dopo il Pascal.

in realtà nemmeno il pascal è più tanto adatto per chi comincia, ma qui le teorie si sprecano

c'è chi dice che bisogna partire con un linguaggio con weak typing, perchè così il novellino può spaziare e poi avvicinarsi ai formalismi...chi dice che invece bisogna partire da linguaggio come il pascal proprio perchè sono formali all'eccesso

python, ad esempio, si sta imponendo come buona soluzione per iniziare e, imho, a ragione

se dopo il pascal conviene il c++ o altro è difficile dirlo...anche qui c'è chi dice che capire subito come funziona il "dietro le quinte" è meglio che capirlo dopo....altri dicono l'esatto contrario

Ci sono altri linguaggi come il Java, il Python o appunto il C#, che sono molto più facili e permettono di creare praticamente le stesse cose ma in minor tempo, che come dicono anche altri è DENARO.

in questo senso è più importante considerarli quando si va a realizzare software "vero" piuttosto che quando si apprende

In C++ reinventi la ruota, in C# no.

il problema del c++ è la vastità, tant'è che lo stesso Stroustrup ammise di non riuscire a padroneggiare in pieno il linguaggio!!!! per il resto si trovano molte librerie per il c++, solo che sono sparse qua e là e non organizzate in un framework coerente come .net o cocoa e similari

Poi va bene che non c'è l'Ereditarietà Multipla in C# e in C++ si, ma son cose a cui sinceramente non ho mai neanche fatto caso.
E credo che si possa risolvere con l'utilizzo delle Interface, se non sbaglio.

l'ereditarietà multipla fa più danni di quanti ne evita :D

Concludo dicendo che io li uso entrambi e mi trovo meglio con il C Sharp, proprio perché è molto più veloce programmare e ci sono tantissimi progetti e framework.

ovviamente, il linguaggio è maggiormente espressivo e il framework ti mette a disposizione un sacco di roba pronta, organizzata, etichetta e utilizzabile da subito
 
Si esatto, ma noi stiamo parlando di un "novellino", e credo che sia meglio partire con un linguaggio più semplice.

Come hai detto tu: in questo senso è più importante considerarli quando si va a realizzare software "vero" piuttosto che quando si apprende.
Quindi credo sia meglio partire da un linguaggio dove puoi trovare tanta roba già pronta ed organizzata, per iniziare intendo.

Comunque si, infatti ho detto sia Cosmos che Singularity.

Sharpos pensavo fosse un OS creato da Cosmos.

Comunque credo che tu abbia capito ciò che intendevo io, non tanto per discriminare il c++, ci mancherebbe, è potentissimo e lo uso anche io, ma stiamo parlando di uno che sta appena iniziando ad approcciarsi a un linguaggio un pò più serio, rispetto al Pascal.
 
Si esatto, ma noi stiamo parlando di un "novellino", e credo che sia meglio partire con un linguaggio più semplice.

un novellino dovrebbe cominciare a capire come scomporre i problemi complessi in sottoproblemi, come risolverli algoritmicamente e poi ricombinare il tutto....ovviamente un linguaggio immediato ( intendo espressivo, con costrutti diretti e di alto livello ) è decisamente più adatto in questa fase

io ho cominciato dal BASIC!!!! certo, era una fetenzia, ma ti sembrava di parlare in inglese col pc!!! cosa non da poco, soprattutto all'epoca che c'era il C64 e veramente la comunicazione programmatore-macchina era molto diretta

Quindi credo sia meglio partire da un linguaggio dove puoi trovare tanta roba già pronta ed organizzata, per iniziare intendo.

dipende da molti fattori....il novellino deve programmare, magari reinventare la ruota per imparare, però non deve certo farlo con un linguaggio dove un puntatore posto involontariamente a null ti distrugge come programmatore e come persona :D

Sharpos pensavo fosse un OS creato da Cosmos.

no no, è un altro os scritto in c#

Comunque credo che tu abbia capito ciò che intendevo io, non tanto per discriminare il c++, ci mancherebbe, è potentissimo e lo uso anche io, ma stiamo parlando di uno che sta appena iniziando ad approcciarsi a un linguaggio un pò più serio, rispetto al Pascal.

però se ha studiato ( usato e capito ) il pascal, potrebbe non essere tanto novello
 
Beh, il mio era un consiglio.

Come chi ha dato il consiglio di utilizzare il C++, io ho dato quello di imparare il C#.

Ovviamente poi, ognuno, ha idee diverse ed è giusto così.
Se fossimo tutti uguali, sai che problemi?

Comunque non ho ben capito perché hai scritto "Originariamente Scritto da threnino"

Lol
 
Beh, il mio era un consiglio.

Come chi ha dato il consiglio di utilizzare il C++, io ho dato quello di imparare il C#.

Ovviamente poi, ognuno, ha idee diverse ed è giusto così.
Se fossimo tutti uguali, sai che problemi?

ovviamente e ritengo che c++ non sia adatto per iniziare...diavolo, non è adatto nemmeno a gente che programma da 50 anni, figuriamoci ad un novellino

imho è fondamentale la logica prim'ancora di toccare la tastiera...lui, avendo studiato pascal, si presume sappia "programmare" e per questo ho pensato che possa avere le carte in regola per studiarsi c++

ma il punto è che poi, nel mondo lavorativo, col solo c++ non vai da nessuna parte...purtroppo la realtà è che devi conoscere un ampio ventaglio di linguaggio generici e qualcuno "speciale" ( rust, d, ecc... )

Comunque non ho ben capito perché hai scritto "Originariamente Scritto da threnino"

Lol

sorry, copia-incollato da hwupgrade dove stavo battibeccando con uno che sostiene che windows è OS SERIO e android NO!!! che diavolo significa OS SERIO non l'ho ancora capito!!
 
Si, esatto.

Comunque è una cosa che non ha senso.. OS SERIO? o.O

C'è il sistema operativo che è più adatto a giocare, come pc da casa(personal computer), ovvero Windows.
MA si usa anche per lavorare, ci mancherebbe.

C'è chi dice addirittura che i programmatori non usano di certo Windows, ma sistemi più avanzati come Mac o Linux.

Non si ragiona così.

Tutti sono computer, semplicemente uno sa fare meglio una cosa e l'altro ne sa fare bene un'altra.

Il Mac è più adatto per lavorarci, con la grafica, per esempio.
Ed è veloce, perché comunque ha un Hardware proprietario.

Linux poi è tutta un'altra cosa.

Insomma, ci sarebbero tantissime cose da dire e bisognerebbe valutare i pregi e i difetti di entrambi.

EDIT: Ma poi lui si riferiva ad Android? Che centra con Windows?
 
È davvero difficile sfruttare tutte le potenzialità del C++. Per arrivarci molto vicino, è necessaria un ottima progettazione alla base.
 
C'è il sistema operativo che è più adatto a giocare, come pc da casa(personal computer), ovvero Windows.
MA si usa anche per lavorare, ci mancherebbe.

vaglielo a spiegare :D

per quel tipo di individui, se non hai il marchio windows sei un giocattolo

EDIT: Ma poi lui si riferiva ad Android? Che centra con Windows?

la discussione è partita dal fatto che, secondo alcuni, gli smartphone e tablet windows sono migliori perchè c'hanno un os serio a bordo :D

- - - Updated - - -

È davvero difficile sfruttare tutte le potenzialità del C++. Per arrivarci molto vicino, è necessaria un ottima progettazione alla base.

Ed è questo che ha causato parecchie rogne al linguaggio. Oggi prevale un metodo di progettazione agile, prevalentemente basato sul TDD. Il modello waterfall è collassato e sta trascinando c++ con sè.
 
È davvero difficile sfruttare tutte le potenzialità del C++. Per arrivarci molto vicino, è necessaria un ottima progettazione alla base.
E anni di esperienza nel C++...

Il C++ infatti è molto sconveniente per le aziende che non lo necessitano per motivi particolari, e vengono prediletti linguaggi più produttivi che necessitano di meno learning e know-how di partenza, come quelli a più alto livello citati.
Non sono totalmente d'accordo con il pensiero che il C++ sia un linguaggio da sapere assolutamente, a meno che non si intendano le basi. Qui a Padova non trovo molti lavori che richiedono il C++, massiccia è la richiesta di sviluppatori Web (PHP,JS,ASP), C# e soprattutto Java.
C++ è richiesto dalle società che sviluppano su embedded di basso livello, ma sempre più spesso i produttori dei microcontrollori rilasciano framework a più alto livello (per esempio embedded Java).
 
Pubblicità
Pubblicità
Indietro
Top