Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre
Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre
L'abbonamento Ultimate di GeForce NOW ora comprende la nuova architettura Blackwell RTX con GPU RTX 5080 che garantisce prestazioni tre volte superiori alla precedente generazione. Non si tratta solo di velocità, ma di un'esperienza di gioco migliorata con nuove tecnologie di streaming e un catalogo giochi raddoppiato grazie alla funzione Install-to-Play
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco
Deebot X11 Omnicyclone implementa tutte le ultime tecnologie Ecovacs per l'aspirazione dei pavimenti di casa e il loro lavaggio, con una novità: nella base di ricarica non c'è più il sacchetto di raccolta dello sporco, sostituito da un aspirapolvere ciclonico che accumula tutto in un contenitore rigido
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio
Grazie ad un mocio rotante che viene costantemente bagnato e pulito, Narwal Flow assicura un completo e capillare lavaggio dei pavimenti di casa. La logica di intellignza artificiale integrata guida nella pulizia tra i diversi locali, sfruttando un motore di aspirazione molto potente e un sistema basculante per la spazzola molto efficace sui tappeti di casa
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-03-2010, 12:23   #1
peng
Member
 
Iscritto dal: Mar 2010
Città: Regno Unito
Messaggi: 38
[UI Design] C++, C++ .NET, C++ MFC o C#?

Ciao a tutti,

sto lavorando ad un progetto per il quale ho difficolta' a capire che linguaggio e framework utilizzare.

Uno dei problemi princiapli che sto trovando e' che non riesco a capire come variare a runtime il numero di box e label. Infatti l'idea sarebbe quella di permettere all'utente di caricare un file con delle misurazioni. Questo file e' quindi visualizzato in un pannello e a fianco del pannello v'e' una label con checkox o simile che indica se il file e' visualizzato. Mi domandavo come poter permettere all'utente di aggiungere + file e quindi visualizzare una checkbox per ogni file aggiunto. L'idea e' che il grafico accorpori tutte i file aggiunti.

Non capisco se vi sono particolari vantaggi usando un linguaggio o l'altro.

Inoltre mi domandavo se qualcuno di voi avesse usato Dundas Chart per visualizzare grafici nelle vostre applicazioni. http://www.dundas.com/Components/Pro...art/index.aspx

Vi ringrazio!

Daniele
Immagini allegate
File Type: jpg prova.JPG (19.1 KB, 38 visite)
peng è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2010, 12:32   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Tu quali linguaggi conosci ?

In praticamente qualsiasi framework è possibile aggiungere checkbox e tab a runtime.
Considera anche C++ e Qt da utilizzare con l'IDE QtCreator.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 16-03-2010, 15:21   #3
peng
Member
 
Iscritto dal: Mar 2010
Città: Regno Unito
Messaggi: 38
Grazie,

io conosco C++, Java, Perl, OCaml e Cobol.

Si tratta di una scelta di team. Stiamo cercando di caprie se usare MFC oppure .NET per un nuovo software. Domani iniziamo una tre giorni di corso in MFC. Riguardo .NET possiamo chiedere di fare un corso se necessario.

Il progetto dura 14 mesi e dobbiamo fare la prima realease tra 3 mesi. L'application e' desktop based.

Stiamo ragionando in termini di velocita' di programmazione vs mantenibilita' del codice.

Vorremmo poter implementare qualcosa velocemente ma che sia anche facilmente mantenibile.

Per quanto riguarda l'aspetto grafico ho trovato alcune librerie che usando MFC migliorerebbero parecchio l'aspetto della applicazione (e fare anche in maniere facile la domanda che ponevo prima - http://www.bcgsoft.com/FeatureTour/b...olbar-tour.htm - ho appena scritto un post simile nel forum, quindi spero non sia un doppione).

Per quanto riguarda la visualizzazione di grafici (richiesta dai nostri requisiti) ho trovato Dundas Chart (http://www.dundas.com/Components/Pro...rt/index.aspx). Purtroppo pero' non supporta MFC.. hai consigli di librerie simili in MFC?

Ti ringrazio!

Consigli?
peng è offline   Rispondi citando il messaggio o parte di esso
Old 16-03-2010, 16:06   #4
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
MFC secondo me è la scelta peggiore possibile. Il problema di programmare in managed C++ (utilizzando quindi .Net) è che il linguaggio è un po' stravolto, ma se puoi convivere con questa mancanza, allora te lo consiglio vivamente
Come ho già scritto, prendete in considerazione anche Qt. Rispetto a MFC è molto più semplice e meno verbosa, quindi più facilmente manutenibile. Riguardo a librerie per grafici basate su Qt: http://qwt.sourceforge.net/
Tutto gratuito e non devi comprare niente, nemmeno Visual Studio, se ti accontenti di QtCreator.

Ultima modifica di cionci : 16-03-2010 alle 16:09.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 16-03-2010, 17:33   #5
Pixel452
Senior Member
 
L'Avatar di Pixel452
 
Iscritto dal: Nov 2007
Messaggi: 488
Se il target è solo Windows ti consiglio WPF, si programma in C# e fa parte del Framework .NET. E’ abbastanza diverso da programmare rispetto alle MFC ed introduce molti concetti nuovi rispetto alle precedenti librerie Microsoft, quindi prevedi un primo periodo di “ambientamento”. I grafici dovrebbero esserci ma sono assembly inclusi in Expression Blend, noi in ditta usiamo le librerie della Syncfusion che però sono a pagamento. Googlando dovresti trovarne anche di gratuite.

Qui puoi trovare Blend, un potentissimo strumento per la creazione delle UI
http://www.microsoft.com/expression/
Pixel452 è offline   Rispondi citando il messaggio o parte di esso
Old 16-03-2010, 19:09   #6
tomminno
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 3306
Quote:
Originariamente inviato da Pixel452 Guarda i messaggi
Se il target è solo Windows ti consiglio WPF, si programma in C# e fa parte del Framework .NET. E’ abbastanza diverso da programmare rispetto alle MFC ed introduce molti concetti nuovi rispetto alle precedenti librerie Microsoft, quindi prevedi un primo periodo di “ambientamento”. I grafici dovrebbero esserci ma sono assembly inclusi in Expression Blend, noi in ditta usiamo le librerie della Syncfusion che però sono a pagamento. Googlando dovresti trovarne anche di gratuite.

Qui puoi trovare Blend, un potentissimo strumento per la creazione delle UI
http://www.microsoft.com/expression/
Non mi risulta però che esista una versione di Expression Blend gratuita.
tomminno è offline   Rispondi citando il messaggio o parte di esso
Old 16-03-2010, 21:38   #7
Pixel452
Senior Member
 
L'Avatar di Pixel452
 
Iscritto dal: Nov 2007
Messaggi: 488
Se ha una licenza MSDN dovrebbe essere compreso. Diciamo che Blend non è assolutamente indispensabile, è molto bello e potente ma puoi farne a meno, dipende molto da che tipo di programma stai sviluppando. Se devi contenere i costi puoi usare Visual Studio 2008 Express Edition, non credo ti serva altro.

Un consiglio, se scegli WPF, compra un libro e studiatelo, roba da 3 giorni, cambierà la tua esperienza di lavoro. Conosco gente che lo usa come se fosse MFC e ti assicuro, non è da imitare. Prenditi il tempo che ti serve, credo che valga la stessa cosa per qualsiasi libreria tu scelga.

p.s. questo "Windows Presentation Foundation Unleashed" è buono
Pixel452 è offline   Rispondi citando il messaggio o parte di esso
Old 16-03-2010, 22:02   #8
WarDuck
Senior Member
 
L'Avatar di WarDuck
 
Iscritto dal: May 2001
Messaggi: 12840
Se non erro Visual Studio Express non si può usare in ambienti di produzione, ergo se vuoi vendere software.
WarDuck è offline   Rispondi citando il messaggio o parte di esso
Old 16-03-2010, 22:33   #9
Pixel452
Senior Member
 
L'Avatar di Pixel452
 
Iscritto dal: Nov 2007
Messaggi: 488
Quote:
Originariamente inviato da WarDuck Guarda i messaggi
Se non erro Visual Studio Express non si può usare in ambienti di produzione, ergo se vuoi vendere software.
Ah... non lo sapevo. Potrebbe sempre usare un altro IDE o magari hanno già delle licenze, da quello che ha detto sarà un progetto che coinvolgerà più persone e durerà 14 mesi, senza contare che le tecnologie citate da lui sono tutte MS, sono portato a pensare che queste storie di licenza nel suo caso non siano un problema.
Pixel452 è offline   Rispondi citando il messaggio o parte di esso
Old 17-03-2010, 10:41   #10
zakmckraken
Member
 
Iscritto dal: Apr 2004
Messaggi: 56
Ciao!
Per la mia esperienza ti consiglio esclusivamente C#, come ambiente di sviluppo va piu'che bene MonoDevelop (lo uso per sviluppare sia in Asp.Net sia in WinForms sotto Linux e Windows senza differenze apprezzabili). Perche'dico questo?
Con MFC fare cose veramente dinamiche e'volersi fare male, non e'fatto per essere totalmente dinamico, vedi il sistema per associare i gestori degli eventi.
Non conosco QT (e vorrei approfondirlo quindi ogni info e'ben accetta!) ma immagino (e ripeto immagino) che essendo C++ abbia gli stessi problemi di MFC riguardo all'associare eventi ai controlli..
WinForms con C# ha il pregio di poter gestire in maniera programmatica l'associazione di eventi e la costruzione dei vari oggetti senza troppi problemi. Avevo in effetti messo su un progetto ormai ben consolidato proprio con questo approccio, (per la cronaca se qualcuno fosse interessato http://www.ceframework.com)
Zak
zakmckraken è offline   Rispondi citando il messaggio o parte di esso
Old 17-03-2010, 11:01   #11
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da zakmckraken Guarda i messaggi
Non conosco QT (e vorrei approfondirlo quindi ogni info e'ben accetta!) ma immagino (e ripeto immagino) che essendo C++ abbia gli stessi problemi di MFC riguardo all'associare eventi ai controlli..
Fortunatamente no. Il sistema di funzionamento si basa su signal e slot. Il signal è un evento, lo slot invece esegue una funzione sul controllo. E' possibile collegare graficamente i signal agli slot, sempre che siano compatibili
E' comunque possibile implementare i propri signal ed i propri slot.
http://doc.trolltech.com/4.6/signalsandslots.html

Inoltre il meccanismo per cambiare dinamicamente l'aspetto dei controlli è molto più semplice rispetto a quello di MFC (maledetti messaggi). Se invece si vuole cambiare l'aspetto staticamente è possibile farlo tramite semplici fogli di stile, in modo simile a CSS.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 17-03-2010, 11:27   #12
zakmckraken
Member
 
Iscritto dal: Apr 2004
Messaggi: 56
Thkx!
Quindi vuoi dire che puoi arbitrariamente fare una cosa tipo (pseudocodice misto java c# etc....)
Codice PHP:
class Form{
  
void myFunction(WidgetClass widget ){
    
widget.addEventHandler(ON_CLICK,myHandler);
  }

  
void myHandler(){
    
//Do something
  
}

In modo da poter associare all'evento ON_CLICK l'esecuzione del metodo myHandler? Un po come faresti con php/java/c#/(linguaggio != C/C++)
(Ammetto che spero che la risposta sia "si" e a sto punto provo davvero le QT!!!)
Leggendo la pagina relativa mi sembra che sia qualcosa del genere, sfruttando il preprocessore per "ricostruire" le chiamate a funzione...

Ultima modifica di zakmckraken : 17-03-2010 alle 11:32. Motivo: Forse dovevo anche leggere la pagina linkata... :P
zakmckraken è offline   Rispondi citando il messaggio o parte di esso
Old 17-03-2010, 11:36   #13
||ElChE||88
Senior Member
 
Iscritto dal: Dec 2003
Messaggi: 4907
Quote:
Originariamente inviato da zakmckraken Guarda i messaggi
Thkx!
Quindi vuoi dire che puoi arbitrariamente fare una cosa tipo (pseudocodice misto java c# etc....)
Codice PHP:
class Form{
  
void myFunction(WidgetClass widget ){
    
widget.addEventHandler(ON_CLICK,myHandler);
  }

  
void myHandler(){
    
//Do something
  
}

In modo da poter associare all'evento ON_CLICK l'esecuzione del metodo myHandler? Un po come faresti con php/java/c#/(linguaggio != C/C++)
(Ammetto che spero che la risposta sia "si" e a sto punto provo davvero le QT!!!)
Si.
Codice PHP:
class Form QWidget
{
Q_OBJECT
public:
    
void myFunction(QPushButton *button)
    {
        
connect(buttonSIGNAL(clicked()), thisSLOT(myHandler()));
    }

private 
slots:
    
void myHandler()
    {
        
//Do something
    
}
}; 

Ultima modifica di ||ElChE||88 : 17-03-2010 alle 11:40.
||ElChE||88 è offline   Rispondi citando il messaggio o parte di esso
Old 17-03-2010, 12:52   #14
zakmckraken
Member
 
Iscritto dal: Apr 2004
Messaggi: 56
A questo punto mi arrendo alla potenza di QT!!!!
zakmckraken è offline   Rispondi citando il messaggio o parte di esso
Old 17-03-2010, 19:12   #15
Johnn
Senior Member
 
Iscritto dal: May 2004
Messaggi: 1136
Quote:
Originariamente inviato da peng Guarda i messaggi
Ciao a tutti,

sto lavorando ad un progetto per il quale ho difficolta' a capire che linguaggio e framework utilizzare.

CUT
Prova a dare un'occhiata a Eclipse RCP.
http://www.eclipse.org/home/categories/rcp.php

E' una strada probabilmente diversa da quanto è già stato consigliato, ma per la mia piccola esperienza è stata più che positiva.
Direi che si programma ad un livello più alto di astrazione rispetto a quanto già detto, anche se non ho esperienza diretta. Ciò mi ha permesso, senza esperienze precedenti, di realizzare una UI di tutto rispetto comparabile a quella di Eclipse stesso (perché si sfruttano componenti, i plugin, già preconfezionati, ma comunque personalizzabili a piacimento) rapidamente e in maniera pulita. Per esempio, se si deve realizzare un'area che funge da editor di testo, già ci sono tutti gli elementi a disposizione per il taglia, copia, incolla, sintax highlighting (!), ecc. Quindi penso sia una soluzione che venga incontro all'esigenza di essere rapidi nello sviluppo e nello stesso tempo di scrivere codice manutenibile. Poi sono quasi del tutto certo che potete usare tutto liberamente.
Johnn è offline   Rispondi citando il messaggio o parte di esso
Old 22-03-2010, 08:08   #16
peng
Member
 
Iscritto dal: Mar 2010
Città: Regno Unito
Messaggi: 38
Quote:
Originariamente inviato da Johnn Guarda i messaggi
rapidamente e in maniera pulita. Per esempio, se si deve realizzare un'area che funge da editor di testo, già ci sono tutti gli elementi a disposizione per il taglia, copia, incolla, sintax highlighting (!), ecc. Quindi penso sia una soluzione che venga incontro all'esigenza di essere rapidi nello sviluppo e nello stesso tempo di scrivere codice manutenibile. Poi sono quasi del tutto certo che potete usare tutto liberamente.

Anche MFC ha una funzionalita' simile, si puo' fare un editor di testo con tale funzioni (a parte il syntax highligting) in pochi minuti..

che linguaggio hai utilizzato? C++ .NET?
peng è offline   Rispondi citando il messaggio o parte di esso
Old 22-03-2010, 08:09   #17
peng
Member
 
Iscritto dal: Mar 2010
Città: Regno Unito
Messaggi: 38
Quote:
Originariamente inviato da WarDuck Guarda i messaggi
Se non erro Visual Studio Express non si può usare in ambienti di produzione, ergo se vuoi vendere software.

Si infatti, noi abbiamo Visual Studio 2008 professional. La licenza ci permette di redistribuire le applicazioni.. Visual Studio Express ha inoltre alcune funzionalita' in meno rispetto a VS ..
peng è offline   Rispondi citando il messaggio o parte di esso
Old 22-03-2010, 08:13   #18
peng
Member
 
Iscritto dal: Mar 2010
Città: Regno Unito
Messaggi: 38
Quote:
Originariamente inviato da zakmckraken Guarda i messaggi
Ciao!
Per la mia esperienza ti consiglio esclusivamente C#, ..Zak
Grazie, apprezzo il contributo. Oggi e' giornata di decisione. Io e l'altro collega siamo fortemente propensi per C++/C# .NET. Vedremo se riusciremo a convincere il nostro Project Manager :-)
peng è offline   Rispondi citando il messaggio o parte di esso
Old 22-03-2010, 08:20   #19
Pixel452
Senior Member
 
L'Avatar di Pixel452
 
Iscritto dal: Nov 2007
Messaggi: 488
Quindi siete indecisi tra Qt e WPF?
Credo siano le piattaforme più papabili per i linguaggi scelti. Facci sapere.

Se posso... non avete pensato a fare un paio di giorni di prova con entrambe le soluzioni? Almeno vi fate un idea parziale.
Pixel452 è offline   Rispondi citando il messaggio o parte di esso
Old 22-03-2010, 08:21   #20
peng
Member
 
Iscritto dal: Mar 2010
Città: Regno Unito
Messaggi: 38
Quote:
Originariamente inviato da Pixel452 Guarda i messaggi
Se il target è solo Windows ti consiglio WPF, si programma in C# e fa parte del Framework .NET. E’ abbastanza diverso da programmare rispetto alle MFC ed introduce molti concetti nuovi rispetto alle precedenti librerie Microsoft, quindi prevedi un primo periodo di “ambientamento”. I grafici dovrebbero esserci ma sono assembly inclusi in Expression Blend, noi in ditta usiamo le librerie della Syncfusion che però sono a pagamento. Googlando dovresti trovarne anche di gratuite.

Qui puoi trovare Blend, un potentissimo strumento per la creazione delle UI
http://www.microsoft.com/expression/
Nel mio team v'e' un senior programmer con una considerevole esperienza in .NET usando WinForms. Non ha molta esperienza usando WPF.

Non mi sono ben chiari i vantaggi di WPF rispetto a WinForms.

Vi sono vantaggi evidenti oppure entrambe le scelte sono piu' o meno equiparabili e preferibili a MFC?

Inoltre, questa domanda e' estesa a tutti, la mia impressione e' che usando MFC puoi ottenere effetti migliori nell'aspetto della tua applicazione. Ad esempio ho installato un FEATURE PACK per VS 2008 ed ora posso un sacco di layout (Office 2007, Visual Studio etc..). Inoltre v'e' il supporto dei Ribbon. La cosa che comunque era presente anche prima e' il fatto che usando il Wizard posso creare gia' un applicazione "dockable" e con un'aspetto professionale. Vi risulta che sia possibile fare lo stesso anche con .NET?
peng è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre Prova GeForce NOW upgrade Blackwell: il cloud ga...
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco Ecovacs Deebot X11 Omnicyclone: niente più...
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio Narwal Flow: con il mocio orizzontale lava i pav...
Panasonic 55Z95BEG cala gli assi: pannello Tandem e audio senza compromessi Panasonic 55Z95BEG cala gli assi: pannello Tande...
HONOR Magic V5: il pieghevole ultra sottile e completo! La recensione HONOR Magic V5: il pieghevole ultra sottile e co...
Larry Ellison guadagna 101 miliardi in u...
Johnson Controls amplia la gamma di solu...
NASA Perseverance: il rover potrebbe ave...
Quelli di Immuni si 'pappano' Vimeo: Ben...
Changan lancia la Deepal S05 in Europa, ...
Substrati in vetro, Intel smentisce le v...
ECOVACS DEEBOT T50 PRO OMNI Gen2 fa piaz...
Windelo 62: catamarano a vela che unisce...
Francia, in arrivo un incentivo di 1.000...
Haier, la sorpresa a IFA: la lavatrice C...
GeForce RTX 5000 SUPER in arrivo? Sembra...
Ionity prova una soluzione contro i ladr...
Pirateria, svolta clamorosa: Dazn e Lega...
Maxi richiamo Toyota e Lexus: oltre 900....
Blackwell Ultra: fino al 45% di prestazi...
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: 04:40.


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