Conversione vecchio progetto in CLIPPER 5.2e in X#

Forum dedicato ai programmatori di X# in lingua italiana – Italian language forum

Moderator: wriedmann

Fab64
Posts: 63
Joined: Mon Nov 23, 2015 12:26 pm

Conversione vecchio progetto in CLIPPER 5.2e in X#

Post by Fab64 »

Saluti a tutti,

Premesso che sono ormai 12 anni che non programmo più in VO ( tranne piccole cose di tanto in tanto ),
avrei un programmino ( per uso personale ) fatto negli anni 90 in CLIPPER che ora vorrei rifare in X#.
La domanda è:
qual'è l'approccio migliore?
per l'interfaccia GUI cosa è meglio utilizzare tra WINFORM, WPF, X# GUI ( VO GUI su runtime X#), HTML5 o altro?
Per database meglio Postgress o MySQL o altro ( l'importante è che il DBASE sia FREE in quanto è per uso domestico e non commerciale )?
Come IDE è meglio utilizzare XIDE o Visual Studio?

Saluti,
Fabrizio
User avatar
wriedmann
Posts: 3668
Joined: Mon Nov 02, 2015 5:07 pm
Location: Italy

Conversione vecchio progetto in CLIPPER 5.2e in X#

Post by wriedmann »

Ciao Fabrizio,

se il progetto è pensato per prendere un po la mano con X# e .NET, opterei per XIDE e WinForms.

La nostra scelta come azienda è di usare WPF (che anche se molto più complesso è l'unica piattaforma con la quale riusciamo a realizzare quello che i clienti ci chiedono).
Inoltre usiamo XIDE perchè ci troviamo meglio, e la scelta di database è caduta su PostgreSQL (dopo aver optato inizialmente per Firebird abbiamo dovuto ripensarci).

Wolfgang
Wolfgang Riedmann
Meran, South Tyrol, Italy
wolfgang@riedmann.it
https://www.riedmann.it - https://docs.xsharp.it
User avatar
softdevo@tiscali.it
Posts: 189
Joined: Wed Sep 30, 2015 1:30 pm

Conversione vecchio progetto in CLIPPER 5.2e in X#

Post by softdevo@tiscali.it »

Concordo pienamente con Wolfgang per la scelta di Xide, un ottimo prodotto molto più semplice di Visual Studio, ma fa tutto quello che serve. Concordo anche per la scelta winform, per iniziare è la strada migliore, per base dati uso da oltre 15 anni Mysql e mi trovo molto bene ma anche PostgreSql è un'ottima scelta. Per progetti molto semplici un'alternativa potrebbe essere SQLite, non necessita di installazione anche se ha molti limiti.
Fab64
Posts: 63
Joined: Mon Nov 23, 2015 12:26 pm

Conversione vecchio progetto in CLIPPER 5.2e in X#

Post by Fab64 »

Ciao Wolfgang, Danilo,
Si il progetto è pensato per prendere la mano con .NET e con X# ( non è un programma pensato per venderlo ma per uso personale diciamo un laboratorio per fare esperienza ).

Attualmente tra MySQL e Postgresql potrebbe ritornarmi più utile il secondo visto che il portale che utilizziamo in azienda utilizza postgresql come database.

Seguirò il consiglio di utilizzare WINFORM prima di passare a WPF ( XIDE gestisce WPF? )
Un ultima cosa è possibile creare FORM in HTML5 Con XIDE o Visual Studio?

Saluti,
Fabrizio
User avatar
wriedmann
Posts: 3668
Joined: Mon Nov 02, 2015 5:07 pm
Location: Italy

Conversione vecchio progetto in CLIPPER 5.2e in X#

Post by wriedmann »

Ciao Fabrizio,

con XIDE riesci a gestire WPF, ma non XAML.
Infatti sto usando XIDE per scrivere degli applicativi WPF, ma con le finestre definite interamente in codice.
Se guardi gli esempi che sono presenti in XIDE, ne troverai qualcuno scritto da me.

Sulla conferenza X# a Colonia inoltre avrò due relazioni sulla scrittura di applicazioni WPF in codice.

Per quanto riguarda HTML5: penso che in Visual Studio sia possibile - in XIDE di certo no (puoi benissimo scrivere qualsiasi forma di file, ma senza particolare supporto all'editing).

Saluti

Wolfgang
Wolfgang Riedmann
Meran, South Tyrol, Italy
wolfgang@riedmann.it
https://www.riedmann.it - https://docs.xsharp.it
User avatar
softdevo@tiscali.it
Posts: 189
Joined: Wed Sep 30, 2015 1:30 pm

Conversione vecchio progetto in CLIPPER 5.2e in X#

Post by softdevo@tiscali.it »

Per quanto riguarda HTML 5, con Visual Studio si, attenzione però le chiamate ai metodo non puoi gestirle all'interno della pagina con potresti fare con C# o VB.Net, ma definirli in DLL scritte in X#, poi dici alla pagina ASPX:
<%@ Page Language="VB" Inherits="WebForm1" uiculture="it" culture="it-IT"%>

la chiamata Language="VB" diventa irrilevante, puoi anche scrivere Language="C#", questo servirebbe se scrivessi codice nella pagina.

mentre la classe WebForm1 è contenuta in una dll, che scrivo con XIDE, da posizionare nella cartella BIN del progetto:
CLASS WebForm1 INHERIT Page
....
....
CONSTRUCTOR()
SUPER()
RETURN

METHOD MyButton_Click(Sender AS OBJECT, e AS EventArgs) AS VOID
....
...
RETURN

END CLASS

Danilo
Fab64
Posts: 63
Joined: Mon Nov 23, 2015 12:26 pm

Conversione vecchio progetto in CLIPPER 5.2e in X#

Post by Fab64 »

Ciao Wolfgang,

Dopo la conferenza di Colonia su X# puoi postare in rete i tuoi interventi su WPF ?

saluti,
Fabrizio
Fab64
Posts: 63
Joined: Mon Nov 23, 2015 12:26 pm

Conversione vecchio progetto in CLIPPER 5.2e in X#

Post by Fab64 »

ciao Danilo,

molto interessante. Ora provo ad esercitarmi.

Saluti,
Fabrizio Malaguti
User avatar
wriedmann
Posts: 3668
Joined: Mon Nov 02, 2015 5:07 pm
Location: Italy

Conversione vecchio progetto in CLIPPER 5.2e in X#

Post by wriedmann »

Ciao Fabrizio,

sicuramente in qualche forma verrà pubblicato.

Le basi comunque le trovi già addesso negli esempi WPF e MVVM di XIDE.

Il punto di partenza è che con VO abbiamo imparato due cose molto importanti:
  • creare sottoclassi delle classi di sistema e aggiungere le funzionalità che ci servono
  • usare nomi parlanti per i campi sulle maschere, o meglio, usare i nomi dei relativi campi database
Se ci portiamo queste due cose nel mondo .NET (sia WinForms che WPF), ci facilitiamo molto la vita e abbiamo bisogno di scrivere molto meno codice - che porta poi anche ad avere applicazioni più facilmente gestibili nel tempo.
Stranamente nessuna di queste due possibilità sembra molto diffusa nel mondo al di fuori di VO.

Saluti

Wolfgang
Wolfgang Riedmann
Meran, South Tyrol, Italy
wolfgang@riedmann.it
https://www.riedmann.it - https://docs.xsharp.it
Fab64
Posts: 63
Joined: Mon Nov 23, 2015 12:26 pm

Conversione vecchio progetto in CLIPPER 5.2e in X#

Post by Fab64 »

Ciao Wolfgang,
Wolfgang Riedmann wrote: sicuramente in qualche forma verrà pubblicato.
ok. penso sia molto utile mettere in forma pubblica il materiale del meeting a Colonia non tutti posso partecipare.
Anzi esiste del materiale pubblico dei meeting a Colonia delle passate edizioni?
Wolfgang Riedmann wrote:
Il punto di partenza è che con VO abbiamo imparato due cose molto importanti:
  • creare sottoclassi delle classi di sistema e aggiungere le funzionalità che ci servono
  • usare nomi parlanti per i campi sulle maschere, o meglio, usare i nomi dei relativi campi database
Se ci portiamo queste due cose nel mondo .NET (sia WinForms che WPF), ci facilitiamo molto la vita e abbiamo bisogno di scrivere molto meno codice - che porta poi anche ad avere applicazioni più facilmente gestibili nel tempo.
Stranamente nessuna di queste due possibilità sembra molto diffusa nel mondo al di fuori di VO.
In effetti uno dei paradigmi della programmazione OOP è proprio quella di ereditare le classi base per implementare funzionalità aggiuntive della classe base.

Saluti,
Fabrizio
Post Reply