|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
Devo cambiare modo di pensare per passare ai linguaggi ad oggetti?
Insomma passare da linguaggio C a Java o C++ o C#.
Occorre cambiare filosofia giusto? Cosa consigliate x approciarsi al OO?
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
__________________
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 |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
questo:
Codice:
rm -rf /brain/programming
__________________
|
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
Ehm al max:
Quote:
Sto scaricando sul P2P le lezioni Uninettuno di Java, vedo se da li tiro fuori qualcosa di buono.
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. |
|
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
Quote:
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. |
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
|
Personalmente ritengo Java un linguaggio migliore nel paradigma Object oriented di python.
In python non esiste il concetto di visibilità di attiributi e metodi nelle classi e supporta l'ereditarietà multipla. Java mi piace molto di più da questo punto di vista. Ha 3 livelli di visibilità , non supporta ereditarietà multipla, ma ha le interfacce che permettono un' più accurato design object oriented rispetto a python. Inoltre venendo dal C non avrai problemi a trovarti subito con la sintassi di Java . Io dico Java. Ciao PS = Ah, un altra cosa. Python permette letteralmente di aggiungere attributi e metodi dopo che la classe è stata instanziata ... anche questo non mi piace molto a livello di rigorosità del paradigma object oriented.
__________________
GPU Compiler Engineer Ultima modifica di AnonimoVeneziano : 08-02-2008 alle 22:40. |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Se vuoi imparare il linguaggio, sì. Se t'interessa soltanto la programmazione a oggetti, puoi partire dal capitolo 12 http://www.python.it/doc/Howtothink/...-it/chap12.htm che è sufficientemente chiaro per chi mastica già un po' di programmazione.
__________________
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 |
|
|
|
|
|
#8 | |
|
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
Quote:
Eterna gara chi è meglio tra C++ e Java, ma io a priori sono per Java. Il fatto NON è che linguaggio imparare, ma come devo vedere le cose mentalmente. Non è + 1 include di librerie, ma qui si importano le classi. 1 oggetto è 1 istanza della classe, cioè quando faccio new. Devo fare sempre il catch delle eccezioni. Posso estendere le classi esistenti, questo dovrebbe dare ereditarietà, mi pare. CMQ mi sento deficiente col Java ... mi sembra tutto così strano ...
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. |
|
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
|
Se vuoi imparare bene l'object oriented non ritengo il C++ il miglior linguaggio con cui partire perchè risulta essere piuttosto confuso da quel punto di vista, per lo meno molto più sia di Java che di Python.
Io ti consiglio di partire da Java, visto che sai il C per approdare al C++ c'è sempre tempo eventualmente dopo (e una volta imparato il Java sarà ancora più semplice Ciao
__________________
GPU Compiler Engineer |
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
E poi perchè ai colloqui mi chiedono se so usare il Java2 enterprise? Che caz cambia dal Java normale? Cosa intendono?
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. |
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
|
Java enterprise è un estensione delle librerie di Java per programmare applicazioni in campo enterprise attraverso strumenti come gli Enterprise JavaBeans , JTA e JMS.
Sono solo strumenti in più a disposizione rispetto all'edizione standard. Se vuoi imparare Java devi comunque partire dalla Java SE Ciao
__________________
GPU Compiler Engineer |
|
|
|
|
|
#12 | ||||||
|
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
Quote:
Quote:
Quote:
Quote:
Meglio una sintassi semplice e più leggibile. Quote:
Anzi, un linguaggio dinamico come Python permette di approcciarsi alla programmazione OO in maniera decisamente più "naturale", poiché è sufficiente che un oggetto esponga una determinata interfaccia (metodi, attributi) affinché si possa dire che si comporti come tale. Mi spiego meglio con un esempio molto semplice. Se voglio che un oggetto si comporti come un file / stream, è sufficiente che esponga il metodo read(): in questo modo posso passarlo a tutte le funzioni/metodi che si aspettano un file come parametro, e che su di esso invocheranno il metodo read() per leggerne i dati. Io posso aggiungere un metodo read() a un'istanza o a un'intera classe (e quindi ereditato automaticamente da tutte le sue istanze) in qualsiasi momento, e in questo modo si "comporterà" come un file / stream. Tutto ciò con un linguaggio come C++ o Java NON è fattibile, perché ogni istanza discende da una ben precisa classe che è assolutamente immutabile.
__________________
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 |
||||||
|
|
|
|
|
#13 |
|
Senior Member
Iscritto dal: Dec 2005
Messaggi: 7260
|
java è il miglior linguaggio che io abbia mai conosciuto per entrare nella mentalità object oriented. a volte ti costringe proprio
python è multiparadigma e quindi lo scarterei |
|
|
|
|
|
#14 | |
|
Senior Member
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
|
Quote:
Ma io sto parlando di apprendimento non di potenza in generale. Puoi craccare gli attributi protected e private? Bene, ma è una forzatura, non è la norma per il linguaggio. Il linguaggio ti guida verso un altra strada. L'ereditarietà multipla porta,per chi non ha mai usato il paradigma object oriented, a mostruosi errori come schemi di ereditarietà a rombo . Si può fare benissimo a meno dell'ereditarietà multipla e didatticamente non è il massimo. Le interfacce sono uno strumento fantastico in Java . Formalizzano in maniera chiara il comportamento di una classe permettendo di separare nettamente l'implementazione dal comportamento. Tutto a favore di leggibilità e apprendimento al contrario dell'"emulazione" (come già dice il nome) tramite ereditarietà multipla. Per quanto riguarda la sintassi ... beh, a me la sintassi di Python aborre Per l'ultima parte ... beh,non sta scritto da nessuna parte, ma didatticamente a mio parere può confondere non definendo bene la strada da seguire per creare un buon progetto OO , portando magari a ragionamenti come : " adesso definisco la classe, dopo una volta istanziata la classe ci aggiungo attributi e metodi", che per me sono sbagliati . Un oggetto è un entità con delle sue proprietà ed è importante che uno impari a definirle fin da subito. Saluti
__________________
GPU Compiler Engineer |
|
|
|
|
|
|
#15 | |
|
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
Quote:
Parti direttamente da JEE5 che è molto meglio. (solo qua in italia ai colloqui possono chiedere ancora di J2EE
__________________
|
|
|
|
|
|
|
#16 | |
|
Senior Member
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
|
Quote:
__________________
GPU Compiler Engineer |
|
|
|
|
|
|
#17 | ||
|
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
Quote:
Ripeti con me: in Python ogni elemento è un oggetto e ciò che si può fare (leggi: i paradigmi che si possono usare) dipende strettamente dal modo in cui li usi.
__________________
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 |
||
|
|
|
|
|
#18 | |
|
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
Quote:
CMQ mi ricodo che 8 anni fa cercavano programmatori Java con J2ee ed adesso cercano ancora quelli. Come mai? Siamo sempre alla rincorsa di qualcosa?
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. Ultima modifica di Matrixbob : 08-02-2008 alle 23:17. |
|
|
|
|
|
|
#19 |
|
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
C'è qualcuno tra di voi che quando la prox settimana (lun o già dom sera) inizio a smanettare in Java i offre da farmi da mentore?!
[PS] Ma la fisolofia della programmazione OO qual'è? Che esistono solo oggetti che comunicano tra loro?
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. |
|
|
|
|
|
#20 |
|
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
UE!
Non bisticciate sui linguaggi di programmazione Turing completi! Non è il caso! Ogni uno usa quello che gli piace!
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 15:03.




















