Torna indietro   Hardware Upgrade Forum > Software > Programmazione

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: Intel cerca il riscatto ma ci riesce in parte
Abbiamo provato le nuove CPU Intel Core Ultra 7 270K Plus e Core Ultra 7 250K Plus: più core e ottimizzazioni al funzionamento interno migliorano le prestazioni, anche in virtù di prezzi annunciati interessanti. A questo si aggiungono nuove ottimizzazioni software. Purtroppo, a fronte di prestazioni di calcolo elevate, il quadro rimane incerto nel gaming, dove l'andamento rimane altalenante. Infine, rimane il problema della piattaforma a fine vita.
PC Specialist Lafité 14 AI AMD: assemblato come vuoi tu
PC Specialist Lafité 14 AI AMD: assemblato come vuoi tu
Il modello "build to order" di PCSpecialist permette di selezionare una struttura base per un sistema, personalizzandolo in base alle specifiche esigenze con una notevole flessibilità di scelta tra i componenti. Il modello Lafité 14 AI AMD è un classico notebook clamshell compatto e potente, capace di assicurare una elevata autonomia di funzionamento anche lontano dalla presa di corrente
Recensione Nothing Phone 4(a): sempre iconico ma ora più concreto
Recensione Nothing Phone 4(a): sempre iconico ma ora più concreto
Nothing con il suo nuovo Phone 4(a) conferma la sua identità visiva puntando su una costruzione che nobilita il policarbonato. La trasparenza resta l'elemento cardine, arricchita da una simmetria interna curata nei minimi dettagli. Il sistema Glyph si evolve, riducendosi nelle dimensioni ma aumentando l'utilità quotidiana grazie a nuove funzioni software integrate e notifiche visive. Ecco tutti i dettagli nella recensione completa
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 07-07-2012, 17:24   #1
duald
Junior Member
 
Iscritto dal: Jul 2012
Messaggi: 4
[JAVA] Dubbio su come evitare GUI "hard-coded"

Salve a tutti.
Sto realizzando un programma con interfaccie grafiche, e mi chiedevo come evitare hard-coded. In particolare voglio evitare di impostare la proprieta Text dei Component direttamente dal codice.
La scelta è ricaduta sui file properties, così colgo l'occasione anche di rendere il programma i18n.
Il dubbio che mi sorge è come implementare la classe :
1 - definisco un interfaccia
public interface I_TextGUI{
public static final int MAIN = 0;
...
public String[] getEtichetette(int whichGUI);
}

che viene estesa dalla classe :
public class TextGUIProperties1 implements I_TextGUI{ }

2 - creare solo la classe
public class TextGUIProperties2 {
public static final int MAIN = 0;
...
public static String[] getEtichetette(int whichGUI){}
}

La soluzione 1 favorisce il riuso (forse ... spero) se la fonte dati dovesse cambiare; lo svantaggio è che ogni view deve avere un riferimento ad un oggetto della classe TextGUIProperties1 che opera allo stesso modo è che non ha stato.
Soluzione 2 l'esatto opposto.
Un possibile compromesso penso che sia la definizione di una classe di Utility
public class Utility{
private static I_TextGUI textGUI;

public static I_TextGUI getTextGUI(){ return textGUI;}

public static void setTextGUI(I_TextGUI textGUI){
Utility.textGUI = textGUI;
}
..//eventuali altri metodi
}
dove I_TextGUI viene impostato nel main.
Però questa soluzione mi sembra che tende ad una proliferazione delle classi.
Come vedete sono un pò confuso, spero in un vostro aiuto.
duald è offline   Rispondi citando il messaggio o parte di esso
Old 09-07-2012, 14:35   #2
duald
Junior Member
 
Iscritto dal: Jul 2012
Messaggi: 4
La mia scelta è ricaduta sull'opzione 2 (classe con metodo statico). Convinto di aver fatto la scelta più sensata oggi vado dal prof per esternare altri dubbi (l'applicazione è un progetto didattico) e con l'occasione gli ho esposto il dilemma di prima (maledetto a me che l'ho fatto)... l'unica risposta che ho avuto è "valuta la scelta migliore, ma stia attento ai principi OO dunque anche al riuso". Ho provato a vedere situazioni simili su internet ma non ho trovato niente che potesse aiutarmi.
duald è offline   Rispondi citando il messaggio o parte di esso
Old 09-07-2012, 15:36   #3
wizard1993
Senior Member
 
L'Avatar di wizard1993
 
Iscritto dal: Apr 2006
Messaggi: 22462
anche io solitamente opto per la seconda versione.
Anche se, al posto delle properties, in caso il programma abbia usi un db preferisco farmi una tabella apposta.
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza
wizard1993 è offline   Rispondi citando il messaggio o parte di esso
Old 10-07-2012, 17:01   #4
demos88
Senior Member
 
Iscritto dal: Nov 2004
Città: Padova
Messaggi: 2342
edit
__________________
CPU Ryzen 2600 @ 3,95Ghz + Bequiet Dark Rock TF / MB Asus X470-F Gaming / RAM 2x8GB DDR4 G.Skill FlareX 3200 CL14 / VGA Sapphire RX 7900 XT Nitro+ @ 3200Mhz / SSD Samsung 970 Pro 512GB + Sandisk 240GB Plus + Sandisk 960GB Ultra II PSU Seasonic Platinum P-660 / Headset Kingston HyperX Flight

Ultima modifica di demos88 : 10-07-2012 alle 17:07.
demos88 è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2012, 14:36   #5
duald
Junior Member
 
Iscritto dal: Jul 2012
Messaggi: 4
Grazie per la risposta.
E come giudichi l'idea della classe Utility (eventualmente con blocco synchronized)?
Quote:
Un possibile compromesso penso che sia la definizione di una classe di Utility
public class Utility{
private static I_TextGUI textGUI;

public static I_TextGUI getTextGUI(){ return textGUI;}

public static void setTextGUI(I_TextGUI textGUI){
Utility.textGUI = textGUI;
}
Riesce a superare i limiti di entrambe le scelte.

Inoltre, dopo una richiesta da parte di una view, cosa faccio con i dati caricati (cioè etichette) ?? Li mantengo in una struttura utile per le chiamate successive, così da evitare (ad una futura richiesta) una nuova lettura da file (simile Proxy)?? O no??
duald è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


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:...
PC Specialist Lafité 14 AI AMD: assemblato come vuoi tu PC Specialist Lafité 14 AI AMD: assemblat...
Recensione Nothing Phone 4(a): sempre iconico ma ora più concreto Recensione Nothing Phone 4(a): sempre iconico ma...
Corsair Vanguard Air 99 Wireless: non si era mai vista una tastiera gaming così professionale Corsair Vanguard Air 99 Wireless: non si era mai...
Ecovacs DEEBOT T90 PRO OMNI: ora il rullo di lavaggio è ampio Ecovacs DEEBOT T90 PRO OMNI: ora il rullo di lav...
iPad 12 arriverà nel 2026 e sar&a...
AMD per il futuro dell'IA in Corea del S...
L'IA agentica incrementa il rischio cybe...
Rapporto Clusit 2026: finanza e infrastr...
Gli stessi sali che solidificano il tofu...
Il conflitto in Medio Oriente minaccia l...
OnlyFans, scomparso il proprietario Leon...
Le migliori offerte Amazon da leggere in...
Recensioni su Trustpilot non affidabili,...
Il CISPE denuncia Broadcom all'antitrust...
Il cyberattacco che negli Usa ha trasfor...
AI Grid Intelligent Orchestration, l'inf...
Roborock Qrevo CURV 2 Flow X: tecnologia...
Quanto viaggia il modem di iPhone Air? I...
300 GB di memoria RAM per le future gene...
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:34.


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