PDA

View Full Version : Questione di Stile :)


Nuitari
31-08-2002, 03:00
Supponiamo che io stia realizzando, in C++, un programma Win32 provvisto di GUI.
Questa GUI è composta da una singola finestra dalla quale, saltuariamente, saltano fuori dei dialog.

Il mio cruccio è la finestra principale: dato che non esisterà mai + d'una istanza di questa finestra per processo, pensate sia necessario incapsulare funzioni e variabili in una classe oppure sia stilisticamente più corretto/gradevole utilizzare le normali funzioni stile C?
Può sembrare una cavolata, eppure ho visto un sacco di gente discutere di brutto di fronte a situazioni di questo tipo.. voi che ne pensate?

DM Ilweran
31-08-2002, 05:00
---> it.comp.lang.c++

Ah no, mi sono confuso :p

Userei senza ombra di dubbio una classe, non amo stili misti e direi che la scelta che hai fatto in termini di linguaggio è sufficientemente chiara :)
Capisco che cpp sia multiparadigma e che in ogni caso comporti grossi vantaggi, ma secondo me a lungo termine la coerenza ripaga.
E' anche vero che potrebbe sembrare un'autolimitazione :)
Trattandosi però di una GUI (quindi qualcosa di visuale) userei certamente l'OOP, secondo me da un livello di astrazione più consono a ciò che vuoi fare.
In ogni caso direi che la decisione è strettamente legata a come ti trovi meglio, tenendo conto che tra 1 anno dovrai capire in egual modo il tuo programma e che, possibilmente, le (eventuali) funzioni devono essere riutilizzabili.
Ciao.

Oggi ho dovuto fare e di sera ho dovuto continuare con il tute. Domani metto tutto apposto e spedisco, proprio non ho fatto in tempo, mi spiace.

Furio
31-08-2002, 18:32
Sicuramente classe... e' probabilmente il metodo migliore e pure piu' gradevole per la lettura e la stesura... (a mio parere)...

Nuitari
01-09-2002, 01:01
Mboh sarà.. a me onestamente il pensiero di definire una classe per poi inizializzare un unico oggetto all'interno dell'applicazione da abbastanza fastidio.
Un conto è se, un giorno, dovessi riutilizzare il codice... Ma onestamente la possibilità che questo accada è talmente remota che non mi sfiora nemmeno.
Io penso che dividendo i sorgenti in diversi file "a tema" non sia così indispensabile dividere in classi.

Ad esempio in Quetzal le funzioni della gui sono normali funzioni globali, dato che vi devono accedere + o - tutte le procedure dell'emulatore. Stesso discorso per variabili globali tipo l'handle d'istanza.. che senso avrebbe avuto creare una classe applicazione e definire un unico oggetto globale? Mah...

C'è chi dice che sia meglio usare gli oggetti perchè teoricamente, dato che alla chiusura dell'applicazione vengono eseguiti tutti i distruttori di eventuali oggetti rimasti aperti, si ha una maggiore sicurezza che vengano effettuate le operazioni di chiusura. Il punto è che però alcuni sistemi offrono funzionalità ben superiori per ottenere il medesimo effetto, come le SEH sotto Win32.

DM Ilweran
01-09-2002, 01:39
Beh, se non hai intenzione di riutilizzare il codice è già un'altro paio di maniche, come posso saperlo :)

Furio
01-09-2002, 02:56
Originally posted by DM Ilweran
Beh, se non hai intenzione di riutilizzare il codice è già un'altro paio di maniche, come posso saperlo :)

Be' non sei paragnosta? :D

Cmq a parte scherzi... sara' l'impostazione che ho avuto a scuola... ma mi riesce difficile pensare a qualcosa senza classi.. (poi il Java c'ha messo il carico :) )...

Pero' il fatto che non la devi riutilizzare, che cmq usi la divisioni dei tuoi file... e poi non e' nel tuo stile scrivere un classe per queste cose... be'...

A te la scelta anche se considerato cio'... nada classe :D

DM Ilweran
01-09-2002, 03:09
Java qui Java la, hai dato un'occhio a Python ? :p

Furio
01-09-2002, 03:18
Originally posted by DM Ilweran
Java qui Java la, hai dato un'occhio a Python ? :p

sto' studiando... uff... poi il corso qua' parte con l'ANSI C .... :D

e poi cosa ci posso fare e' stato amore a prima vista col Java :kiss:

Poi ho visdto che esiste pure il gcj (Gnu Compiler for Java)... ghghghghgh

DM Ilweran
01-09-2002, 04:11
Se è per quello c'è anche Kaffe.
Peccato che se Java smette di essere portabile non c'è più motivo per usarlo.
Poi non mi piace la Sun, il loro è uno dei pochi Unix che non mi piacciono.

Furio
01-09-2002, 06:07
Be' non e' detto... la portabilita' potrebbe essere anche una marcia in piu'... se non mi va' di installare su Win la JVM e voglio portare un applicazione Java posso sempre fallo diventare portabile piuttosto che riscriverlo in un altro linguaggio...

tutto relativo pero'... logico che la stessa applicazione scritta in C o C++ sara' 100 volte meglio

Furio
01-09-2002, 06:31
Cmq stavo scaricando e leggendo una delle tante guide per dementi a Python & Jython (non se sa mai me perdo qualcosa :D )... oddio e' proprio bello come linguaggio... Java potrebbe morire... (almeno sul mio PC)

DM Ilweran
01-09-2002, 12:56
Pseudocodice compilato.
Non sembra nemmeno di programmare, sembra di parlare all'interprete.