C# è molto simile a Java, tutto il .NET è la risposta a Java di microsoft, dopo il periodo dei linguaggi C-like, oggi siamo nel periodo dei linguaggi java-like (che per eredità sono cmq C-like ovviamente).
La differenza è che Java punta al "un linguaggio più piattaforme" il .NET al "più linguaggi una piattaforma", per quanto possa essere teoricamente portabile vista la sua implementazione simile a java non è che giri gran che bene sempre su tutto, per carità anche Java a qualche problema nel essere portabile al 100% se non sviluppi bene il software, ma ufficialmete non ci sono paragoni, java è supportato su circa 3.8 miliardi di dispositivi .
Io direi che .NET serve per programmare facile come Java ma integrandosi al 100% su windows, spesso quando uno sviluppa in Java dice "come riavvio il pc in java? come faccio a fare il lama e fare gli scherzi? come apro il lettore cd?"
bene, .NET astrae tutte la api di widnows, ora con la versione 6 di java c'è un pò + di concorrenza da parte di java ma cmq .NET resta ad hoc per widnows anche come prestazioni.
Riassumento: Java vera portabilità
C#: produttività su windows integrandosi alla grande
se hai avuto esperienza con la api win32 magari con C++ avrai notato che sono molto scazzose, e quindi spesso la gente preferiva cercare di fare qualcosa in Java, cercare qualche libreria pronta, quindi rinunciare all portabilità èer sviuppare facile in win, con il .NET ora è tutto molto + facile.
Per quanto riguarda l'ambiente di sviluppo hai 2 scelte:
1) visual studio (anche l'express che è gratis ma solo per scopi didattici)
2) #develop che è open sources
|