Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Robot tagliaerba Navimow i105E in prova: GPS e videocamera per un prato perfetto
Robot tagliaerba Navimow i105E in prova: GPS e videocamera per un prato perfetto
Abbiamo testato per alcune settimane il Navimow i105E, un robot tagliaerba che unisce il segnale RTK alla visione con videocamera intelligente, per un posizionamento preciso e un taglio impeccabile
Xiaomi 14 e Xiaomi 14 Ultra: sono davvero macchine fotografiche 5G?
Xiaomi 14 e Xiaomi 14 Ultra: sono davvero macchine fotografiche 5G?
Xiaomi 14 e Xiaomi 14 Ultra sono due dei più performanti cameraphone del 2024. Li abbiamo messi sotto torchio con tutte le prove che effettuiamo solitamente per le recensioni delle fotocamere, per saggiarne il comportamento e avere tutti i dati tecnici per un confronto ragionato
Corsair One i500: un PC gaming potente che può stare anche in salotto
Corsair One i500: un PC gaming potente che può stare anche in salotto
Corsair One i500 è un PC completo molto potente ma che occupa poco spazio e lo fa con stile. Un sistema che può servire tanto per lavorare quanto per giocare, con molti spunti interessanti ma anche qualche neo. Il prezzo è da capogiro.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 24-11-2003, 10:10   #61
a2000
Bannato
 
L'Avatar di a2000
 
Iscritto dal: Jan 2001
Messaggi: 1976
no, non vorrei che un uso polimorfo della testa possa avere gli stessi sterili effetti di un uso polimorfo che so' .... del culo, ecco !
a2000 è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2003, 10:19   #62
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3611
Quote:
Originariamente inviato da a2000
no, non vorrei che un uso polimorfo della testa possa avere gli stessi sterili effetti di un uso polimorfo che so' .... del culo, ecco !


sisi
misterx è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2003, 10:44   #63
a2000
Bannato
 
L'Avatar di a2000
 
Iscritto dal: Jan 2001
Messaggi: 1976
Non ti perdere di coraggio se ti tocca lavorare molto e raccogliere poco…

a2000 è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2003, 10:52   #64
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3611
beato te che non hai na mazza da fare
misterx è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2003, 12:00   #65
a2000
Bannato
 
L'Avatar di a2000
 
Iscritto dal: Jan 2001
Messaggi: 1976
misterx tu sei la bocca della verità !


(ma limitati a quella. )
a2000 è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2003, 12:34   #66
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3611
Quote:
Originariamente inviato da a2000
misterx tu sei la bocca della verità !


(ma limitati a quella. )

ho capito, il siediti ce lo metti tu


basta, che ci bannano,........ ed avrebbero ragione
misterx è offline   Rispondi citando il messaggio o parte di esso
Old 25-11-2003, 12:03   #67
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3611

Ultima modifica di misterx : 25-11-2003 alle 14:01.
misterx è offline   Rispondi citando il messaggio o parte di esso
Old 25-11-2003, 14:03   #68
PGI
Bannato
 
L'Avatar di PGI
 
Iscritto dal: Nov 2001
Città: Verona
Messaggi: 1086
Quote:
Originariamente inviato da misterx
int x = 6;
int y = 15;

y = (x = y * 2) + (x++);

quanto valgono secondo voi x ed y dopo gli assegnamenti e perchè assumono tali valori ?

x = 31
y = 60
Vai a pigliare certe gatte da pelare...

Ecco perchè Y non è 61 o 62.

Di fronte ad un'operazione matematica la jvm riserva un pezzettino di memoria (detta pila degli operandi) per infilarci temporaneamente i valori estratti dalle variabili usate. L'estrazione (bytecodeop Tload, dove T è il tipo) separa il valore nella pila degli operandi da quello contenuto nell'indirizzo associato alla variabile.

Questa "separazione" avviene nell'ordine stabilito dagli operatori che usi nel calcolo.

Ecco cosa succede nella nostra operazione:

"y =" (la parte a sinistra) è l'ultima operazione eseguita (un istore, sempre in bytecode).

La prima è la parte a sinistra dell'addizione (perchè usi un operatore + tra due elementi). A x viene assegnato il valore estratto da y (15) moltiplicato per due, x diventa 30. Il valore di x viene estratto e infilato nella pila degli operandi.

30 viene sommato al risultato dell'operazione a destra (x++). che è...30.

Perchè? Perchè l'incremento destro (x++) opera dopo che il valore è stato estratto (a differenza dell'incremento sinistro ++x): e non è una questione di priorità tra operatori (le parentesi non influenzano il risultato).

E destra pertanto la jvm estrae il valore di x (30), lo infila nella pila degli operandi, poi assegna alla variabile x il valore di x+1.

A questo punto x è già diventato "31" ma l'operazione è stata eseguita sul valore di x precedente l'incremento.

E allora Y=60 e X=31.

Usando un incremento sinistro è chiaro che risulterà Y=61 e X=31.
PGI è offline   Rispondi citando il messaggio o parte di esso
Old 25-11-2003, 14:05   #69
PGI
Bannato
 
L'Avatar di PGI
 
Iscritto dal: Nov 2001
Città: Verona
Messaggi: 1086
M'hai fregato un'altra volta! , ci ho messo un secolo a scrivere
PGI è offline   Rispondi citando il messaggio o parte di esso
Old 25-11-2003, 14:33   #70
a2000
Bannato
 
L'Avatar di a2000
 
Iscritto dal: Jan 2001
Messaggi: 1976
Quote:
Originariamente inviato da misterx
ho capito, il siediti ce lo metti tu
...
no, come vedo, ce lo metti sempre tu !
a2000 è offline   Rispondi citando il messaggio o parte di esso
Old 25-11-2003, 15:02   #71
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3611
Quote:
Originariamente inviato da a2000
no, come vedo, ce lo metti sempre tu !

te l'ho già detto ma non mi stufo di ripetermi.......

esci dalla torre d'avorio e collabora col resto del mondo, che è meglio..........

sei troppo orgoglioso, chi fa da se sbaglia per tre
misterx è offline   Rispondi citando il messaggio o parte di esso
Old 25-11-2003, 15:05   #72
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3611
Quote:
Originariamente inviato da PGI
M'hai fregato un'altra volta! , ci ho messo un secolo a scrivere

scusa PGI ma sto anche affrontando quel ragazzone di a2000
c'è chi invecchiando migliora ma ad a2000, quando lo hanno imbottogliato, mica glielo hanno messo il tappo



cmq, avavo postato............

Codice:
int x = 6; 
int y = 15; 

y = (x = y * 2) + (x++); 

quanto valgono secondo voi x ed y dopo gli assegnamenti e perchè assumono tali valori ? 

x = 31
y = 60

in quanto ho trovato gente che mi dice che il risultato cambia in funzione del linguaggio, priprità differenti ???

Ultima modifica di misterx : 25-11-2003 alle 15:08.
misterx è offline   Rispondi citando il messaggio o parte di esso
Old 25-11-2003, 15:28   #73
a2000
Bannato
 
L'Avatar di a2000
 
Iscritto dal: Jan 2001
Messaggi: 1976


iuuuuuu uuuuuuuu

a2000 è offline   Rispondi citando il messaggio o parte di esso
Old 25-11-2003, 16:04   #74
PGI
Bannato
 
L'Avatar di PGI
 
Iscritto dal: Nov 2001
Città: Verona
Messaggi: 1086
Gatta da pelare 2, la vendetta.

Il risultato di quell'espressione (e di tutte le espressioni) dipende da priorità e associatività degli operatori, oltre all'implementazione dell'incremento destro (in Java prima estrae e poi incrementa, non è detto che altri linguaggi si comportino allo stesso modo).

La priorità determina quale operatore è preso in considerazione per primo.

L'associatività (sinistra o destra) determina quale tra due operatori aventi uguale priorità verrà eseguito per primo.

Tieni conto che anche le parentesi sono un operatore (a priorità massima e associativo a sinistra in Java).

Esempio super-classico sull'associatività (lo trovi in ogni libro, è sempre lo stesso ):

y=10;
z=10;

x = y - z +10

+ e - hanno priorità uguale e associatività verso sinistra: questo significa che tra i due sarà eseguito per primo quello che si trova più a sinistra.

Quindi prima viene eseguito "y-z" (=0) poi "+10" e x diventa 10.

Se l'associatività fosse verso destra il risultato sarebbe -10.

Ora, in Java l'associatività segue le regole comuni della matematica, ma essendo una proprietà definità nella progettazione del linguaggio di programmazione niente esclude che, per qualche ragione si spera, un altro linguaggio dia agli operatori un'associatività diversa.
PGI è offline   Rispondi citando il messaggio o parte di esso
Old 28-11-2003, 22:05   #75
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3611
approfitto ancora un pò della tua pazienza e voglia di ripassare


classe astratta non vuol dire she sia necessariamente una superclasse vero ?

misterx è offline   Rispondi citando il messaggio o parte di esso
Old 28-11-2003, 22:45   #76
PGI
Bannato
 
L'Avatar di PGI
 
Iscritto dal: Nov 2001
Città: Verona
Messaggi: 1086
E' esatto. Ma se ti chiedessi perchè una classe astratta non è necessariamente una super-classe, cosa risponderesti?

Per me è importante soffermarsi a lungo su questi aspetti, perchè nei linguaggi di alto livello (Java, c++ &co.) la conoscenza di come si scrive un ciclo for o di cosa faccia il programma quando dichiari un int contano come il due di picche: qui la potenza stà nella produttività e se conosci veramente le regole che "dirigono" le relazioni tra oggetti puoi passare dall'idea all'applicazione in un tempo incredibilmente breve, altrimenti ti ritrovi a trattare gli oggetti come se fossero variabili un po' più complicate.
PGI è offline   Rispondi citando il messaggio o parte di esso
Old 28-11-2003, 23:04   #77
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3611
Quote:
Originariamente inviato da PGI
E' esatto. Ma se ti chiedessi perchè una classe astratta non è necessariamente una super-classe, cosa risponderesti?


una domanda/risposta potrebbe essere:
perchè sento la necessità di creare classi astratte ?

e rispondendomi:
per riunire(dirigere) attraverso una superclasse (dichiarando al suo interno i metodi astratti delle sottoclassi) sottoclassi che hanno qualcosa in comune tra loro

ma perchè creare una superclasse concreta sopra ad una classe astratta?

il tempo di pensarci e torno

Ultima modifica di misterx : 29-11-2003 alle 09:03.
misterx è offline   Rispondi citando il messaggio o parte di esso
Old 28-11-2003, 23:13   #78
PGI
Bannato
 
L'Avatar di PGI
 
Iscritto dal: Nov 2001
Città: Verona
Messaggi: 1086
Quote:
Originariamente inviato da PGI
supporto Java al binding statico e dinamico
Mi auto-cito per chiudere una "finestra lasciata aperta".

In Java esistono entrambe le forme di "binding", il "late binding" e l' "early binding".

Bella forza lo dice Eckel, penseranno molti. E' vero, ma per chi non si fidasse dell'autore, ci sono tre righe nelle specifiche del linguaggio Java (http://java.sun.com/docs/books/vmspe...doc.html#16348) in cui è confermato che di fronte al modificatore "final" (e quindi anche a "private") il riferimento al metodo viene sostituito dal contenuto del metodo, il che corrisponde appunto al modello di collegamento statico.
PGI è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2003, 15:23   #79
PGI
Bannato
 
L'Avatar di PGI
 
Iscritto dal: Nov 2001
Città: Verona
Messaggi: 1086
Do una risposta alla domanda che ti avevo fatto:

Astrazione (e accesso/visibilità) ed ereditarietà appartengono a due aspetti complementari della programmazione OOP.

Astrazione e visibilità (public, protected, private) definiscono gli attributi di una classe (in sintesi il "com'è fatta").

L'ereditarietà è la disciplina della relazione tra classi e comprende l'estensione (che determina le relazioni padre-figlio) e il polimorfismo (conseguenza dell'estensione).

L'ereditarietà dipende dagli attributi della classe genitrice ma i due aspetti sono concettualmente separati, dal che si capisce perchè l'uso di una "tecnica" appartenente alla definizione del modello (ad esempio proprio "abstract") non dipenda dal rapporto ereditario.

Per quanto riguarda la necessità di creare classi astratte non è una necessità, come non lo è un approccio strettamente OOP quando usi Java (se crei un'applicazione usando una sola classe per fare tutto, magari eviti pure, per quanto possibile, di usare oggetti predefiniti nelle librerie Java, beh, quell'applicazione è OOP quanto io sono un sarchiapone).

Personalmente credo a quanti scrivono che la programmazione orientata agli oggetti è sopratutto pensare alla propria applicazione come se fosse il prodotto delle relazioni tra "entità vive". Gli oggetti nascono, muoiono e interagiscono (tanto per capirci, poi la faccenda la puoi immaginare come preferisci) ma soprattutto hanno delle caratteristiche che li distinguono. Il codice sorgente di un'applicazione scritta con un approccio OOP non deve essere una serie sterile di operazioni eseguite in una sequenza più o meno dipendente dalle azioni di chi la userà: è un mondo di tanti piccoli esserini che vivono tra loro che quanto arriva l'utente devono dire "Hey ragazzi, è arrivato l'imperatore".

La cosa è più importante di quanto il mio delirio filosofico faccia supporre

Tornando alle classi astratte, l'utilità si presenta quando nella gerarchia che crei un modello puro o semipuro rappresenta meglio la realtà che stai cercando di descrivere.

Ad esempio, creando una gerarchia di oggetti che rappresentino l'abusato modello animale, la superclasse "mammifero" dovrebbe essere un modello puro o semi-puro, perchè non esiste il "mammifero" ma esisono animali che sono mammiferi (in OOP, non è coerente che "mammifero" sia istanziabile direttamente).

&Ciao.
PGI è offline   Rispondi citando il messaggio o parte di esso
Old 29-11-2003, 18:50   #80
a2000
Bannato
 
L'Avatar di a2000
 
Iscritto dal: Jan 2001
Messaggi: 1976
Quote:
Originariamente inviato da PGI
...
è un mondo di tanti piccoli esserini che vivono tra loro che quanto arriva l'utente devono dire "Hey ragazzi, è arrivato l'imperatore".

La cosa è più importante di quanto il mio delirio filosofico faccia supporre
hai ragione è terribilmente più importante.

nel mio mondo non esistono esserini e imperatori ma furie incazzate che quando vedono il presunto imperatore non dicono ma .... fanno !
e hanno tutto il mio plauso.

mi pare, e vorrei sbagliarmi, che ci sia qualcosa di "ereditariamente" servile nel mondo dell'informatica.
a2000 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Robot tagliaerba Navimow i105E in prova: GPS e videocamera per un prato perfetto Robot tagliaerba Navimow i105E in prova: GPS e v...
Xiaomi 14 e Xiaomi 14 Ultra: sono davvero macchine fotografiche 5G? Xiaomi 14 e Xiaomi 14 Ultra: sono davvero macchi...
Corsair One i500: un PC gaming potente che può stare anche in salotto Corsair One i500: un PC gaming potente che pu&og...
realme 12X 5G: ottimo compromesso a meno di 200 euro realme 12X 5G: ottimo compromesso a meno di 200 ...
Recensione Apple iPad Pro M4: è più potente di un MacBook Air M3 Recensione Apple iPad Pro M4: è più...
Lunga Marcia 2D: la Cina continua i test...
RTX Remix sempre più open source ...
Missione cinese Chang'e-6: i video e le ...
NVIDIA punta sulle schede video Small Fo...
Project G-Assist, NVIDIA vuole integrare...
ASUS ROG Ally X ufficiale: ecco specific...
È il miglior portatile gaming tut...
Sono mini PC potenti e con prezzo imbatt...
159€ sono davvero pochi per questo ottim...
Le 5 svendite Amazon top: TV 55" LG...
La missione cinese Chang'e-6 è at...
dearMoon: la missione spaziale privata i...
Il richiestissimo controller DualSense o...
Il MacBook Air 13,6'' del 2022 (chip M2)...
Sono questi gli iPhone 15 più sco...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 01:12.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Served by www2v