Sono un pò di anni che ormai programmo, ma non finisco mai di stupirmi su quello che scopro di nuovo!
Ho fatto diversi programmi per desktop, e cerco sempre di farli il più flessibili e aperti possibile, in modo da renderli usabili su più sistemi operativi (anche perchè io stesso uso sia Linux che Windows che Mac OS X).
Voglio fare una breve panoramica, riferendomi ovviamente alle mie esperienze (e sperando di non saprare troppe cavolate ).
Prima di tutto facciamo una breve lista:
- Java (o uno dei suoi derivati che necessitano di una JVM)
- Python
- Mono (C# e VB.NET)
- Qt / QML
Partiamo dal primo.
JAVA
Questo linguaggio nasce proprio con l'intento di creare programmi multi-piattaforma.
L'unica cosa richiesta è la presenza della JVM (Java Virtual Machine), e qualche aggiustamento grafico, soprattutto in ambito Mac.
I contro sono la maggior pesantezza del software (dovuto proprio alla JVM, anche se la situazione è sicuramente migliorata) e il peso degli anni che inizia a sentire il linguaggio, soprattutto verso il C# (considerando la somiglianza tra i due e sperando ovviamente in Java 8).
Rimane comunque un'ottima alternativa, se non la prima in certi casi, guardando però anche ai vari linguaggi nati su questo (vedi Scala ad esempio, con le dovute differenze).