View Full Version : Applicazione multipiattaforma, possibile con vb.net?
lnessuno
23-01-2006, 20:11
dunque, avrei necessità di creare un'applicazione multipiattaforma (in realtà mi basterebbe farla girare sia sotto linux che sotto windows), e parlando con stiwi.net si pensava al vb.net.
utilizzando mono si riescono a realizzare applicazioni in vb.net senza problemi? a me servirebbe qualcosa che si possa interfacciare con un database locale, e che possa passare dei parametri (via post o get) ad alcune pagine su internet.
insomma realizzare un'applicazione del genere in vb.net secondo voi è fattibile? o conviene provare con qualche altro linguaggio? (esclusi c# e java perchè nessuno dei due li conosce, e perchè entrambi preferiremmo qualcosa di più facile da digerire e veloce da scrivere, tipo appunto il vb)
non sono da tenere in considerazione linguaggi lato server come php o asp perchè ci sono di mezzo dei dati importanti che non ci va nemmeno di pensare di rischiare di lasciare in giro per via di qualche bug :D
Stiwy.NET
23-01-2006, 20:19
Ciao... bene... come ha spiegato lui il nostro è IL dubbio esistenziale che tutti i programmatori prima o poi si pongono: "fare un programma che TUTTI possano usare!" :mc:
Io ho proposto il VB.NET perchè è il linguaggio con cui ho lavorato per più di un anno e mezzo. In più da settembre Visual Studio 2005 è persino free... :read:
Non mi dispiacerebbe neanche imparare un nuovo linguaggio... però lo sviluppo dell'applicazione sarebbe più lungo e complesso. :muro:
Aspettiamo risposte
VegetaSSJ5
23-01-2006, 20:25
sicuramente java! cercate di imparare java al più presto e al contempo di dimenticare il vb per favore! :Puke:
lnessuno
23-01-2006, 20:27
sicuramente java! cercate di imparare java al più presto e al contempo di dimenticare il vb per favore! :Puke:
primo post! rileggi :D
al limite pensavo python, che conosco un pochino (ho fatto un'applicazioncina stupida che scrive in un file di testo per lavoro)... :stordita:
lnessuno
23-01-2006, 20:32
cmq vb non è così male alla fine, se non altro è comodo... diversamente dal java, che avrà altri mille pro.
resta il fatto che come velocità di programmazione non ci sono paragoni, e visto che non è un'applicazione professionale è un fattore di vitale importanza, almeno per me :p
franksisca
23-01-2006, 20:59
usa java, ed è già multipiattaforma.
sndk4ASP
23-01-2006, 21:35
Uhm, non vorrei che questo post finisse nel solito M$ vs. Java/Linux ecc. ecc. che - non so qui - ho già visto e rivisto su innumerevoli forum :D
Credo che se si ha l'esigenza di sviluppare velocemente un'applicazione sia meglio sfruttare appieno le conoscenze che già si hanno. Se già conosci in parte il famework .net e ti piace usa quello. L'uso di Java è sarebbe anche un'ottima scelta che però non vedo come imperativa ma solo come una questione di "gusti".... :rolleyes:
Stiwy.NET
23-01-2006, 21:42
Credo che se si ha l'esigenza di sviluppare velocemente un'applicazione sia meglio sfruttare appieno le conoscenze che già si hanno.
Grazie... finalmente un consiglio logico e non di parte... :cool:
Kmq l'idea di imparare il java non è così orripilante... almeno... a me piace imparare cose nuove!
Stiamo però uscendo dal tema del 3d... visual basic .Net come funziona con Mono???
lnessuno
23-01-2006, 21:44
Uhm, non vorrei che questo post finisse nel solito M$ vs. Java/Linux ecc. ecc. che - non so qui - ho già visto e rivisto su innumerevoli forum :D
Credo che se si ha l'esigenza di sviluppare velocemente un'applicazione sia meglio sfruttare appieno le conoscenze che già si hanno. Se già conosci in parte il famework .net e ti piace usa quello. L'uso di Java è sarebbe anche un'ottima scelta che però non vedo come imperativa ma solo come una questione di "gusti".... :rolleyes:
vedi, il problema non è tanto che non vogliamo usare java per partito preso, almeno per quanto mi riguarda il problema è che la necessità è di creare una applicazione in tempi non biblici (e il java non è proprio una passeggiata da imparare), e che sia imperativamente multipiattaforma. l'uso del framework .net/mono a me va benissimo, resta solo da valutare l'effettiva compatibilità con entrambi i sistemi operativi per le operazioni che il programma dovrà svolgere (database e invio di dati a pagine html tramite get o post).
se un'applicazione in vb.net riesce a fare queste 3 cose per quanto mi riguarda è perfetta, altrimenti si dovrà ripiegare su qualcos'altro... possibilmente che sia relativamente facile da imparare e veloce (tipo il python, la cui più grave mancanza secondo me è la mancanza di un modo veloce e comprensibile di realizzare interfacce grafiche)
sndk4ASP
23-01-2006, 21:51
.... resta solo da valutare l'effettiva compatibilità con entrambi i sistemi operativi per le operazioni che il programma dovrà svolgere (database e invio di dati a pagine html tramite get o post)....
Questo è poco ma sicuro. Bisogna valutare in base a cosa deve fare esattamente il programma. .net è multipiattaforma fino ad un certo punto e per la totale portabilità chi consigliava java non aveva certo torto, ma ripeto dipende cosa devi fare.
lnessuno
23-01-2006, 21:56
altrimenti, con linguaggi tipo python + wxwindow? oppure perl + qualcos'altro, o ruby, o tcl-tk... :stordita:
python l'ho già usato per un progettino stupido, oltre alla "difficoltà" nel creare l'interfaccia è abbastanza gestibile... :stordita:
^TiGeRShArK^
23-01-2006, 23:27
cmq vb non è così male alla fine, se non altro è comodo... diversamente dal java, che avrà altri mille pro.
resta il fatto che come velocità di programmazione non ci sono paragoni, e visto che non è un'applicazione professionale è un fattore di vitale importanza, almeno per me :p
mmmmm...
onestamente come velocità di programmazione tra Java e VB.Net non la vedo molto diversa...
vedo piu' avvantaggiato il python di VB.Net in questo campo...
io ti direi di provare col python... ma ho fatto solo qualke cazzatina.....
prova a sentire il parere di ki lo usa x lavoro...(ki ha detto cdimauro??? :sofico: )
^TiGeRShArK^
23-01-2006, 23:29
tipo il python, la cui più grave mancanza secondo me è la mancanza di un modo veloce e comprensibile di realizzare interfacce grafiche
a quanto ne so sono stati fatti diversi passi avanti sotto questo punto di vista..
ma km ho già detto prima.. nn ho mai provato di persona :p
Stiwy.NET
24-01-2006, 15:44
Guardate quà... mi è arrivato oggi per e-mail questo link che potrebbe essere molto esaustivo per questo 3d: http://dev.mainsoft.com/ (http://dev.mainsoft.com/Default.aspx?tabid=45)
sndk4ASP
24-01-2006, 16:50
Guardate quà... mi è arrivato oggi per e-mail questo link che potrebbe essere molto esaustivo per questo 3d: http://dev.mainsoft.com/ (http://dev.mainsoft.com/Default.aspx?tabid=45)
chissà chi ti ha inviato la mail :rolleyes: ;)
l'ultima volta che gli ho dato un'occhiata però funzionava solo con visual studio 2003 in inglese
lnessuno
24-01-2006, 18:02
chissà chi ti ha inviato la mail :rolleyes: ;)
l'ultima volta che gli ho dato un'occhiata però funzionava solo con visual studio 2003 in inglese
:D
comunque sembrerebbe interessante, ma a occhio non sono riuscito a trovare la versione free per linux... c'è solo un link ad un file eseguibile per windows :\
python l'ho già usato per un progettino stupido, oltre alla "difficoltà" nel creare l'interfaccia è abbastanza gestibile... :stordita:
toolkit semplici per python ce ne sono, semmai il problema è che a volte i programmi hanno un look un po' estraneo sotto windows, a parte wxwidgets, che pero' e' piu' complesso da utilizzare.
Le (py)gtk ad esempio sono secondo me molto semplici, peccato per la miliardata di librerie che uno si deve portare dietro (usando py2exe, uno si trova con un programma che parte dai 50-60 MB in su ! :eek: )
Fenomeno85
24-01-2006, 20:30
vb.net dal poco che ho visto è una figata :D altro che java che mi sta addosso come linguaggio :D
Poi va be quest'anno per l'università mi toccherà impararlo :D
~§~ Sempre E Solo Lei ~§~
franksisca
24-01-2006, 20:47
vb.net dal poco che ho visto è una figata :D altro che java che mi sta addosso come linguaggio :D
Poi va be quest'anno per l'università mi toccherà impararlo :D
~§~ Sempre E Solo Lei ~§~
java è over!!!!!!!
^TiGeRShArK^
24-01-2006, 21:42
vb.net dal poco che ho visto è una figata :D altro che java che mi sta addosso come linguaggio :D
Poi va be quest'anno per l'università mi toccherà impararlo :D
~§~ Sempre E Solo Lei ~§~
:mbe:
ma 6 serio???:mbe:
lnessuno
24-01-2006, 22:18
toolkit semplici per python ce ne sono, semmai il problema è che a volte i programmi hanno un look un po' estraneo sotto windows, a parte wxwidgets, che pero' e' piu' complesso da utilizzare.
Le (py)gtk ad esempio sono secondo me molto semplici, peccato per la miliardata di librerie che uno si deve portare dietro (usando py2exe, uno si trova con un programma che parte dai 50-60 MB in su ! :eek: )
ecco, io avevo programmato con le wxwidgets e in effetti le ho trovate leggermente complesse (beh quantomeno non immediate), però hanno il vantaggio di essere completamente integrate con qualunque sistema operativo... le pygtk non le conosco, ma 50-60 mb sono una follia :| con le wxwidgets sono arrivato ad avere un pacchetto (compresso) sui 3 mb... :p
cdimauro
25-01-2006, 09:36
Con python lavori MOLTO velocemente, ma francamente non ho mai scritto un'applicazione dotata di GUI.
Se puoi fare a meno della GUI, oppure al posto della GUI utilizzi delle pagine html, con Python + ClearSilver si lavora molto bene, e piuttosto spediti.
In alternativa potresti provare con Delphi (2006), che permette di scrivere velocemente applicazioni .NET e il linguaggio usato è di derivazione Pascal.
maxithron
25-01-2006, 09:56
dunque, avrei necessità di creare un'applicazione multipiattaforma (in realtà mi basterebbe farla girare sia sotto linux che sotto windows), e parlando con stiwi.net si pensava al vb.net.
utilizzando mono si riescono a realizzare applicazioni in vb.net senza problemi? a me servirebbe qualcosa che si possa interfacciare con un database locale, e che possa passare dei parametri (via post o get) ad alcune pagine su internet.
Con VB.Net non riesco ad immaginare un modo "multipiattaforma", ma, dato che .NET è un ottimo Framework, e che su Linux, anche se molto "menomato" c'è Mono con Monodevelop, l'unica via è il C#. Ma... Leggendo il seguito in cui escludete C# e/o Java, mi viene in mente un'altra (ma sconsiderata ipotesi):
Cercate di appurare se VB.NET e Gambas abbiano qualcosa in comune. Per Visual Basic 6 sono sicuro di si, per VB.NET sinceramente non lo so(ma a "orecchio" credo proprio di no).
Stiwy.NET
25-01-2006, 10:45
Ho guardato sul sito di Mono e c'è scritto che funziona con tutti i linguaggi del framework (VB.NET incluso)... indi la mia domanda è... qualcuno ha mai provato?? :O
sndk4ASP
25-01-2006, 11:10
Ho guardato sul sito di Mono e c'è scritto che funziona con tutti i linguaggi del framework (VB.NET incluso)... indi la mia domanda è... qualcuno ha mai provato?? :O
Dalle FAQ di mono:
Will Gtk# applications run on Windows?
Yes, applications compiled using Gtk# will work out of the box on Windows.
Notice that using the Mozilla and Gnome libraries is not currently supported and will limit the portability of your application. Both issues are being addressed and will be fixed in the future.
Quindi - da quello che ne so - se sviluppi un'applicazione con le gtk dovresti avere la possibilità di farla girare sia su Windows che su Linux (con limiti vari di cui però non ho conoscenza diretta). Per quel che riguarda il linguaggio il punto è questo:
- se sviluppi su Windows puoi usare il linguaggio che ti pare visto che dopo che verrà compilato potrà girare sul framework in windows e su mono in ambiente *nix.
- se sviluppi (usando mono) su Linux hai a disposizione solo il compilatore c# quindi sei costretto ad usare quello
Tempo fa feci una prova (quando ancora mono era in alfa) creando una piccola applicazione console (quindi senza GUI) con visual studio (in vb) che semplicemente pescava dei dati da un db sqlserver remoto e li listava a video. Ebbene funzionava senza problemi sia in Windows che sulla Slackware che usavo per prova. :)
ma non si farebbe molto prima a fare un applicanzioncina (senza controlli errori, con a db etc etc.... il minimo indispensabile insomma) il piu semplice possibile con vb.net e poi vedere se va con mono?
lnessuno
25-01-2006, 12:27
Con python lavori MOLTO velocemente, ma francamente non ho mai scritto un'applicazione dotata di GUI.
Se puoi fare a meno della GUI, oppure al posto della GUI utilizzi delle pagine html, con Python + ClearSilver si lavora molto bene, e piuttosto spediti.
In alternativa potresti provare con Delphi (2006), che permette di scrivere velocemente applicazioni .NET e il linguaggio usato è di derivazione Pascal.
l'idea delle pagine html al posto della gui mi piace veramente un sacco, non ci avevo pensato :eek: (non conoscevo nemmeno clearsilver a dire il vero :D)
Stiwy.NET
25-01-2006, 13:19
ma non si farebbe molto prima a fare un applicanzioncina il piu semplice possibile con vb.net e poi vedere se va con mono?
Certo è quello che avrei fatto se non fosse che per farlo bisognerebbe:
1. installare mono su windows; :muro:
2. installare mono su linux; :muro:
3. fare l'applicazione; :(
4. testarla su windows; :cry:
5. testarla su linux; :cry:
6.7.8.9 etc...
:sofico:
diventa una cosa assai lunga e dovrei installare un casino di cose che... se non funzionasse dovrei disinstallare e probabilmente mi "sporcherebbero" un casino il pc... non ho un pc per i test IO! E' per questo che abbiamo a perto un 3d: per poter usufruire dell'esperienza di qualcun'altro. :cool:
lnessuno
25-01-2006, 19:01
Certo è quello che avrei fatto se non fosse che per farlo bisognerebbe:
1. installare mono su windows; :muro:
2. installare mono su linux; :muro:
3. fare l'applicazione; :(
4. testarla su windows; :cry:
5. testarla su linux; :cry:
6.7.8.9 etc...
:sofico:
diventa una cosa assai lunga e dovrei installare un casino di cose che... se non funzionasse dovrei disinstallare e probabilmente mi "sporcherebbero" un casino il pc... non ho un pc per i test IO! E' per questo che abbiamo a perto un 3d: per poter usufruire dell'esperienza di qualcun'altro. :cool:
parla per te, zotico :D io ho aperto il thread per chiedere consigli :D
ho scoperto anche cheetah come motore di template html per python, sembra abbastanza semplice da utilizzare... questo è il sito:
http://www.cheetahtemplate.org/
che ne dite? :fagiano: qualcuno lo conosceva già?
cdimauro
26-01-2006, 09:06
l'idea delle pagine html al posto della gui mi piace veramente un sacco, non ci avevo pensato :eek:
Come client basta un browser, e il codice lo metti su una macchina qualunque. ;)
Per le applicazioni interne della mia azienda ho realizzato delle GUI consultabili da browser, che sono comodissime.
(non conoscevo nemmeno clearsilver a dire il vero :D)
E ti consiglio di imparare a usarlo, lasciando perdere Cheeta: è estremamente potente, flessibile e veloce.
Per quanto mi riguarda, grazie a ClearSilver suddivido i dati effettivi della pagina dalla loro presentazione.
In pratica, tramite python (e mod_python: una vera manna dal cielo il suo publisher, che gestisce in maniera completamente trasparente tutte le assurdità relative a variabili GET, POST, cookie, sessioni, et similia :D) il codice genera soltanto i dati che dovranno essere visualizzati (es: i dati di una tabella, i valori da caricare in un menù a tendina, ma anche il titolo della pagina, testo, immagini, e così via), e poi viene richiamato CS per "fonderli" col template e generare la pagina HTML (ma anche XML, XHTML, o altro: decidi tu cosa e come generare le informazioni).
I vantaggi di quest'approccio sono molteplici, come puoi intuire.
Ad esempio, da parte mia ti posso dire che le GUI web che realizzo fanno veramente pietà graficamente (DioBrando, non uccidermi :D), ma se domani un web designer volesse dargli un aspetto decoroso, gli basterebbe modificare il solo template per cambiare anche totalmente il loro look.
E il tutto senza che Apache venga riavviato (per ripulire la cache col vecchio codice), e col rischio (con l'approccio "tradizionale", ossia che il codice genera in toto la pagina, quindi sia coi dati sia con l'HTML) che se magari sbagli qualcosa non ti funziona più niente.
lnessuno
26-01-2006, 12:33
sembra bello, ci sono un paio di cose che non mi sono chiare però:
per utilizzare python + clearsilver ho bisogno di un web server? o funziona come "applicazione stand-alone"?
sai dove trovare un pò di documentazione e un reference manual decente di clearsilver + python? ho cercato un pochino ma non ho trovato nulla su mastro gugol... anche sul sito principale c'è pochissimo...
cdimauro
27-01-2006, 10:40
sembra bello, ci sono un paio di cose che non mi sono chiare però:
per utilizzare python + clearsilver ho bisogno di un web server? o funziona come "applicazione stand-alone"?
Funziona anche senza web server, ma è chiaro che se vuoi far visualizzare delle pagine html generate con Python + CS, devi avere un web server su che smista le chiamate al tuo modulo python.
CS supporta anche CGI, ma non so se è in grado di sostituirsi a un server web (non ho mai avuto questa necessità: mi trovo benissimo con mod_python).
sai dove trovare un pò di documentazione e un reference manual decente di clearsilver + python? ho cercato un pochino ma non ho trovato nulla su mastro gugol... anche sul sito principale c'è pochissimo...
Purtroppo c'è poco, anche perché CS è poco usato. A me è bastata la documentazione sul sito e gli esempi che ci sono per capire come funziona, facendo qualche esperimento.
Capisco che all'inizio può essere abbastanza duro, ma ti assicuro che una volta capito come funzione questo strumento e le sue potenzialità, lavori molto velocemente.
Io mi sono scritto una libreria di macro CS (e una di "appoggio" per Python) che mi permettono di tirare giù pagine html dinamiche molto velocemente.
Posso assicurarti che il tempo che ci perdi è veramente ben speso. Fidati. Se poi hai qualche problema o dubbio, non hai che da chiedere (compatibilmente col tempo a mia disposizione, chiaramente. ;)).
DioBrando
27-01-2006, 15:07
Come client basta un browser, e il codice lo metti su una macchina qualunque. ;)
Per le applicazioni interne della mia azienda ho realizzato delle GUI consultabili da browser, che sono comodissime.
E ti consiglio di imparare a usarlo, lasciando perdere Cheeta: è estremamente potente, flessibile e veloce.
Per quanto mi riguarda, grazie a ClearSilver suddivido i dati effettivi della pagina dalla loro presentazione.
In pratica, tramite python (e mod_python: una vera manna dal cielo il suo publisher, che gestisce in maniera completamente trasparente tutte le assurdità relative a variabili GET, POST, cookie, sessioni, et similia :D) il codice genera soltanto i dati che dovranno essere visualizzati (es: i dati di una tabella, i valori da caricare in un menù a tendina, ma anche il titolo della pagina, testo, immagini, e così via), e poi viene richiamato CS per "fonderli" col template e generare la pagina HTML (ma anche XML, XHTML, o altro: decidi tu cosa e come generare le informazioni).
I vantaggi di quest'approccio sono molteplici, come puoi intuire.
Ad esempio, da parte mia ti posso dire che le GUI web che realizzo fanno veramente pietà graficamente (DioBrando, non uccidermi :D), ma se domani un web designer volesse dargli un aspetto decoroso, gli basterebbe modificare il solo template per cambiare anche totalmente il loro look.
E il tutto senza che Apache venga riavviato (per ripulire la cache col vecchio codice), e col rischio (con l'approccio "tradizionale", ossia che il codice genera in toto la pagina, quindi sia coi dati sia con l'HTML) che se magari sbagli qualcosa non ti funziona più niente.
per questa volta ti risparmio :O
scherzo :asd:
La funzionalità viene prima di tutto...l'importante è che i principi basilari riguardo all'usabilità siano rispettati, perchè solo così il processo informativo può svolgersi correttamente e senza intoppi di qls tipo ( ad es. il non sapere dove si trova all'interno di un sito ( che in questo caso è l'interfaccia di un programma ma il discorso è il medesimo), oppure il dimenticare i passaggi per attivare "una certa cosa" perchè il percorso è troppo complicatoper essere ricordato) e via avanti...
E poi sn convinto che un'interfaccia semplice e lineare anche se esteticamente non appariscente, ma ordinata e che dà l'idea dell'ordine mentale del progettista che ha realizzato la stessa, sia di gran lunga preferibile soprattutto in un contesto come quello di lavoro; e in qlc modo si possa definire anche "bella".
Proprio per questo e tu Cesare lo sai avendo letto qlc mio post riguardo ad es alle tecnologie che vanno molto di moda ( Flash per es.), credo che nello sviluppo su web occorra un maggior lavoro a monte e di razionalizzazione e focalizzazione sugli obiettivi da raggiungere evitando di incappare in alcuni errori che poi rendono vano il lavoro in toto:
- evitare il sovraccarico di informazioni
- evitare di utilizzare tecniche grafiche per mascherare altre manchevolezze
- ecc...
Ciddì ha consigliato anche a me ClearSilver ( e appena avrò tempo prometto giuro spergiuro di metterci mano :D), per gli altri che si interessano come me di web/applicazioni web ecc. consiglio fortemente di informarsi e tenersi informati su AJAX perchè è un approccio decisamente interessante ( mi verrebbe da dire "nuovo" anche se le tecnologie utilizzate n lo sn, ma la loro combinazione sì...).
Scusate il mio essere prolisso e l'OT.
saluti a tutti :)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.