Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Postato originariamente da Mikelius: Se da questa discussione esce fuori che i moduli sono un'alternativa migliore e più funzionale allo scopo, sarò il primo a migrarci.
I moduli sono una cosa antica, sono dei semplici contenitori di Dichiarazioni, Sub e Function, visibili a tutti i form, le classi sono più avanzate, questo è sicuro.
E' che fino a questo momento, non sono mai riuscito ad apprezzarle, mi sembra, e sbaglio sicuramente, che sono state implementate più per l'estetica che per la funzionalità.
Mi sto documentando, ma trovo sempre: fai così e così, senza il perché.
Un programmatore è una persona logica, non gli puoi dire fai così, perché si fa così e basta.
Ciao Carlo, tutti i linguaggi moderni adottano la OOP di cui le classi sono gli elementi base. La OOP dovrebbe dare dei vantaggi "ereditarietà polimorfismo e incapsulamento" programmare ad oggetti significa scrivere più codice e in piccoli progetti sembra non dare nessun vantaggio, molti autodidatti, compreso io, non sanno esattamente in cosa consistono questi vantaggi , il fatto che la programmazione procedurale è stata "abbandonata" esiste solo perché esistono linguaggi non recenti che ne fanno uso "esempio il C", ma tutti i nuovi linguaggi l'adottano.
Il problema non si pone a chi si accinge oggi ad imparare a programmare, perché il linguaggio che sceglierà sarà quasi sicuramente ad oggetti, siamo solo noi che siamo partiti con linguaggi procedurali e ci ritroviamo con qualcosa di diverso, e solo a noi ci vengono dei dubbi, NON DOVREMMO AVERLI.
Ci siamo adattati a passare a computer con interfaccia testuale a computer con GUI, a programmare in basic e poi passare a VisualBasic, a usare il telefono a gettone e poi lo smartphone.
Il fatto che se vogliamo usare strumenti moderni ci dobbiamo adattare senza fare confronti, non esiste il confronto perché non esiste alternativa, vuoi usare uno strumento contemporaneo ? è solo OOP. vuoi usare un linguaggio in disuso, procedurale.
Non è questione di migliore o peggiore perché se poi riesci ad ottenere il risultato voluto l'obbiettivo lo raggiungi, è proprio essere contemporanei e confrontarsi con le persone che vivono questi tempi, o rimanere attaccati a un epoca passata.
Faccio un esempio, la cassetta VHS faceva il suo lavoro ma oggi si usano i DVD, non è proprio esatto perché per essere moderni oggi si usano i Bluray, possiamo continuare a usare i vhs "ma rimaniamo un po isolati nel nostro mondo", o con poco sforzo ci adattiamo alle nuove tecnologie.
Mikelius forse un idea sarebbe creare una classe convertitore con metodi statici, da poter essere inserita e usata in più progetti.
Un po come la classe Math del .Net.
Mikelius forse un idea sarebbe creare una classe convertitore con metodi statici, da poter essere inserita e usata in più progetti.
Un po come la classe Math del .Net.
Non mi costa nulla inserirne uno, ma conviene?
dovrebbe essere del tipo (più complicata):
In più (ancora non è completa, per questo ho rilasciato solo beta) con un oggetto istanziato posso avere legato al valore della temperatura, la scala e il simbolo (tutte proprietà dell'oggetto creato).
Con un metodo statico non avrei solo il valore convertito?
Ho una versione VB .NET che converte anche temperature, distanze, capacità, pressione, pesi e potenza.
non mi piace come gestisco le texts.
Il programma è come lo ha pensato Michelius, si sceglie la scala di input, si immette il valore e i risultati appaiono su 8 TextBox.
Ho usato un TabControl con 6 TabPages, per poter scegliere l'unità di misura che si vuole convertire.
se si esclude il caso temperature, i calcoli per convertire le altre unità di misura sono sempre gli stessi, cambia solo il moltiplicatore.
Ma ho dovuto mettere lo stesso 6 routine distinte perchè non riesco a raggiungere le textbox che sono su sei panel con nomi distinti:
il codice è inutilmente ripetuto solo perché ho i panel con nomi diversi:
For Each TextBox In PannelloDistanze.Controls
For Each TextBox In PannelloCapacita.Controls
For Each TextBox In PannelloPressione.Controls
For Each TextBox In PannelloPesi.Controls
For Each TextBox In PannelloPotenza.Controls
Se avessi un indice invece di un nome...
Non ho controllato l'esattezza di tutte le conversioni, ma a campione sembra ok.
Ciao Carlo, tutti i linguaggi moderni adottano la OOP di cui le classi sono gli elementi base. La OOP dovrebbe dare dei vantaggi "ereditarietà polimorfismo e incapsulamento" programmare ad oggetti significa scrivere più codice e in piccoli progetti sembra non dare nessun vantaggio, molti autodidatti, compreso io, non sanno esattamente in cosa consistono questi vantaggi , il fatto che la programmazione procedurale è stata "abbandonata" esiste solo perché esistono linguaggi non recenti che ne fanno uso "esempio il C", ma tutti i nuovi linguaggi l'adottano.
Il problema non si pone a chi si accinge oggi ad imparare a programmare, perché il linguaggio che sceglierà sarà quasi sicuramente ad oggetti, siamo solo noi che siamo partiti con linguaggi procedurali e ci ritroviamo con qualcosa di diverso, e solo a noi ci vengono dei dubbi, NON DOVREMMO AVERLI.
Ci siamo adattati a passare a computer con interfaccia testuale a computer con GUI, a programmare in basic e poi passare a VisualBasic, a usare il telefono a gettone e poi lo smartphone.
Il fatto che se vogliamo usare strumenti moderni ci dobbiamo adattare senza fare confronti, non esiste il confronto perché non esiste alternativa, vuoi usare uno strumento contemporaneo ? è solo OOP. vuoi usare un linguaggio in disuso, procedurale.
Non è questione di migliore o peggiore perché se poi riesci ad ottenere il risultato voluto l'obbiettivo lo raggiungi, è proprio essere contemporanei e confrontarsi con le persone che vivono questi tempi, o rimanere attaccati a un epoca passata.
Faccio un esempio, la cassetta VHS faceva il suo lavoro ma oggi si usano i DVD, non è proprio esatto perché per essere moderni oggi si usano i Bluray, possiamo continuare a usare i vhs "ma rimaniamo un po isolati nel nostro mondo", o con poco sforzo ci adattiamo alle nuove tecnologie.
Grazie Torn24, me lo ripeto continuamente, e se deciderò di scrivere Visual Studio 4000, istanzierò, incapsulerò e classerò tutto, perché con la programmazione procedurale mi infilerei in un vicolo cieco.
Non voglio tornare indietro, ma penso che per un progetto di 2 pagine dove mi bastano 4 variabili globali per gestire tutto, non devo per forza creare una classe per proteggermi dal lupo che inconsapevolmente mi cambia un valore a mia insaputa.
A scopo didattico, sto programmando utilizzando anche OOP, per essere pronto alla prima occasione di utilizzare questo metodo, perché in un progetto corposo e soprattutto dove interagiscono più programmatori, ti ripara dai guai.
Postato originariamente da Carlo: Non voglio tornare indietro, ma penso che per un progetto di 2 pagine dove mi bastano 4 variabili globali per gestire tutto, non devo per forza creare una classe per proteggermi dal lupo che inconsapevolmente mi cambia un valore a mia insaputa.
Mi spiego meglio perchè forse non si era capito.
Io mi sto affacciando alla programmazione in C#, ho creato questo progetto per mettere in pratica le conoscenza che sto acquisendo. Sicuramente molte delle cose che ho fatto sono superflue, ma ,sopratutto per me, è meglio capire bene nella pratica l'impostazione da dare con un programma semplice e che richiede relativamente poche conoscenze piuttosto che iniziare ad applicarle in programmi più complessi. Ecco il perchè delle classi qui, non perche siano obbligatorie, ma perchè se le strutturo male ora, posso correggermi in tempo. (ancora posso essere "plasmato") .
Postato originariamente da Mikelius: Mi spiego meglio perchè forse non si era capito.
Io mi sto affacciando alla programmazione in C#, ho creato questo progetto per mettere in pratica le conoscenza che sto acquisendo. Sicuramente molte delle cose che ho fatto sono superflue, ma ,sopratutto per me, è meglio capire bene nella pratica l'impostazione da dare con un programma semplice e che richiede relativamente poche conoscenze piuttosto che iniziare ad applicarle in programmi più complessi. Ecco il perchè delle classi qui, non perche siano obbligatorie, ma perchè se le strutturo male ora, posso correggermi in tempo. (ancora posso essere "plasmato") .
Testo quotato
Postato originariamente da Carlo: Si capisce bene che l'approcio di Mikelius è didattico, per questo ho studiato quello che ha fatto con piacere.
Michelius, ti ho riportato la mia affermazione di Martedì, 03/04/2018 alle 13:44, per ribadire che ho già capito le tue motivazioni, e le condivido, non solo, ti ringrazio perché il tuo progetto mi ha fatto capire più di tutti i testi che ho letto.
Ultima modifica effettuata da Carlo il 05/04/2018 alle 12:31