|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
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 |
![]() |
![]() |
![]() |
#2 |
Senior Member
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. |
![]() |
![]() |
![]() |
#3 |
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? |
![]() |
![]() |
![]() |
#4 |
Senior Member
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. |
![]() |
![]() |
![]() |
#5 |
Senior Member
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/ |
![]() |
![]() |
![]() |
#6 | |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
|
|
![]() |
![]() |
![]() |
#7 |
Senior Member
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 |
![]() |
![]() |
![]() |
#8 |
Senior Member
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.
|
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Nov 2007
Messaggi: 488
|
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.
|
![]() |
![]() |
![]() |
#10 |
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 |
![]() |
![]() |
![]() |
#11 | |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
![]() 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. |
|
![]() |
![]() |
![]() |
#12 |
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:
(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 |
![]() |
![]() |
![]() |
#13 | |
Senior Member
Iscritto dal: Dec 2003
Messaggi: 4907
|
Quote:
Codice PHP:
Ultima modifica di ||ElChE||88 : 17-03-2010 alle 11:40. |
|
![]() |
![]() |
![]() |
#14 |
Member
Iscritto dal: Apr 2004
Messaggi: 56
|
A questo punto mi arrendo alla potenza di QT!!!!
![]() |
![]() |
![]() |
![]() |
#15 | |
Senior Member
Iscritto dal: May 2004
Messaggi: 1136
|
Quote:
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. |
|
![]() |
![]() |
![]() |
#16 | |
Member
Iscritto dal: Mar 2010
Città: Regno Unito
Messaggi: 38
|
Quote:
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? |
|
![]() |
![]() |
![]() |
#17 | |
Member
Iscritto dal: Mar 2010
Città: Regno Unito
Messaggi: 38
|
Quote:
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 .. |
|
![]() |
![]() |
![]() |
#18 |
Member
Iscritto dal: Mar 2010
Città: Regno Unito
Messaggi: 38
|
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 :-)
|
![]() |
![]() |
![]() |
#19 |
Senior Member
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. |
![]() |
![]() |
![]() |
#20 | |
Member
Iscritto dal: Mar 2010
Città: Regno Unito
Messaggi: 38
|
Quote:
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? |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 04:40.