Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    Appilicativi VB.NET per Linux

    Ciao a tutti. Ho iniziato da poco a studiare VB.NET e, leggendo alcuni articoli, ho appreso che con questo strumento di sviluppo è possibile creare applicativi che, in teoria, possono (o potranno) funzionare su qualsiasi sistema operativo.

    Ho letto, inoltre, che attualmente esiste già la possibilità di far girare gli applicativi creati con VB.NET sotto Linux grazie all'esistenza di un certo Progetto Mono che avrebbe reso disponibile il framework .NET in questo sistema operativo.

    La mia domanda è la seguente: quali applicazioni .NET possono effettivamente girare sotto Linux? Soltanto le applicazioni Web create con ASP.NET oppure anche gli eseguibili in byte code basati sui Windows Forms?

    Premetto di non conoscere affatto Linux, tanto da non sapere neanche se gli eseguibili fatti per tale OS abbiano o meno estensione EXE. Tuttavia, sono davvero attratto dall'idea di poter creare programmi per più sistemi operativi.

    Grazie in anticipo per la risposta.

  2. #2
    da quel che si evince dalla documentazione di mono si possono creare eseguibili anche per linux anche se dubito fortemente nella portabilità infatti un applicativo scritto su windows farà fatica a girare su linux e viceversa mi sembra che il progetto deve essere "compilato" nell'os di destinazione

    per maggiori info www.go-mono.com
    Vascello fantasma dei mentecatti nonchè baronetto della scara corona alcolica, piccolo spuccello di pezza dislessico e ubriaco- Colui che ha modificato l'orribile scritta - Gran Evacuatore Mentecatto - Tristo Mietitore Mentecatto chi usa uTonter danneggia anche te

  3. #3
    Credo invece che la possibilità di eseguire software .NET su piattaforme diverse da Windows sia possibile, anche senza ricompilare il progetto.

    "Teoricamente" .NET è multipiattaforma, se consideriamo (com'è evidente che sia) le varie versioni di Windows delle piattaforme differenti. Con i linguaggi di sviluppo tradizionali per Win32, il problema principale del programmatore non è solamente ideare un buon programma, ma anche essere sicuro che il suo software girerà senza intoppi in tutte le incarnazioni di Windows. La cosa è tutt'altro che semplice, in particolar modo in quei progetti leggermente più complicati del classico esempio "Hello World!" che tutti noi per una volta abbiamo letto nei libri e ricopiato nell'IDE. Problemi di versioning delle DLL (DLL hell), difficoltà di registrazione degli oggetti COM, insieme delle API differenti a seconda della versione di Win, il registro di sistema sempre più appesantito, correzioni a vecchi bug che portano più disagi che benefici: questo, e non solo, il panorama tecnico che si prospetta a chi tenta di scrivere applicazioni professionali (compilate) per Windows con uno qualsiasi dei linguaggi disponibili per Win32.

    Microsoft, riconosciuti questi difetti, spinta anche (forse) dal dilagare di Java, ha deciso di correre ai ripari progettando un nuovo insieme di API posizionato ad un livello più elevato rispetto a quelle native di Windows, in modo da spianare le differenze tra i vari Windows e dare al programmatore un ambiente di sviluppo coerente e completamente ad oggetti, fortemente convergente alla rete e ad internet.

    Similmente a Java, .NET compila i sorgenti in uno speciale codice binario denominato MSIL (Microsoft Intermediate Language), che viene poi interpretato e compilato nel codice macchina dal compilatore JIT (Just In Time) ottimizzandolo per le caratteristiche hardware del pc dove viene eseguito.

    Come Java, quindi, una applicazione .NET potrebbe girare su qualunque computer e su qualunque sistema operativo, basta che esista l'apposito framework. Qui si nota come il lavoro di MS si sia fermato (ovviamente) a metà: esiste un framework e un JIT per tutte le versioni di Windows (dal 98 e NT4 in su), ma non si è mai parlato di versioni per altri sistemi operativi (Linux, Mac, Unix etc) e nemmeno si è mai prospettata una simile eventualità.

    Il progetto MONO (di Ximian, acquisita recentemente da Novell) tenta di portare .NET anche su Unix e Linux, seguendo la documentazione open che MS ha rilasciato per ottenere le standardizzazione di C# e CLI da parte degli enti ECMA e ISO.

    Come ci si evince leggendo le FAQ del sito di Mono ("Q: Can Mono run applications developed with the Microsoft.NET framework? A: Yes, Mono can run applications developed with the Microsoft .NET Framework on Unix. There are a few caveats to keep in mind: Mono has not been completed yet, so a few API calls might be missing; And in some cases the Mono behavior *might* be incorrect."), un compilato MSIL creato con un compilatore MS può girare anche in Unix.

    Su questa affermazione sono abbastanza convinto, purchè l'applicazione non utilizzi niente di diverso dalle API standard del framework. Se il programmatore, per migliorare il suo progetto, utilizza chiamate dirette alle API di Windows, il giocattolo si rompe e la compatibilità va a farsi benedire.

    Ritornando alla domanda di esposito, sì, è possibile far girare le applicazioni di .NET in Mono, comprese tutte le tecnologie di contorno (ASP.NET, ADO.NET, Windows.Forms etc.), sempre tenendo presente che lo sviluppo di questo "clone" non è ancora terminato (e forse mai lo sarà, visto che MS uscirà prossimamente con .NET 2.0 ...).
    Chi non cerca trova.

  4. #4
    Grazie per le risposte.

    C'è qualcuno che usa Linux e che sta sperimentando MONO?

  5. #5

    VB.NET e Progetto Mono

    Salve, ho letto alcuni articoli sul Progetto Mono e la cosa mi interessa molto per la prospettiva di poter sviluppare applicativi in VB.NET anche per Linux. Come è noto, la gestione delle Windows Forms su Linux viene implementata grazie alla libreria Wine (modificata), che tuttavia garantisce una compatibilità solo parziale con gli eseguibili generati con VB.NET.

    Nella fattispecie, mi interesserebbe sapere qualcosa in più riguardo a quegli eseguibili .NET che contengono chiamate alla libreria VisualBasic.dll.

    Dal momento che faccio largo uso di archivi di tipo Random a lunghezza fissa che fanno riferimento a tale libreria, vorrei sapere, da qualcuno che ha già installato Mono sulla propria macchina, se una tabella creata nel seguente modo:

    codice:
    Imports System
    Imports System.IO
    Imports Microsoft.VisualBasic
    
    Public Class Form1
        Inherits System.Windows.Forms.Form
    
        Structure PERSONE
             Dim CogVar As String
             Dim NomVar As String
             Dim AlbVar As String
        End Structure
    generi o meno problemi di compatibilità.

    Grazie in anticipo per la risposta.

  6. #6
    non ne sono sicuro ma potrebbero generare incompatibilità in quanto

    Imports Microsoft.VisualBasic


    viene usato sopratutto per retrocompatibilità
    Vascello fantasma dei mentecatti nonchè baronetto della scara corona alcolica, piccolo spuccello di pezza dislessico e ubriaco- Colui che ha modificato l'orribile scritta - Gran Evacuatore Mentecatto - Tristo Mietitore Mentecatto chi usa uTonter danneggia anche te

  7. #7
    Nella pagina delle FAQ di Mono è scritto esplicitamente che i loro progettisti hanno provveduto a garantire una certa compatibilità con la libreria in questione, sebbene questa abbia un legame forte con Windows.

    In particolare, affermano quanto segue:



    Visual Basic .NET applications are portable, but Mono's Microsoft.VisualBasic.dll implementation is incomplete. It is recommended to either avoid using this assembly in your own code, only use the portions that Mono has implemented, or to help implement the missing features.



    Per questo mi piacerebbe sapere da qualcuno che ha installato Mono sul proprio computer se la compatibilità con questo elemento della libreria (la gestione degli archivi basati su stringhe a lunghezza fissa) è garantita oppure no.

    Grazie

  8. #8
    Utente di HTML.it L'avatar di smt
    Registrato dal
    Jul 2002
    Messaggi
    167
    quando ho provato io mono(3 mesi fa circa) mi pareva, ma potrei sbagliare, che esistesse solo il compilatore c#.
    mi pare inoltre che mono esista anche per win, così che puoi provare direttamente sulla stessa macchina win se l'eseguibile è pienamente compatibile.
    Reality is that which, when you stop believing in it, doesn't go away

  9. #9
    Disponi per caso del link da cui si può scaricare Mono per Windows?

    Sai per caso se genera conflitti con il Framework .NET della Microsoft?

    Originariamente inviato da smt
    quando ho provato io mono(3 mesi fa circa) mi pareva, ma potrei sbagliare, che esistesse solo il compilatore c#.
    mi pare inoltre che mono esista anche per win, così che puoi provare direttamente sulla stessa macchina win se l'eseguibile è pienamente compatibile.

  10. #10
    Utente di HTML.it L'avatar di smt
    Registrato dal
    Jul 2002
    Messaggi
    167
    provare per credere!
    http://www.go-mono.org/archive/mono-0.25-win32-1.exe
    c'è pure il compilatore vb, di cui non avevo ricordi.

    saludamientos.
    Reality is that which, when you stop believing in it, doesn't go away

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.