Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marathon: arriva il Fortnite hardcore
Marathon: arriva il Fortnite hardcore
Marathon è il titolo multiplayer competitivo del momento. Ecco quali sono le caratteristiche di gioco principali, insieme alle nostre prime considerazioni dopo qualche "run" nell'extraction shooter di Bungie
HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare
HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare
A New York HP ha messo al centro della scena HP IQ, la piattaforma di IA locale da 20 miliardi di parametri. L’abbiamo vista in funzione: è uno strumento che funziona, pensato per un target specifico, con vantaggi reali e limiti altrettanto evidenti
PNY RTX 5080 Slim OC, sembra una Founders Edition ma non lo è
PNY RTX 5080 Slim OC, sembra una Founders Edition ma non lo è
La PNY GeForce RTX 5080 Slim OC si distingue nel panorama delle GPU di fascia alta per il design compatto a due slot, ispirato alla NVIDIA GeForce RTX 5080 Founders Edition. In questo test analizziamo comportamento termico e prestazioni in gioco, valutando se il formato ridotto comprometta o meno l'esperienza complessiva rispetto alle soluzioni più ingombranti presenti sul mercato.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 05-09-2007, 12:04   #1
mad_hhatter
Senior Member
 
L'Avatar di mad_hhatter
 
Iscritto dal: Oct 2006
Messaggi: 1105
[java, c#, uml] problema di modellazione

problema : classificazione di gesti

dominio :

GestureClass = {Id, Gesture, Threshold}

Gesture = {List<Feature>}

Feature = {tipo1} | {tipo2}

vincoli:
un Gesture deve contenere Feature dello stesso tipo,
se una GetsureClass contiene un Gesture di tipo T allora la GestureClass è di tipo T (un Gesture è di tipo T se contiene Feature di tipo T).

vorrei modellare questa situazione rendendo espliciti i vincoli...

per ora la mia soluzione è la seguente:

interface IFeature, contenente un metodo "double Distance(IFeature feature)"

tale metodo dovrà essere implementato in modo che se this e feature non sono dello stesso tipo il risultato sia invalido. Già così non mi piace granché, ma andiamo avanti.

veniamo al Gesture.

interface IGesture {double Distance(IGesture anotherGesture);}

abstract class AbstractGesture<T extends IFeature> implements IGesture {
protected ArrayList<T> features;
public abstract double Distance(AbstractGesture<T> anotherGesture);

public double Distance(IGesture anotherGesture) {
if (anotherGesture e this non sono dello stesso tipo) { Exception }
return Distance((AbstractGesture<T>) anotherGesture);
}
}

e questo mi fa ancora più schifo.

Il motivo di usare una classe astratta E una interface è per dire:

class GestureClass {
String Id;
IGesture gesture;
double threshold;
}

nota:
risultano 2 tipi di gesti, quello avente feature di tipo1 e quello avente feature di tipo2. l'algoritmo di distanza tra i 2 è un po' diverso:

nel primo caso sfrutta il metodo distance delle sue feature, ma nel secondo considera il gesto nel suo insieme e il metodo Distance in Feature_tipo2 è una commonality un po' stiracchiata anche se valida

morale:
questo design mi disgusta, ma il design in cui da ciascuna delle interfacce/classi_astratte Feature, Gesture, GestureClass derivano due classi concrete e poi usare una Factory per creare tutti gli oggetti del tipo giusto non mi soddisfa del tutto perchè perdo i vincoli...

avete suggerimenti?

grazie mille e scusate per la descrizione non troppo chiara
mad_hhatter è offline   Rispondi citando il messaggio o parte di esso
Old 05-09-2007, 13:52   #2
mad_hhatter
Senior Member
 
L'Avatar di mad_hhatter
 
Iscritto dal: Oct 2006
Messaggi: 1105
mi regalo un UP

Ultima modifica di mad_hhatter : 05-09-2007 alle 16:00.
mad_hhatter è offline   Rispondi citando il messaggio o parte di esso
Old 06-09-2007, 08:22   #3
mad_hhatter
Senior Member
 
L'Avatar di mad_hhatter
 
Iscritto dal: Oct 2006
Messaggi: 1105
me ne regalo un altro, posso?
mad_hhatter è offline   Rispondi citando il messaggio o parte di esso
Old 07-09-2007, 09:40   #4
mad_hhatter
Senior Member
 
L'Avatar di mad_hhatter
 
Iscritto dal: Oct 2006
Messaggi: 1105
anche se il thread non ha avuto molto successo vi informo che ho risolto: come al solito le cose sono molto più semplici di come appaiono o, meglio, di come vogliamo farle apparire
mad_hhatter è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marathon: arriva il Fortnite hardcore Marathon: arriva il Fortnite hardcore
HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare HP Imagine 2026: abbiamo visto HP IQ all’opera, ...
PNY RTX 5080 Slim OC, sembra una Founders Edition ma non lo è PNY RTX 5080 Slim OC, sembra una Founders Editio...
Wi-Fi 7 con il design di una vetta innevata: ecco il nuovo sistema mesh di Huawei Wi-Fi 7 con il design di una vetta innevata: ecc...
Core Ultra 7 270K Plus e Core Ultra 7 250K Plus: Intel cerca il riscatto ma ci riesce in parte Core Ultra 7 270K Plus e Core Ultra 7 250K Plus:...
TSMC ha raggiunto il limite: starebbe ri...
Tutte le offerte Amazon più pesan...
Microsoft unisce GPT e Claude in Copilot...
MacBook Neo è una trappola second...
Meta testa Instagram Plus: abbonamento a...
Recensione ASUSTOR LockerStor 2 Gen2+: l...
SpaceX conferma anomalia per il satellit...
Apple rilascia le prime beta 26.5 di iOS...
Warhorse Studios sostituisce i traduttor...
Ecco perché in tanti stanno comprando Ap...
Intesa Sanpaolo, multa da 31,8 milioni d...
Stellantis, rinnovo di 5 anni con Palant...
Google Pixel 11 si mostra nei render CAD...
Xbox Games Showcase torna a giugno con u...
OPPO fissa l'evento per Find X9 Ultra: t...
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: 12:01.


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