Post by Gerolamo"Paolo Ferraresi" ha scritto
Ciao Gerolamo.
Post by GerolamoIo ho programmato gli ultimi due anni principalmente su CPU sotto
i 30 Mhz, anche a 16 bit.
Embedded!?
Post by GerolamoQuesto non significa però che, se devo fare un gestionale su PC,
penso che il modo migliore sia di farlo in assembler.
Sono assolutamente d'accordo con te. Mai detto il contrario.
Post by GerolamoPost by Paolo FerraresiLa morale della favola è che il fatto d'avere computer con svariati GIPS
(per me) non è un buon motivo per scrivere codice poco efficiente (che
magari è il più bel software del mondo, questo è un'altro discorso...).
Io dico solo che l'efficienza è l'ultimo dei problemi per una grossa
percentuale di software e io, fedele al noto aforisma di Knuth, penso
che prima val la pena di occuparsi di altre cose, come una buona
progettazione (e un buon framework ti permette una buona progettazione,
un brutto framework ti mette i bastoni fra le ruote), la rapidità
di sviluppo, la facilità di debug.
Anche quì, assolutamente d'accordo, però è altresì vero che sebbene è
anacronistico scrivere un programma su PC in assembly nel 99% per cento dei
casi, non solo i programmi fatti con .net sono progettati bene!
Per progettare bene un software c'è bisogno di un team di persone
intelligenti (anche solo una), prima ancora di un buon linguaggio di
programmazione.
Ci sono ottimi programmi progettati bene in tutti i linguaggi, sebbene
linguaggi come il C++ aiutano a scrivere programmi migliori.
Tuttavia nel C++ standard c'è già tutto quello che serve a scrivere ottimi
programmi.
Quindi, se devi usare un framework, puoi comunque sceglierne uno leggero, se
invece hai buoni motivi per sceglierne altri, ovviamente non ci sono
problemi.
Io ne preferisco uno leggero per motivi culturali come ti ho spiagato (o
chiamale pure convinzioni mie, ovviamente opinabili e discutibili).
L'alternativa (dal mio punto di vista) non è fare un ottimo programma con
.net o viceversa fare una schifezza con wxWindows o perché no solo con il
C++ standard.
Io faccio quello che devo fare e se lo posso fare più "light" sto meglio, ma
come avevo detto fin da subito, è una questione puramente personale: niente
contro .net !
Spero di averti chiarito la mia personale opinione.
Post by GerolamoAnche per me il C++ è un ottimo linguaggio (pur se troppo complesso)
e probabilmente quello che conosco meglio.
Ma la mia preferenza è data dall'espressività, dalla libertà di scelta
del paradigma di programmazione, dalla quantità di implementazioni,
e da altri fattori di gusto che comunque vengono prima della pura
efficienza (che per altro ina alcuni ambiti è fondamentale assieme
al più stretto determinismo temporale, ma questi sono altri discorsi...)
Non è che per me sia fondamentale l'efficienza a tutti i costi e programmi
in C++ per questo.
E condivido il fatto che l'efficienza venga per ultima, però, in un prodotto
completo e finito a mio modo di vedere, forse non l'efficienza ma almeno
l'assenza di sprechi non dovrebbe essere un optional.
Ci sono programmi in C++ che fanno schifo e ottimi programmi in basic, non è
questo il problema.
Per me il C++ è solo una questione di gusto personale.
Riguardo al framework invece, potendo (e ribadisco potendo, non è detto che
sia sempre possibile) "vestire" i miei programmi, per continuare la
metafora, con una T-shirt invece che con un bel cappotto, mi piace farlo.
Fermo restando quindi che il C++ è sufficiente (come altre soluzioni) a
scrivere programmi efficaci ed efficienti (quando vi è necessità), se sei
d'accordo con me (mi fa piacere anche se non sei d'accordo con me), potremmo
dire che la scelta del framework è una questione legata ad altri fattori.
Potendo però scegliere fra diverse soluzioni (framework) che non inficiano
la bontà del tuo progetto in C++, si sa che alcune, saranno più "comode"
(ricche di classi) o più "essenziali" e minimaliste, altre di maggior
successo, o maggiormente sostenute da questa o da quell'altra comunità,
comunque a questo punto c'entra anche se è possibile (purtroppo non è sempre
così) il gusto personale ed aspetti culturali legati soprattutto
all'esperienza che ognuno di noi si è fatto.
Altri lo hanno detto, in particolare Stefano ha scritto : "Far girare un
programma .Net su una macchina non adeguatamente aggiornata è un suicidio",
io non posso dire che non è così!
Per la mia cultura informatica (che deriva dall'esperienza che mi sono
fatto) un programma deve poter andare anche si di un pentium da 100Mhz e se
è possibile anche su un 386, se è possibile.
Non mi piace dire che è impossibile, solo perché il mio software l'ho fatto
con .net.
Comunque voglio che sia chiaro che sono sicuramente d'accordo con te sul
fatto che non si parla di efficienza per un programma che funziona male o
non fa quello che deve fare, e che l'ottimizzazione prematura è la causa di
tanti problemi.
Post by GerolamoComunque grazie per lo scambio di opinioni
Ma figurati, grazie a te e scusa se mi dilungo sempre.
Io ho sempre grande rispetto per le idee e per il lavoro degli altri, quindi
tieni conto che io dico sempre la mia e so che molte volte mi sbaglio e che
sono fissato su alcune cose.
Daltronte ho premesso che parlavo soltanto di gusti personale e che non ci
sono motivazioni tecniche per cui escludo di programmare con .net.
Se per un mio progetto ritenessi che è la scelta migliore non avrei nessun
problema a usarlo. E non sconsiglio nessuno a non usarlo, anzi, spero che
aiuti tutti a scrivere programmi migliori (anche se penso che chi non è in
grado di scrivere un buon programma in un linguaggio standard, non trarrà
grandi vantaggi dall'uso di un framework, per questo ritengo fondamentale
Ciao e buon lavoro!
Grazie anche a te per questi scambi di opinione, per me sono importanti e mi
fa piacere.
ri-ciao.