Java su Linux è .NET come Windows? [chiuso]


14

Java sta diventando lo standard di fatto dallo sviluppo di applicazioni Linux allo stesso modo in cui .NET è lo standard per lo sviluppo di applicazioni Windows? Se no, perché no?


Linux sfida gli standard in molti modi, perché è una comunità così diversificata. Personalmente sono un grande sostenitore del mono con c #, soprattutto perché mi sento più a mio agio con l'ide monosviluppo (più vicino allo studio visivo) piuttosto che con l'eclissi, che sono sempre stato particolarmente goffo.
Morgan Herlocker,

17
Da dove viene questo? Non ho quasi mai visto nessuna app Java in Linux.
Tcrosley,

"sviluppo di applicazioni" è un termine molto ampio, puoi essere più specifico con la tua domanda?
MattDavey,

Risposte:


31

In breve: no

Dipende davvero dal tipo di applicazione che stai scrivendo. Per molti la risposta è ancora il vecchio C / C ++ regolare (se lo fa, diciamo sviluppo Qt o GTK + GUI). Molti che fanno lo sviluppo di GTK + possono anche usare Python + PyGTK. Se stai sviluppando servizi Web o Web, vedrai un sacco di Ruby, Python, PHP e Java.


6
Aggiungo solo che molte app Gnome sono state create in C # usando Mono. Pensa a F-Spot e Tomboy Notes, per i due che vengono in mente per primi.
Tarka,

1
@Slokun: And Banshsee ( banshee.fm )
Pete,

5
Vedo un sacco di pitone nella distribuzione basata su Ubuntu
TheLQ,

1
Evolution mail non è scritta anche con Mono?
Nodey The Node Guy

@StevenElliottJr No, non lo è. Miguel ha deciso di lavorare su Mono dopo le sue esperienze lavorando su Evolution. La sua speranza era di facilitare la scrittura di applicazioni come Evolution. Evo è ancora scritto principalmente in C (con plugin possibili in diverse lingue).
Pete,

10

Non vedo Linux avere una piattaforma di sviluppo 'standard' perché una delle principali differenze con l'ecosistema Microsoft è che non è una piattaforma a fornitore singolo.

.NET è la piattaforma standard su Windows solo perché è realizzata dalla stessa azienda che crea il sistema operativo.


1
Non direi che questo è l' unico motivo - ha più a che fare con il fatto che .NET 2.0 è praticamente garantito per l'installazione su qualsiasi macchina Windows - se una piattaforma di terze parti altrettanto potente avesse la stessa penetrazione sul mercato sarebbe un contendente.
MattDavey,

3

Mentre la risposta può sembrare sì per l'utente occasionale, in realtà non è un buon confronto. Esistono molti linguaggi di computer diversi che possono essere eseguiti su Linux e Windows. In effetti, i diversi linguaggi .NET (come C #) possono essere eseguiti su Linux usando Mono. Inoltre, ci sono MOLTI programmi scritti in Java che funzionano bene su Windows.

Un confronto migliore potrebbe essere Java è con Java Run Time Engine come C # è con .Net Framework.


2

Non proprio, anche se forse dovrebbe (dal punto di vista del successo del desktop Linux).

Sebbene sia possibile utilizzare Java su Linux come piattaforma in modo simile a .Net su Windows, esistono due differenze sostanziali:

  • .Net è fondamentalmente legato alla piattaforma Windows, ma Java è portatile praticamente su tutte le piattaforme. Quindi Java non è davvero "nativo" per Linux.
  • La piattaforma Linux è molto più eterogenea, con comunità sostanziali (alcuni potrebbero dire frammentati) attorno a molti linguaggi di programmazione e toolkit diversi. C'è la gente di Python, la gente di C ++, la gente di C, la gente di Perl ecc.

Detto questo, penso che l'incapacità della comunità Linux di abbracciare correttamente Java sul desktop sia il motivo principale per cui Linux non ha ancora avuto successo nello spazio desktop. Java ed il suo enorme ecosistema di librerie / strumenti è l'unica piattaforma open source in grado di competere realisticamente e vincere con .Net per lo sviluppo di applicazioni per scopi generici. E se più persone sviluppassero applicazioni Java (che possono funzionare in modo identico su Windows e Linux), il monopolio del desktop Microsoft sarebbe sostanzialmente indebolito.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.