PDA

View Full Version : [C#] - Consiglio per lo sviluppo


cippoten
05-08-2009, 15:47
Ciao a tutti,

tempo fà, per diletto, ho realizzato un'applicazione per la gestione degli ordini del ristorante della festa patronale del mio quartiere. Le solite cose: creazione listino, inserimento/annullamento/recupero ordini, stampa comande, statistiche e report a fine giornata, ecc.

L'applicazione, realizzata in C#, richiama delle stored procedure create in SQL Server e, previa configurazione del server db, permette l'utilizzo di più PC collegati in rete.

Il software di per sè ha funzionato molto bene. Mi chiedo però se la soluzione che ho adottato sia quella migliore, considerando le mie esigenze.

Secondo voi qual è la soluzione migliore? Avrei fatto meglio ad utilizzare un altro db server? Vi viene in mente un modo diverso o più semplice di fare le stesse cose?:muro:
Considerate che l'unico vincolo per me è il linguaggio, C# appunto, che conosco discretamente... per il resto, sono aperto a tutto!

Ciao e grazie

astorcas
05-08-2009, 22:12
Io ho fatto qualcosa di simile per i miei genitori ma dato che per loro era fondamentale poter avere tutto il software sempre dietro, magari tipo in una pennetta usb, ho optato per un file mdb che non necessita di installazioni particolari ma ovviamente nel tuo caso, parlando di stored procedure (avevi per forza bisogno di stored procedure?), la cosa cambia.

Mi chiedevo però come mai hai sentito il bisogno di chiedere pareri. Hai incontrato particolari difficoltà col tuo approccio?

tomminno
05-08-2009, 22:54
Se parliamo di un sistema di ordinazione per un ristorante direi che sql server (express?) sia anche troppo, ma ormai che l'hai usato non vedo motivo di cambiare.
Io eventualmente penserei ad una soluzione embedded tipo Sqlite, ma solo da un punto di vista di semplificazione del sistema, nessun dbms da installare, semplicità di gestione.
Ma sinceramente nel tuo caso non vedo motivi per cambiare.

Se proprio vuoi divertirti potresti pensare ad un sistema dove i camerieri con il cellulare prendono le ordinazioni e via wi-fi le mandano al server centrale che provvede ad avvisare in cambusa. Oggi come oggi i terminali touch screen con schermo abbastanza grande li trovi anche nell'ovetto kinder.

cippoten
07-08-2009, 08:45
No, fortunatamente non ho incontrato particolari difficoltà o problemi... Semplicemente, visto il poco tempo che avevo a disposizione e la mia scarsissima conoscenza di database, mi è sembrata la soluzione più semplice da implementare. Poi però mi è venuto il sospetto di aver utilizzato il motore di una fuoriserie per un'utilitaria...
Adesso, avendo un po' di tempo libero, volevo approfittarne per migliorare il software e soprattutto per imparare qualcosa.

X astorcas
Avevo proprio bisogno di stored procedure? Non saprei...:help: Esiste una soluzione più semplice?
Lo so, devo ancora studiare...

X tommino
Grazie del consiglio! Adesso cerco di recuperare qualche informazione su Sqlite, la semplicità di gestione mi stuzzica!

Grazie a tutti per i suggerimenti

fdfdfdddd
07-08-2009, 09:52
No, fortunatamente non ho incontrato particolari difficoltà o problemi... Semplicemente, visto il poco tempo che avevo a disposizione e la mia scarsissima conoscenza di database, mi è sembrata la soluzione più semplice da implementare. Poi però mi è venuto il sospetto di aver utilizzato il motore di una fuoriserie per un'utilitaria...
Adesso, avendo un po' di tempo libero, volevo approfittarne per migliorare il software e soprattutto per imparare qualcosa.

X astorcas
Avevo proprio bisogno di stored procedure? Non saprei...:help: Esiste una soluzione più semplice?
Lo so, devo ancora studiare...

X tommino
Grazie del consiglio! Adesso cerco di recuperare qualche informazione su Sqlite, la semplicità di gestione mi stuzzica!

Grazie a tutti per i suggerimenti

Ciao anche secondo me hai utilizzato strumenti adatti al tuo scopo.

Nessuno ti obbliga ad utilizzare stored procedure, ma ci sono casi in cui l'utilizzo di stored procedure ha dei vantaggi (prestazioni, possibilità d'affidare ad un DBA esperto la realizzazione di query più efficienti ecc. ecc.)

L'idea della possibilità d'usare un dispositivo palmare è mica male ... magari ne potresti approfittare per imparare (qualora non le conoscessi già) altre tecnologie ... tipo WCF ad esempio :-P

cdimauro
07-08-2009, 16:55
Personalmente avrei consigliato FireBird (http://www.firebirdsql.org/index.php?op=files&id=engine_212): ha il vantaggio di essere un engine SQL "con le palle" (quindi con stored procedure, trigger, view, ecc.), ed è disponibile in versione embedded (quindi zero installazioni: basta copiare i file nella cartella dell'applicazione, e funziona tutto).

Con in più il vantaggio di poter passare dalla versione embedded a un server remoto cambiando semplicemente la stringa di connessione al db. :cool: