Cosa fare dopo programmazione ad oggetti java

di il
6 risposte

Cosa fare dopo programmazione ad oggetti java

Frequento la facoltà di matematica(secondo anno) e nel mio percorso di studi mi sono confrontato in due esami con la programmazione in java(orientata agli oggetti). Seppur la programmazione si discosti molto dall'essenza della mia facoltà l'ho trovata mooolto interessante,tant'è che stavo valutando di mettere nel piano di studi del terzo anno degli esami propri della facoltà di informatica,magari per conoscere un po meglio il mondo dell'informatica(a proposito,avete consigli in merito a che esami potrei mettere??). senza andare troppo fuori tema vorrei chiedervi: dopo aver assimilato la programmazione java orientata agli oggetti,quali sono dei possibili percorsi che posso seguire per aumentare il mio bagaglio di conoscenze?(continuare sul java oppure magari cambiare linguaggio...non saprei davvero). ci tengo a specificare che tutto ciò non lo faccio per ambizioni lavorative ma per pura e semplice curiosità, nel voler conoscere meglio questo mondo che mi è del tutto nuovo ma scaturisce in me un grande interesse.
ringrazio in anticipo tutti per il tempo dedicato

6 Risposte

  • Re: Cosa fare dopo programmazione ad oggetti java

    Potrebbe esserti utile un esame sugli "algoritmi e strutture dati" se non li hai già affrontati
  • Re: Cosa fare dopo programmazione ad oggetti java

    Alcune considerazione spicciole:

    1) la programmazione NON SI DISCOSTA PER NULLA dal mondo della matematica. ANZI, TUTT'ALTRO. E' matematica del DISCRETO e NON del continuo. Automa a stati finiti, grammatiche, analisi lessicale, sintattica, macchena di turing, complessita' computazionale, calcolo numerico, sono tutti argomenti che hanno piu' a che fare con la matematica che con la programmazione

    2) tu NON HAI ASSIMILATO la programmazione ad oggetti. NON STO PARLANDO di linguaggio di programmazione, ma di MODELLO DI CALCOLO/VALUTAZIONE. Ne sai, forse lo 0.001% di quello che c'e' da sapere!

    3) un paio di linguaggi perfetti per un matematico, che il 99.999999% dei programmatori non conosce

    A) paradigram di programmazione funzionale -> Haskel, o ancora il caro vecchio LISP, o Clojure, se vuoi continuare con qualcosa che usa ancora la virtual machine Java
    B) paradigma di programmazione logico, basato sulle clausole di Horn ed un dimostratore di teoremi ( robbbba tosta ): Prolog! Non mi risula esistano alternative

    Se vuoi dedicarti a qualcosa di un po' piu' ""ameno"", studiare un po' di algoritmi e di strutture dati e' la base per tutto il resto.

    Le strutture dati hanno MOLTISSIMO a che fare con l'algebra astratta, funzioni ricorsive, funzioni parzialmente definite, e n-mila altri concetti.
    Diciamo che le strutture FONDAMENTALI sono:

    se T e' il dominio del valore (ad esempio, interi, reali, charatteri, ecc)

    vettore -> T^n
    structtura-> T1 x T2 x ... (prodotto cartesiano)
    lista -> T^* = T^0 U T^1 U T^2 U .... (chiusura, o anche unione di vettori di TUTTE LE POSSIBILI potenze/lunghezze. OVVIAMENTE c'e' l'elemento neutro ).
    albero (binario) -> T = nil | (T,T) (questa e' una bella definizione ricorsiva )
    grafo -> G = (T, E) con E=TxT
    mappa -> K -> T (praticamente la definizione di una funzione ad un parametro che ritorna un valore, ma DISCRETA. Parametro e valore possono essere uno qualunque degli oggetti appena indicati)

    Nota che un vettore e' una mappa N -> T (N: numeri NATURALI)

    Come vedi o usato strumenti matematici (con i limiti della scrittura imposti dall'editor)

    Poi ci sono gli algoritmi, i modelli di calcolo parallelo, quello distribuito, i modelli di calcolo a memoria condivisa, a memoria distribuita, ecc.

    Tutti argomenti che sono basati du concetti discreti, di algebra astratta ed, ovviamente, una serie di concetti specifici di questa materia.

    Da buon matematico (TU, NON io , il consiglio e' : l'aspetto teorico della computer science e' decisamente interessante.
    Che cosa scegliere? Hai tempo per decidere.

    Se vuoi un paio di testi ""carini"" (e te ne accorgerai QUANTO sono CARINI ) pratcamente le sub-bibbie per un VERO Computer Scientist:







    Diciamo che questi tre TESTI (NON LIBRI) sono il meglio del meglio per quanto riguarda la parte teorica ed introduttiva

    Nota: c'e' un concetto fondamentale che la maggior arte dei programmatori continua a non capire!
    In Java, se il codice dovrebbe ritornare un vettore, ma NON HO NIENTE DA RITORNATE, NON SI RITORNA "null"!!!!!!!
    Ma il VETTORE DI LUNGHEZZA ZERO!
    E il vettore di lunghezza zero e' ESATTAMENTE l'elemento neutro della funzione ""concatenazione""
  • Re: Cosa fare dopo programmazione ad oggetti java

    Intanto vi ringrazio per la pronta risposta. mi scuso se sono risultato saccente nel dire che avevo assimilato la programmazione ad oggetti,come detto sono ignorante in materia .
    cercherò sicuramente di seguire i vostri consigli(tempo permettendo). grazie ancora
  • Re: Cosa fare dopo programmazione ad oggetti java

    Aggiungo solo che facendo matematica saresti "avvantaggiato" per quanto riguarda imparare machine learning e AI,ambiti che potrebbero essere molto interessanti ,ciao
  • Re: Cosa fare dopo programmazione ad oggetti java

    Ni!
    Machine Learning e' FONDAMENTALMENTE statistica, piu' che algebra astratta.
    Comunque, un atematico e' sicuramente piu' ""attrezzato"" di un semplice informatico.
  • Re: Cosa fare dopo programmazione ad oggetti java

    Se posso aggiungermi a migliorabile, pur essendo un "diplomato +"(triennale informatica). Algoritmi e Strutture di Dati è la base di un percorso, ma non credo ci sia nel tuo percorso studi. Altri esami, che molti miei colleghi hanno ignorato, pur riconoscendo da parte mia che fossero esami inutili per un informatico "pratico" in quanto hanno un approccio da informatica teorica, sono Logica e Elementi di Informatica Teorica. Forse quest'utimi potresti trovarli nel tuo percorso, altrimenti vedi Computabilità o Teoria dei Grafi(in questo forse non c'è programmazione, ma sicuramente sarà utile nel caso volessi sperimentare).

    Una lettura interessante per un matematico potrebbe essere "The Universal Computer" di Martin Davis.
Devi accedere o registrarti per scrivere nel forum
6 risposte