Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Framework .NET - Chiarimento sul supporto futuro
Forum - C# / VB.NET - Framework .NET - Chiarimento sul supporto futuro

Avatar
mg (Normal User)
Rookie


Messaggi: 39
Iscritto: 19/11/2009

Segnala al moderatore
Postato alle 16:38
Martedì, 27/04/2010
Premessa: ho iniziato anni fa a scrivere semplici programmini in vb5 che utilizzo tutti i giorni per lavoro. Con Vista non è più possibile installare visual bascic 5. A Tali programmini, che spesso richiedono aggiornamenti, accedo ora con una macchina virtuale su cui ho installato windows 2000.

Ora, pian pianino, sto passando a C#.

Leggo che il framework è una piattaforma per lo sviluppo di molte applicazioni scrivibili in diversi linguaggi (C# - Vb.net - ... ) con innumerevoli vantaggi. Mi sembra di aver capito che i programmi vengono tradotti in un linguaggio intermedio che permette fondamentalemnte la possibilità di utilizzare dll scritte in diversi linguaggi e rende i programmi indipendenti dal s.o. . La piattaforma però si appoggia al s.o. e quindi da esso dipende.

Mi chiedo, se in futuro non potessi installare il framework 3.5 (quello che sto utilizzando) su un nuovo sistema operativo, ritornerei al problema iniziale? Essite questa possibilità, è probabile?

Sicuramente ho espresso concetti non completi ma penso il nocciolo della situazione possa essere intuito.


PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 16:57
Martedì, 27/04/2010
In effetti il Framework .NET è un po' una contraddizione. Gli assemblies vengono compilati in linguaggio intermedio, come hai ben detto, con l'intenzione di essere indipendenti dal linguaggio usato (quindi molto riusabili come codice) e sono in effetti eseguiti da alcuni componenti del framework, rendendo i linguaggi .NET quasi interpretati. Questa astrazione è simile come concetto a una macchina virtuale o a un semplice interprete: tuttavia viene imposto come vincolo ciò che questi ultimi non hanno per definzione, ossia la necessità di un dato sistema operativo.
Il problema, quindi, esiste ed è molto ostico il più delle volte. Non puoi eseguire un programma .NET su una macchina sprovvista del framework .NET. Non è il massimo della portabilità, ma su Linux è disponibile Mono (ed il rispettivo IDE MonoDevelop), che emula il CLR del framework, permettendo l'esecuzione di suddetti programmi.

P.S.: se ti interessa la disponibilità di linguaggi .NET, ci sono: C#, VB.NET, J#, F#, Delphi.NET, Visual C++.NET, IronPhyton, IronRuby.

Ultima modifica effettuata da Il Totem il 27/04/2010 alle 16:59
PM Quote
Avatar
mg (Normal User)
Rookie


Messaggi: 39
Iscritto: 19/11/2009

Segnala al moderatore
Postato alle 17:24
Martedì, 27/04/2010
Testo quotato

Postato originariamente da Il Totem:
...
Il problema, quindi, esiste ed è molto ostico il più delle volte. Non puoi eseguire un programma .NET su una macchina sprovvista del framework .NET. Non è il massimo della portabilità, ma su Linux è disponibile Mono (ed il rispettivo IDE MonoDevelop), che emula il CLR del framework, permettendo l'esecuzione di suddetti programmi.
...



Quindi il concetto base è che il framework deve poter essere installato sul s.o. (che poi sia win / linux). Se non è possibile installarlo (magari fra 10 anni) --> studiare nuovo linguaggio di programmazione! (o usare macchina virtuale / dual boot...) :d

grazie della risposta


PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6379
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 18:53
Martedì, 27/04/2010
Beh ... non mi preoccuperei molto ...

In realtà è la stessa cosa per Java, se non hai installato il runtime, non esegui il programma ...

La Microsoft punta molto sul framework e non penso che il framework non sarà più supportato in futuro. Puoi tranquillamente continuare a sviluppare.

Naturalmente è possibile che alcune singole caratteristiche diventino obsolete, ma questa è un'altra storia.


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à.
PM Quote
Avatar
netarrow (Admin)
Guru^2


Messaggi: 2502
Iscritto: 12/05/2004

Segnala al moderatore
Postato alle 19:50
Martedì, 27/04/2010
Quello a cui vuole arrivare MS è basare l'intero sistema operativo sul framework.

Ora grosso modo l'ordine è

CRL
OS
Hardware

Con singularity la MS punta ad avere

OS
CRL
Hardware

Scrivendo kernel, driver e compagnia con codice gestito.

Quindi è evidente che in un futuro ambiente del genere le classiche user-application .NET non potranno che funzionare, o al limite essere aggiornate, agevolmente (o per lo meno più agevolmente delle applicazioni COM-Win32).

PM Quote