Attualmente ho un'applicazione .NET che voglio convertire in una piattaforma multipla, poiché un numero crescente di utenti desidera una versione Mac. Dato che questo forum non sembra gradire domande che sono "quali lingue sono adatte a questi requisiti", focalizzerò questa domanda su Python come linguaggio di scelta. Python sarà adatto per i requisiti di seguito? Inconvenienti?
- App desktop - molti dei miei utenti non hanno una connessione Internet in cui usano il software, quindi una app web non lo farà
- Orientato agli oggetti
- Memorizza i dati in un database relazionale e nei file di configurazione
- Motore di report, preferibilmente utilizzando i modelli
- Connettività di rete: alcuni utenti installano più workstation condividendo un singolo file di dati
- Supporta le comunicazioni della porta seriale RS-232, leggi e scrivi
- Supporta l'acquisizione video
- Riproduci WAV e altri file audio
- Installazione di app semplice: troppi utenti non sono molto esperti di computer, quindi l'installazione è la migliore.
- Essere in grado di implementare una demo o un modello di licenza a tempo limitato
Ho preso in considerazione Java, ma sono titubante essendo in balia di Oracle e molte persone hanno avuto problemi di sicurezza riguardo alla JVM. Ho anche considerato il progetto Mono per mantenere l'app in .NET, ma la loro utility MoMA mostra migliaia di elementi non supportati. Preferisco davvero avere solo una base di codice da mantenere, invece di una per Windows e una per Mac. Python sembra essere quello a cui torno a tornare.
Per un po 'di esperienza su me stesso, la maggior parte della mia esperienza è stata con VB, VB.NET, C # e Java con qualche diletto in PHP / Javascript / HTML. Tutta la mia esperienza desktop è stata con Windows.