Domanda

Ecco il punto: sto pianificando un'applicazione aziendale di medie dimensioni che deve assolutamente supportare Win2k. AFAIK, il supporto .NET ufficiale per Win2k è stato rimosso poco fa (IIRC, si è fermato alla versione 2.0).

Ora, ho già scritto (secoli fa) librerie in C ++ che mi permettono di ottenere il risultato finale (cioè finire questo progetto) con la stessa rapidità con cui scrivo questa applicazione con l'aiuto di .NET Framework - così il RAD di .NET "avvantaggia" è quasi negato.

Sono sicuro che molte persone qui hanno a che fare con applicazioni aziendali che devono supportare i vecchi sistemi operativi. Quindi, data la mia situazione di libreria, quali vantaggi ci sono nell'usare .NET su C ++ nativo e viceversa? Non sono sicuro di quale dei due sia giusto per il lavoro, perché sembra che potrei usare entrambi. Poi di nuovo, c'è quel problema di supporto del framework da affrontare ...

Aggiungerò volentieri ulteriori informazioni, se necessario.

È stato utile?

Soluzione

L'ultima versione di .NET eseguita su Windows 2000 è .NET 2.0 SP2 . Include le funzionalità richieste da System.Core.dll (che fa parte di .NET 3.5).

La risposta è SÌ, è possibile utilizzare .NET 3.5 SP1 in Windows 2000 se non si intende utilizzare le librerie .NET 3.0 (WCF, WF, WPF , CardSpace). Ma hai LINQ, LINQ to XML, LINQ to SQL.

L'unica cosa che devi fare è distribuire tre file .NET 3.5 SP1 di base:

  • System.Core.dll
  • System.Xml.Linq.dll (LINQ to XML)
  • System.Data.Linq.dll (LINQ to SQL)

Svantaggi di questo metodo (leggi attentamente):

  • Non sono sicuro che sia consentito o vietato dall'EULA (contratto di licenza con l'utente finale)
  • Questo scenario non è supportato da Microsoft.

Altri suggerimenti

Vorrei vedere se Mono ( mono-project ) funziona per te. cioè funziona su win2k - se lo fa ti permetterebbe di portare la tua app su MS .NET e versioni successive del sistema operativo nel caso in cui dovesse sorgere la necessità in seguito nel progetto. Qualsiasi .NET sarà più facile di C ++ IMHO :)

La differenza più grande è che sei (o è il tuo capo) più propenso a trovare gli sviluppatori per mantenere il tuo codice .NET dopo essere passato ad altre cose.

Il C ++ ha il vantaggio di darti stabilità nel lavoro, anche se potrebbe non essere quello che desideri. :)

Penso che, data la tua posizione, si riduce a ciò che ti senti più a tuo agio nello scrivere. Se C ++ è un linguaggio comodo per te, fallo. Ti aiuterà a inserire il codice e a semplificarne il completamento.

Mi occuperei anche di tenere a mente il futuro. Se il requisito Win2K diminuisce, potrebbe essere necessario riscriverlo se hai scritto in C ++. Potrebbe no. Tienilo a mente mentre decidi come procedere.

È possibile sviluppare con .NET ma impostare le opzioni del compilatore in modo che siano destinate al framework .NET 2.0. Se il sistema operativo viene aggiornato nel prossimo (o lontano) futuro, è possibile aggiornare il programma per indirizzare il framework 3.5. Vorrei seguire questa strada in quanto consente una più facile manutenzione futura da parte di altri.

Hai considerato Delphi? Puoi scaricare Turbo Delphi gratuitamente e puoi scrivere facilmente codice indirizzato a Windows 2000. Con Delphi, ottieni un eccellente RAD (probabilmente migliore di qualsiasi cosa troverai in C ++ ... a meno che tu non usi C ++ Builder).

Delphi crea codice nativo e non ha requisiti di runtime.

Ovviamente, il rovescio della medaglia è che se non conosci Delphi (che è Object-Pascal) devi familiarizzare con una nuova lingua. Tuttavia, se conosci C ++, ti sentirai a casa in Delphi in pochissimo tempo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top