Oppure

Loading
15/09/11 10:28
crybot
ora, forse il titolo avra` suscitato qualche dubbio in colui che ha abbastanza esperienza per rispondermi, ma la mia domanda e` questa: come posso, se posso, interfacciare due linguaggi di programmazione (in questo caso vb.net per la gui e c++ per il motore) in un solo e completo programma? spero di non chiedere troppo, ma a scuola (eh gia`, e` ricominciata...) io e un mio amico avevamo pensato di collaborare per scrivere qualcosa di utile in compagnia e soprattutto divertendoci facendo quello che "sappiamo" fare. Abbiamo appunto pensato di collegare questi nostri due linguaggi, c++ da parte mia e vb.net da parte sua, ma non sappiamo da dove cominciare, qualora fosse possibile cio` che chiedo. l'idea era di realizzare un risolutore di equazioni di primo o di secondo grado, ma non sapendo programmare gui in c++ la cerchia di interessati per un programma del genere si restringerebbe notevolmente, ecco perche` ci era venuto in mente di creare la gui in vb.net e il motore che esegue i calcoli in c++. spero di essere stato chiaro, e se non fosse possibile fare cio` che chiedo, vi prego di rispondere con consapevolezza che a scrivere e` un quindicenne non esageratamente bravo a programmare e assolutamente ragionevole nell'accettare il fatto che non possa essere messo in atto cio` di cui ho parlato.

grazie a tutti :)

Ultima modifica effettuata da crybot 15/09/11 10:30
aaa
15/09/11 10:59
HeDo
in realtà questa cosa non è affatto strana, anzi, dovrebbe essere la norma.
bisogna sfruttare le caratteristiche migliori di entrambi i linguaggi, ovvero VB.NET veloce nel realizzare GUI e C++ veloce nell'esecuzione.

puoi seguire una strada molto semplice per realizzare quello che chiedi, pinvoke passando da dll che esportano funzioni:

msdn.microsoft.com/en-us/library/…

oppure tramite un wrapper C++:

blogs.microsoft.co.il/blogs/sasha/archive/2008/02/16/…
aaa
15/09/11 11:46
nessuno
Perché complicarsi la vita dato che l'uso di più linguaggi prevede una certa esperienza?

Perché non scrivete il codice per la risoluzione in VB.NET?
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
15/09/11 12:06
crybot
Postato originariamente da nessuno:

Perché complicarsi la vita dato che l'uso di più linguaggi prevede una certa esperienza?

Perché non scrivete il codice per la risoluzione in VB.NET?


semplicemente perche` non conoscendo il vb.NET, l'unico supporto che potrei dare e` di produrro dello pseudo codice inutile...
aaa
15/09/11 12:10
nessuno
Qualcosa non la conosci ...

o il VB.Net (per scrivere poca roba poi, parliamo di qualche formuletta)

o il modo per interfacciare i due linguaggi (molto più complesso da apprendere)

... ti conviene acquisire le poche informazioni che ti servono per scrivere il programma in VB.Net.

In ogni caso, se proprio vuoi fare in quel modo, la cosa più conveniente da fare è scrivere una DLL in C (lo sai fare?) ed esportare le funzioni che ti servono per invocarle (come ti ha suggerito HeDo) da VB.Net (vedi link della documentazione).
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
15/09/11 12:29
crybot
nonostante tutto, penso di fare un tentativo, provero` con il mio amico ad applicare la soluzione che tu ed hedo mi avete proposto, probabilmente non riusciremo a portare a termine il progetto nella maniera che avevamo stabilito, ma senz'altro riusciremo a trovare una maniera piu` rozza per farlo, almeno spero, in ogni caso ci avremo provato...
aaa
15/09/11 16:49
TheKaneB
non ho nulla da aggiungere, ma scrivo solo perchè mi piace come hai posto la domanda ;-D

Leggere sempre le solite richieste dei ciaffi, scritte in modo ciaffo, mi stava deprimendo :D

Consiglio... se vuoi ridurre di moltissimo la curva di apprendimento, invece di studiare il VB.Net puoi studiare il C#, che è molto semplice per chi viene dal C++ o dal Java (soprattutto quest'ultimo, che ha tantissime analogie con il C#).

Un progetto .Net infatti può contenere classi programmate in linguaggi misti (purchè appartenenti tutti alla famiglia .Net) senza stare ad impazzire dietro lo sviluppo della DLL, che è invece richiesta per l'interfacciamento con il C++ (che compila codice nativo, a differenza dei linguaggi .Net).

Inoltre le DLL sono anche rognose da debuggare.
Ultima modifica effettuata da TheKaneB 15/09/11 16:50
aaa
15/09/11 17:14
crybot
Postato originariamente da TheKaneB:

non ho nulla da aggiungere, ma scrivo solo perchè mi piace come hai posto la domanda ;-D

Leggere sempre le solite richieste dei ciaffi, scritte in modo ciaffo, mi stava deprimendo :D

Consiglio... se vuoi ridurre di moltissimo la curva di apprendimento, invece di studiare il VB.Net puoi studiare il C#, che è molto semplice per chi viene dal C++ o dal Java (soprattutto quest'ultimo, che ha tantissime analogie con il C#).

Un progetto .Net infatti può contenere classi programmate in linguaggi misti (purchè appartenenti tutti alla famiglia .Net) senza stare ad impazzire dietro lo sviluppo della DLL, che è invece richiesta per l'interfacciamento con il C++ (che compila codice nativo, a differenza dei linguaggi .Net).

Inoltre le DLL sono anche rognose da debuggare.


e` sempre bello ricevere risposte del genere, da un lato perche` vedo che quei 5 minuti(perche` di 5 minuti si tratta) a correggere l'ortografia e ad impostare la domanda correttamente sono valsi, almeno secondo me, a nascondere l'ignoranza, spesso motivo di vergogna per i, passatemi il termine, "newbies", che si celava sotto cio` che ho chiesto, dall'altro lato perche` avevo gia` pensato di abbandonare il C++ per passare al C#, che da quanto vedo e` molto piu` benevolente verso i nuovi, o quasi, arrivati, permettendo una programmazione pulita, di facile apprendimento e spesso senza intoppi. Il fatto e` che ho speso tempo, ma soprattutto materiale, nell'apprendere quel che so di questo vasto linguaggio, anche se forse un po` troppo didattico e noioso per i miei gusti, e cio` vanificherebbe praticamente un anno e mezzo di studio (discontinuo per ragioni varie). potrei accettare l'idea di imparare quel minimo di sintassi che serve per portare a termine il progetto da noi iniziato e considerare poi l'eventualita` di cambiare linguaggio. ringrazio tutti per le risposte :)
Ultima modifica effettuata da crybot 15/09/11 17:18
aaa