Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23

Hybrid View

  1. #1

    Consiglio su linguaggio di programmazione

    Buonasera a tutti,
    sperando di avero postato nella sezione corretta, vorrei chiedere, da assoluto neofita quale sono un consiglio.
    Ho scoperto con dispiacere la mia assoluta ignoranza in materia di programmazione e volevo iniziare a colmarla.
    Oh voi einstein della tecnologia da quale linguaggio mi consigliate di partire???

    il vostro padawan aspetta consigli!

    (ps: proprio neofita no...me la cavo con matlab se conta qualcosa)

    Grazie

  2. #2
    Mhm credo ci starebbe bene un bel thread sticky che risponda a questa domanda, dato che viene posta 3-4 volte al giorno

    Comunque io la penso così:

    1. C a malapena accettabile per chi inizia, meglio optare per linguaggi di alto livello ed estremamente espressivi, e con "batterie incluse"
    2. C++ è assolutamente da evitare ( lo dico perchè c'è chi consiglia di iniziare da questo )
    3. Objective-C evitare come la peste ( c'è gente folle che lo consiglia perchè è figo dato che si usa per fare le app iOS )
    4. Python è imho la scelta migliore ( e la pensano così pure i docenti di Stanford, MIT e svariate altre università in tutto il mondo )

    Le cose fondamentali da tenere a mente sono:

    1. l'informatica non è letteratura latina, per cui lo studio SOLO teorico è inutile e controproducente ( bisogna imparare facendo )
    2. la logica ( che è fondamentale per risolvere problemi algoritmicamente ) la si affina scrivendo programmi
    3. mentre realizzi programmi trovi problemi implementativi che ti costringono a studiarti la sintassi del linguaggio, determinati algoritmi o altre nozioni

    In conclusione ti consiglio d'iniziare con Python ( c'è pure un pdf gratuito che s'intitolata Pensare da informatico ). I programmi da fare non c'è bisogno d'inventarseli, c'è il sito Project Euler che contiene una marea di esercizi di programmazione.

    Per l'apprendimento c'è anche l'ottimo sito Codecademy. Noterai che è in inglese. Beh l'inglese è obbligatorio per gli informatici, c'è poco da fare.

  3. #3
    Quote Originariamente inviata da paolino_delta_t Visualizza il messaggio
    Mhm credo ci starebbe bene un bel thread sticky che risponda a questa domanda, dato che viene posta 3-4 volte al giorno
    immaginavo e non sarebbe male fare un bel 3d. Premettendo che ti ringrazio per la risposta e poichè per lavoro mi devo sorbire ore ed ore di excel pensavo anche al visual basic. ma mi trovo un po' confuso a riguardo.
    Grazie in anticipo

  4. #4
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Evita di iniziare con VB. Impara prima "a programmare" e poi potrai sbizzarrirti con qual si voglia linguaggio.
    Python è un'ottima scelta per entrare nel mondo della programmazione per le ragioni già spiegate sotto.

    Mi continuo a chiedere perché ogni corso universitario in Italia di introduzione alla programmazione usi C o C++.
    Addirittura assembly a medicina a Padova O.o
    Per fortuna dovrebbe essere un'introduzione...
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  5. #5
    Utente di HTML.it L'avatar di szz
    Registrato dal
    Sep 2014
    residenza
    Barcelona
    Messaggi
    5
    Quote Originariamente inviata da paolino_delta_t Visualizza il messaggio
    1. C a malapena accettabile per chi inizia, meglio optare per linguaggi di alto livello ed estremamente espressivi, e con "batterie incluse"
    2. C++ è assolutamente da evitare ( lo dico perchè c'è chi consiglia di iniziare da questo )
    Eh si, perché oggi per programmare basta una funzione:

    codice:
    doIt()
    E sai già programmare..

  6. #6
    Quote Originariamente inviata da szz Visualizza il messaggio
    Eh si, perché oggi per programmare basta una funzione:

    codice:
    doIt()
    E sai già programmare..
    Vedo che non hai minimamente compreso il mio intervento.

  7. #7
    Quoto appieno le argomentazioni di paolino_delta_t, Python è consigliatissimo come linguaggio d'abbrivio, poiché consente di essere produttivi con una curva di apprendimento non eccessivamente ripida, dovuta sostanzialmente a tre fattori:

    1) Librerie ricchissime e liberamente disponibili (in C e C++ l'I/O da terminale offerto dalle librerie standard è fermo al 1982, e metà delle relative funzioni è deprecata, anche se intere legioni di docenti e di studenti lo ignorano bellamente);
    2) Sintassi ampiamente espressiva, coerente, sintetica, semplificata e moderna;
    3) Sostanziale indipendenza da architettura e SO, trattandosi di un linguaggio interpretato e genuinamente HLL.

    Inoltre non sarebbe male affiancare un testo di introduzione alla logica della programmazione, come lo Sprankle. Importante è invece dimenticare per sempre che purtroppo, per mere ragioni di retrocompatibilità e salvaguardia degli investimenti nel mercato burotico, a tutt'oggi esistano ancora linguaggi derivati dal basic.

    Occorre comunque rimarcare che l'uso di un linguaggio didatticamente valido non esime assolutamente dalla creazione di un vero background da informatico, di cui la conoscenza di uno, cinque, dieci o cento linguaggi è solamente l'epifenomeno. Occorre come minimo una solidissima preparazione nell'area algoritmico-computazionale, una profonda conoscenza dei principi del software engineering, nozioni non banali di architettura dei calcolatori e delle reti di calcolatori, e dopo tutto ciò una full immersion nella scienza dell'ottimizzazione, che richiede un cumulo di competenze orizzontali e verticali che afferiscono a tutte le discipline già richiamate, dalla capacità di ottimizzazione algoritmica e algebrico-computazionale alla pefetta conoscenza dell'architettura target.

    Quote Originariamente inviata da rigel1482 Visualizza il messaggio
    Ho scoperto con dispiacere la mia assoluta ignoranza in materia di programmazione
    Questa affermazione suona un po' ingenua e fa sorridere. Come dire, mi sono svegliato una mattina e guardandomi allo specchio ho scoperto con raccapriccio di non avere la muscolatura di Schwarzenegger... steroidi e anabolizzanti a parte, occorrono anni di studio e lavoro mirato e specifico!

    Quote Originariamente inviata da Scara95 Visualizza il messaggio
    Mi continuo a chiedere perché ogni corso universitario in Italia di introduzione alla programmazione usi C o C++.
    Addirittura assembly a medicina a Padova
    Perché l'università italiana vive fuori dal tempo, e i docenti di quei corsi in genere insegnano quello che a loro volta hanno appreso da studenti, non essendo in alcun modo specialisti in quell'area, con poche eccezioni. Così per oltre un decennio gli studenti sono stati ammorbati con l'uso di Pascal (povero Blaise, chissà come si rivolta nella tomba!) e Basic vari, poi è arrivata l'ondata di C e C++ con i disastri che purtroppo ben conosciamo (ogni anno nelle multinazionali si spendono cifre spaventose per "riformare" laurati e addottorati da poco imbarcati in azienda), e ultimamente vanno molto di moda java e in misura minore php. No comment.
    • Un plauso a Grisha Perelman, raro esempio di genuino anticonformismo umano e scientifico.

  8. #8
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    @M.A.W.
    Ma quello che è più triste è che, scegliendo i linguaggi sbagliati, si perdono nello spiegare dettagli su dettagli e non spiegano effettivamente l'approccio con cui porsi alla programmazione.
    Alla fine lo studente impara a memoria una marea di dettagli che non sa come congiungere... Magari sa come funzionano singolarmente e come evitare ogni singola falla del linguaggio per tale dettaglio, ma non può fare nulla perché si è perso la parte importante che non hanno avuto il tempo di spiegare, ovvero come si programma.
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  9. #9
    Quote Originariamente inviata da Scara95 Visualizza il messaggio
    Ma quello che è più triste è che, scegliendo i linguaggi sbagliati, si perdono nello spiegare dettagli su dettagli e non spiegano effettivamente l'approccio con cui porsi alla programmazione.
    Questo perché quasi sempre i docenti non sono sviluppatori e progettisti, ma {biologi, ingegneri, chirurghi, giuslavoristi, filologi, fisici, chimici, ...} che magari da dieci anni usano il linguaggio XY e qualche sofisticato ambiente verticale per le loro ricerche, ma non hanno a loro volta ricevuto una formazione completa ed efficace su software engineering, logica della programmazione e didattica del linguaggio. Conoscono i dettagli delle foglie, la corteccia degli alberi, a volte anche le tane e gli escrementi degli animali, ma non sanno spiegare come e perché si entra, si esce e ci si orienta nel bosco, o perché un bosco di conifere è diverso dalla macchia mediterranea, eccetera.


    Aggiungo a margine per l'OP di dimenticare l'esistenza di tutorial e altro materiale gratuito online, salvo i riferimenti già forniti. Fino all'acquisizione di un grado di indipendenza non banale, gli sarà impossibile giudicare autonomamente la qualità (quasi sempre pessima e del tutto censurabile) del materiale presente in rete, a rischio di acquisire pessime abitudini di programmazione da dilettanti, orecchianti e cialtroni che non hanno la benché minima idea di concetti come qualità del software, prestazioni, ottimizzazione, selezione degli algoritmi, metriche del codice eccetera.
    • Un plauso a Grisha Perelman, raro esempio di genuino anticonformismo umano e scientifico.

  10. #10
    Ringraziando tutti per le loro opinioni credo, senza ombra di dubbio, che inizierò da Python. stavo per iniziare a cercare il materiale quando poi leggo questo:

    Quote Originariamente inviata da M.A.W. 1968 Visualizza il messaggio
    Aggiungo a margine per l'OP di dimenticare l'esistenza di tutorial e altro materiale gratuito online, salvo i riferimenti già forniti. Fino all'acquisizione di un grado di indipendenza non banale, gli sarà impossibile giudicare autonomamente la qualità (quasi sempre pessima e del tutto censurabile) del materiale presente in rete, a rischio di acquisire pessime abitudini di programmazione da dilettanti, orecchianti e cialtroni che non hanno la benché minima idea di concetti come qualità del software, prestazioni, ottimizzazione, selezione degli algoritmi, metriche del codice eccetera.
    e visto che il testo che mi hai consigliato costa più di 100 sacchi, da quali guide sicure potrei partire?
    chiedo perché immagino ne abbiate già viste tante e vorrei evitare di leggerne mille per poi capire che di quel ben 999 son scritte male e non si capisce nulla.
    Detto questo e ringraziando ancora rispondo a M.A.W

    Quote Originariamente inviata da M.A.W. 1968 Visualizza il messaggio

    Quote Originariamente inviata da rigel1482 Visualizza il messaggio
    Ho scoperto con dispiacere la mia assoluta ignoranza in materia di programmazione e volevo iniziare a colmarla.

    Questa affermazione suona un po' ingenua e fa sorridere. Come dire, mi sono svegliato una mattina e guardandomi allo specchio ho scoperto con raccapriccio di non avere la muscolatura di Schwarzenegger... steroidi e anabolizzanti a parte, occorrono anni di studio e lavoro mirato e specifico!


    Diciamo che mi sono svegliato e ho compreso che le belle ragazze al 90% guardano il bel muscolo e
    poiché "smart is new sexy" mettiamo muscoli nel cervello! la verità è che nonostante sia ingegnere, in molti colloqui spesso mi è stata chiesta la mia capacità di programmazione al di fuori di matlab. visto che il lavoro per ora c'è ma domani non si sa...preferisco iniziare almeno a masticare qualcosa. tutto qua. Più che ingenuità (so che serve tempo ed esperienza per ottenere un buon livello) vorrei ampliare le mie conoscenze. In ogni caso grazie ancora dei consigli.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.